最近在参加小迪的培训,听到这目录扫描收获很大,把过程写下来做笔记。
一.先开发这个我们得首先知道目录扫描器的原理:
1.获取用户输入的url
2.把url和敏感目录关键字组合(比如:url:www.xxx.com 关键字:admin.asp 组合:www.xxx.com/admin.asp)
3.对组合的url进行发包
4.对返回包进行判断,对状态码200,403的进行输出(可自行定义)
二.代码实现部分:
1.界面设计:url输出框--------编辑框1 扫描键---------按钮1 目录输出框-------编辑框2 扫描状态------标签
界面差不多就是这样.
2.代码:
.版本 2 .支持库 spec .程序集 窗口程序集_启动窗口 .子程序 _按钮1_被单击 .局部变量 url, 文本型 .局部变量 zidian, 文本型 .局部变量 shuzu, 文本型, , "0" .局部变量 cishu, 整数型 .局部变量 cishu1, 整数型 .局部变量 urls, 文本型 .局部变量 code, 整数型------敲代码之前先要导入个模块,精易模块 url = 编辑框1.内容 --------把接收到的目标网址存入变量url中 zidian = 到文本 (读入文件 (“ASP.TXT”)) ----------把目录字典读取出来,然后赋给zidian shuzu = 分割文本 (zidian, #换行符, ) -----------把zidian以换行符即回车进行分割成数组(目录字典以换行符进行排列) cishu = 取数组成员数 (shuzu) ----------把shuzu进行统计,看有多少条,为后面循环做准备 .计次循环首 (cishu, cishu1) ----------进行循环。次数是字典的条数,即变量cishu urls = url + shuzu [cishu1] ---------把url和shuzu结合赋给urls 标签1.标题 = “扫描中” + urls ---------把"扫描中"和urls赋给标签1的标题 网页_访问_对象 (urls, , , , , , , code) -------进行发包,这里我们只要填网址和状态码就行,状态码我赋给变量code,类型为整数型 .如果 (code = 200 或 code = 403) ----如果返回包状态码是200或者403 编辑框2.加入文本 (urls + #换行符) -----就把这个urls加上换行输出给编辑框2 .否则 .如果结束 延迟 (50) .计次循环尾 ()
运行结果大致如图:
时间: 2024-10-27 02:17:57