关于漏洞利用框架这个东西,年初就想写,因为随着工作越久,本地的利用脚本太多,为了不那么乱,又分了好多目录,打个payload可能要cd半天,网上的框架又因为懒得去熟悉不想用,只能写个适合自己的了
一直想用 Javafx 和 MaterialFX 搞一个具备颜值及性能的攻击框架,又因为项目密度较大以及其他乱七八糟的事情,一直拖到现在。
前段时间也看到很多大佬已经搞出来一些类似的工具:
https://github.com/achuna33/MYExploit
https://github.com/White-hua/Apt_t00ls
。。。
试用了几个,感觉还行,但也发现一些问题,问题等下说。
总之觉得没必要重复造轮子了,同时有了一个新的想法,想要将这些功能移植到Burp插件上,大概就是在Proxy选个请求然后选个poc最后发到新Tag这样
poc的话用的是json格式的,大概像这样
{
"step":3,
"description":"测试描述",
"exploit":[
{
"method":"GET",
"path":"/testpath/test.php",
"header":{
"User-Agent":"i'm come in",
},
"body":""
},
{
"method":"POST",
"path":"/testpostpath/test.php",
"header":{
"User-Agent":"i'm come in",
"Content-Type":"text/xml"
},
"body":"testPOSTparams"
},
{
"method":"PUT",
"path":"/",
"header":{
"User-Agent":"i'm come in"
},
"body":"<?php phpinfo();?>"
}
]
}
最后说一些废话,
漏洞利用框架简而言之依靠的还是POC文件,例如yaml/json就是一些扫描器的poc文件,
利用框架与扫描器最大的不同就是,发送数据包以后需要拿到一些东西,比如读到了配置文件,比如注出了密码等等,而仅凭一个yaml或者json很难做到面面俱到,
比如说因为waf拦截部分字符串以及各种网络问题导致利用失败,但实际上是可以成功利用的,稍微写过点代码的可能还会加个异常,返回Failed,没怎么写过的可能直接飘红一大片,就会浪费更多的时间
比如说有的漏洞需要用PUT/MOVE请求方法,脚本语言的HTTP请求库不支持该方法怎么办,再去写一个用原生socket发包的吗?
再比如说部分漏洞前台可利用,但部分目标仅仅是给漏洞文件加了权限控制变成后台才可利用,这时候垃圾点的工具就需要改py,改java,改go,稍微强点的工具去改yaml,改json,比较牛些的工具留了活口,提供一个参数或者输入框填认证头,
但工具是死的,总会有这样那样的问题需要维护,所以,想到了把他做成Burp插件的形式,有waf拦截那就直接在Repeater改,去绕,前台上传变成了后台上传,那就从proxy里找有认证头的包生成poc请求包,
但这样也有一些其他的问题,有的漏洞插件没办法自动化,
比如需要延时注入获取密码,跑出来可能要几十个请求,用Repeater的话就太费劲了,
或者说其他协议的漏洞该怎么去利用,
总之,各有各的优点,也各有各的缺陷,想要省力靠工具自动化就丢弃一些准确性,想要更高的利用率就消耗一点时间,
当然,肯定会有开发大哥能解决这些问题并且将优点完全集合于一款工具,我相信,我真的相信,憨笑~~~