Thinkphpgui项目重置

改造工具链接 https://github.com/Lotus6/ThinkphpGUI 代码结构 ​ pom.xml引入了http请求库​kevinsawicki​ ​ 我们从执行流程处开始研究下代码怎么写的: ​ ​ public static void main(String[] args) throws Exception { // 创建tp_view对象,用于显示ThinkPHP视图 tp_view f = new tp_view(); // 设置窗口居中显示 f.setLocationRelativeTo(null); // 设置当关闭窗口时默认的操作为退出程序 f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 将窗口设置为可见,即显示窗口 f.setVisible(true); } 可以看到主程序下面三行都为窗口显示问题,我们跟踪下tp_view对象: ​ ​ 看到tp_view()调用initComponents()方法初始化tp_view对象的组件,接着看下initComponents: ​ ​ 一些常规组件的定义,用的是java.awt​库。 检测按钮调用check_url方法: ​ 查看check_url方法: ​ ​ 首先调用checkTheURL方法,主要检测url是不是以http开头: ​ ​ 如果符合会调用check_url方法: ​ ​ url为url,version为combobox组件选中的文本 当文本等于ALL时,定义一个列表,然后for循环遍历 ​BasePayload bp = Tools.getPayload(v);​ 获取关键字对应漏洞信息。 exploit包里主要是实现了utils包里的BasePayload​接口 basepayload定义了三个接口: 检测接口 Result checkVUL(String url) throws Exception; 命令执行接口 Result exeVUL(String url,String cmd) throws Exception; 获取shell接口 Result getShell(String url) throws Exception; 其中Result为定义的java实例: ​ ​ 主要有三个属性:...

July 25, 2023 · 2 min · 377 words