大家好,在前面的内容中,我们已经学习了如何编写爆破子域名的自动化脚本domain.sh。本文我们给出爆破网站目录的自动化代码url.sh。
编写自动化脚本的目的很简单,相信大家在渗透测试过程中学到了很多很多工具,但是在实际操作的过程中,往往因为一个个运行太麻烦放弃收集信息,扪心自问,你学到了那么多信息收集工具,每次都用的又有几个呢?
简单的自动化脚本可以让我们傻瓜式一次运行多个工具,更具备实操价值。
url.sh代码功能
输入要爆破的域名,使用dirsearch、Gobuster、waybackurls依次爆破目录,然后使用nmap扫描端口,把所有结果保存在报告中。
代码运行的准备工作
pip install dirsearch 安装dirsearch, nmap为kali自带,gobuster为kali系统自带。根据github上的指南安装waybackurls
gobuster需要爆破url的字典,请准备好将字典,字典路径放入Dir变量中。
新建目录/recon/code。
在/recon/code编写url.sh文件
运行示例
./url.sh -u www.baidu.com
url.sh代码内容如下:
`#!/bin/bash``#得到域名下面的url,并使用nmap扫描开放的端口``echo "请输入域名或网站网址,例如 ./url.sh -u www.google.com"`` ``Dir="/recon/dirs/urls_dic.txt"`` ``#扫描子域名``Tool_Scan()``{` `echo "----运行dirsearch..."` `dirsearch -u $urls -o $Directory/dirsearch_results --format=simple`` ` `#gobuster为kali自带,无需安装` `#-w是爆破的字典` `echo "----运行Gobuster..."` `gobuster dir -u https://$urls -w $Dir -q -n -e > $Directory/gobuster_results`` ` `#-no-subs表示不扫描子域` `echo "----运行waybackurls..."` `waybackurls $urls -no-subs > $Directory/waybackurls_results`` ` `echo "----运行nmap..."` `nmap -A $urls -Pn -T4 > $Directory/nmap_results``}`` `` ``#urls_report存储了扫描报告,这是生成最终扫描报告的函数``Scan_Url()``{` `#创建一个名为输入域名的目录` `Today=$(date +%y%m%d)` `urls=$1` `Directory="${urls}_${Today}_url"` `echo "创建目录 $Directory."` `mkdir $Directory`` ` `#调用爆破目录工具` `Tool_Scan $1`` ` `#urls_report存储整合的扫描报告` `cat $Directory/dirsearch_results $Directory/gobuster_results $Directory/waybackurls_results \` `$Directory/nmap_results> $Directory/urls_report`` ` `echo "url扫描结果存储在$Directory/urls_report"``}`` `` ``#将-u后面的域名传入Scan_Url函数``while getopts "u:" OPTION; do` `Scan_Url $OPTARG``done`
关于自动化挖洞的思考