【安全工具】自动化爬虫+漏洞验证

有时候承接渗透测试任务或是挖掘SRC时会被规定,不能采用漏洞扫描工具如AWVS、Appscan等,那这个时候针对SQL注入的验证除了手动验证还有什么效率高的方法呢。

不借助集成工具验证但我们可以分开验证。就拿SQL注入验证来说,本质上就是爬取网站URL,再去验证是否有注入,集成工具的验证方式大多都有攻击性行为,但我们可以采用sqlmap来辅助验证,点到即止,最多读到数据库名,这跟我们安全平台提交漏洞的截图差不多,属于验证行为。

0x01 自动化爬取页面URL

用于爬取网站URL的方式也有很多,但本质上是通过正则或遍历后台URL的方式来获取,比如Crawlergo、gau等。这里我就直接用的gau。

地址如下:(文末会提供所有工具)

https://github.com/Qianlitp/crawlergo
https://github.com/lc/gau

使用方式如下:

echo “https://xxx.com” | gau --blacklist png,jpg > target.txt

–blacklist为过滤爬取的内容,表示去除png和jpg等图片(可以自定义添加),将抓取的结果输出到target.txt中,如下:
在这里插入图片描述

0x02 自动化URL过滤

此次我们爬取的目的是测试sql注入,此次GET类型的批量测试为例,需要先从批量获取的URL中筛选带有参数的链接,实现方式可以写个脚本做个筛选(思路就是采用正则匹配出带GET参数的),Python脚本如下:

import re

for ip in open('target.txt',encoding = 'utf-8'):
    num = re.findall("[^js]\?\w=",ip)
    if(num != []):
        print(ip)
        f_url1 = open('tiqu.txt', 'a')
        f_url1.write(ip)
        f_url1.close()

将第一步提取的URL放在target中,采用python3执行脚本可以过滤,提取内容放在tiqu.txt,如下:
在这里插入图片描述

0x03 自动化批量测试

通过上述方式获取到URL链接后,可结合各类单功能测试工具批量验证,这里推荐两款工具,sqlmap和XSStrike。其是可以批量验证sql注入和xss漏洞,将过滤链接放在target.txt下,使用方法如下:

XSStrike执行如下语句批量测试

python xsstrike.py --seeds target.txt --crawl --blind --skip-dom

sqlmap执行如下语句批量测试

python sqlmap.py -m “urlsql.txt” --batch --dbs --tables --output-dir=result.txt

这个过程中其实还有很多可以改进的点,比如批量爬取URL的工具,AWVS自带的爬虫也好,自己写爬虫也好,可以继续扩充,另一方面获取到的链接可以改进脚本过滤,可以采用更多的批量测试工具进行测试。

关注公众号:白帽学子,回复关键字"爬虫",获取本文所有工具和脚本。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值