首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Python3 - 编写web目录扫描工具

Python3 - 编写web目录扫描工具

作者头像
Khan安全团队
发布2020-03-10 19:00:57
发布2020-03-10 19:00:57
1.4K0
举报
文章被收录于专栏:Khan安全团队Khan安全团队

温馨提示:请勿用于非授权测试,人在做天在看

声明:本脚本程序完全学习交流共享,请遵守《中华人民共和国网络安全法》,请勿使用非授权测试,如作他用所承受的法律责任一概与作者无关。

实现工具所需的库线程,argparse,请求,sys,队列代码编写和测试插入linux系统(彩色字体输出可能只支持linux系统)

用了多线程和轴向优化扫描速度 用了argparse命令参数解析包优化用户体验? 主要功能为获取请求请求响应后返回的HTTP状态码判断是否为200,302,403,500等

实现功能主要代码为

代码语言:javascript
复制
#这里使用head请求,只获取报头
resp = requests.head(urls)
#判断返回的http状态码,并输出
if resp.status_code == 200 :
    sys.stdout.write('\r' + '[*]-----%s\t\t'%urls + "------------"+ GREEN+"200" + none + "\n")
elif resp.status_code == 403 :
    sys.stdout.write('\r' + '[*]-----%s\t\t'%urls + "------------"+ YELLOW+"403" + none + "\n")
elif resp.status_code == 302 :
    sys.stdout.write('\r' + '[*]-----%s\t\t'%urls + "------------"+ cyan+"302" + none + "\n")
elif resp.status_code ==500 :
    sys.stdout.write('\r' + '[*]-----%s\t\t'%urls + "------------"+ red +"500" + none + "\n")

用法为 -t线程数(至少5)-w字典(必须)-u(必须)

代码语言:javascript
复制
./dirscan.py -h
usage: dirscan.py [-h] [-t THREAD_NUM] [-u URLS] [-w WORDLISTS]
optional arguments:
-h, --help     show this help message and exit
-t THREAD_NUM  thread options
-u URLS        url options
-w WORDLISTS   wordlists options
例子:
./dirscan.py -w /usr/share/wordlists/wfuzz/general/common.txt -u xxxxxx
xxxxxx.com -t 5

项目地址:http://www.khan.org.cn/index.php/2020/01/29/web目录扫描/

手握日月摘星辰,安全路上永不止步。

- Khan攻防安全实验室

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Khan安全团队 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档