前言
这是大白给粉丝盆友们整理的网络安全渗透测试入门阶段暴力猜解与防御第9篇。
本文主要讲解Wfuzz爆破
喜欢的朋友们,记得给大白点赞支持和收藏一下,关注我,学习黑客技术。
1 简介
Wfuzz是一款为了评估WEB应用而生的Fuzz(Fuzz是爆破的一种手段)工具,它基于一个简单的理念,即用给定的Payload去fuzz。它允许在HTTP请求里注入任何输入的值,针对不同的WEB应用组件进行多种复杂的爆破攻击。比如:参数、认证、表单、目录/文件、头部等等,这款工具在kali里面自带。
2 Wfuzz基本功
爆破文件、目录
wfuzz本身自带字典:
.``├── Injections``│ ├── All_attack.txt``│ ├── SQL.txt``│ ├── Traversal.txt``│ ├── XML.txt``│ ├── XSS.txt``│ └── bad_chars.txt``├── general``│ ├── admin-panels.txt``│ ├── big.txt``│ ├── catala.txt``│ ├── common.txt``│ ├── euskera.txt``│ ├── extensions_common.txt``│ ├── http_methods.txt``│ ├── medium.txt``│ ├── megabeast.txt``│ ├── mutations_common.txt``│ ├── spanish.txt``│ └── test.txt``├── others``│ ├── common_pass.txt``│ └── names.txt``├── stress``│ ├── alphanum_case.txt``│ ├── alphanum_case_extra.txt``│ ├── char.txt``│ ├── doble_uri_hex.txt``│ ├── test_ext.txt``│ └── uri_hex.txt``├── vulns``│ ├── apache.txt``│ ├── cgis.txt``│ ├── coldfusion.txt``│ ├── dirTraversal-nix.txt``│ ├── dirTraversal-win.txt``│ ├── dirTraversal.txt``│ ├── domino.txt``│ ├── fatwire.txt``│ ├── fatwire_pagenames.txt``│ ├── frontpage.txt``│ ├── iis.txt``│ ├── iplanet.txt``│ ├── jrun.txt``│ ├── netware.txt``│ ├── oracle9i.txt``│ ├── sharepoint.txt``│ ├── sql_inj.txt``│ ├── sunas.txt``│ ├── tests.txt``│ ├── tomcat.txt``│ ├── vignette.txt``│ ├── weblogic.txt``│ └── websphere.txt``└── webservices` `├── ws-dirs.txt` `└── ws-files.txt
2.1 爆破后台文件
wfuzz -w wordlist URL/FUZZ.php
其中wordlist为指定的字典,将文件名写为“FUZZ”,程序即可自动使用字典遍历文件名。
2.2 爆破后台目录
wfuzz -w wordlist URL/FUZZ
将url中我们想要猜测的部分写为“FUZZ”,程序即可自动使用字典遍历此url下的后台目录。
2.3 爆破url参数
wfuzz-z range,000-999 url/xxx.php?id=FUZZ
range为id参数的取值范围,\-z为指定payload模块。将id值写为“FUZZ”,可测试当前url中的未授权访问漏洞。
wfuzz -z range,000-999 -b session=session -b cookie=cookie url/xxx.php?id=FUZZ
如果当前网站的测试需要cookie或session,可使用-b指定。
除此之外,在《靶场复现-Prime:1》中使用了wfuzz的爆破url参数名功能:
在暴力破解index.php的参数名时,使用了最常用的字典common.txt,将参数名写为FUZZ,程序即可帮我们猜解出可以访问的参数名。
2.4 递归测试
wfuzz-z list,“admin-login.php-test.php” -R 1 URL/FUZZ
使用-R可以指定递归的深度。在上面的payload中,“-R 1”意为在我们已经测试出来的目录再递归一次字典,测试其下一级目录。
2.5 登录框弱口令爆破
wfuzz -w /usr/share/wfuzz/wordlist/general/mima.txt -w /usr/share/wfuzz/wordlist/general/mima.txt -d “username=FUZZ&password=FUZZ” http://192.168.46.129/vulnerabilities/brute
因为此处是同时爆破两个参数,所以需要指定两次字典。-d指使用POST传参,后接当前登录界面的传参格式。
2.6 自定义headers爆破
wfuzz -w word.txt -H “user-agent:aaa” URL/FUZZ
有些网站需要user-agent,这时我们需要用-H来自定义。
2.7 代理设置
当我们遇到访问国外站点,或其它需要使用代理的情况,可以在fuzz中使用 “-p proxy 地址”设置代理。代理支持SOCKS4、SOCKS5也支持多个代理,只需要使用多个-p参数。
wfuzz -w word.txt -p localhost:8000 url
设置SOCKS4代理:
wfuzz -w word.txt -p localhost:8000: SOCKS4 url
2.8 并发控制
如果FUZZ测试目标存在WAF,发送请求并发太高会被禁止。wfuzz 中可以使用\-t 参数来增加或减少并发数量,也可以使用\-s 指定每次请求后的间隔秒数。
wfuzz -w wordlist -t 5 URL/FUZZ
不指定并发数量默认为10。
3 结果显示
ID::执行顺序
Response::HTTP响应状态
Lines:HTTP 响应的行数
Word:HTTP 响应单词个数
Char:HTTP 响应的字节数
Payload:尝试使用的字典内容
3.1 过滤器
wfuzz执行完成后可能会出现成百上千的结果,而过滤器可以直接过滤掉我们不想看到的错误码,给我们节省很多寻找结果的时间。\-hl、\-hw、\-hc分别为按响应行数过滤、按响应单词数过滤和按响应字节数过滤。例如在《靶场复现\-Prime:1》中使用了\-hw按单词数过滤。
图中对参数名的遍历一共出现了951个结果,但大部分不是我们需要的请求,无法访问到提供有用信息的文件。_**当遍历到能访问到文件的结果时,响应的长度一定和其它的不一样。**_所以我们选择过滤出现次数最多的长度,剩下的一般就是我们想要的结果。
3.2 结果输出为文件
插件printers提供了将命令结果输出为文件的功能。
Available printers:
Name | Summary
--------------------------------------------------
csv | CSV printer ftw
html | Prints results in html format
json | Results in json format
magictree| Prints results in magictree format
raw | Raw output format
使用 -f 参数指定输出文件格式。
wfuzz -f outfile,html -w wordlist URL/FUZZ
网络安全学习包
资料目录
-
成长路线图&学习规划
-
配套视频教程
-
SRC&黑客文籍
-
护网行动资料
-
黑客必读书单
-
面试题合集
282G《网络安全/黑客技术入门学习大礼包》,可以扫描下方二维码免费领取!
1.成长路线图&学习规划
要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。
对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。
2.视频教程
很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,其中一共有21个章节,每个章节都是当前板块的精华浓缩。
3.SRC&黑客文籍
大家最喜欢也是最关心的SRC技术文籍&黑客技术也有收录
SRC技术文籍:
黑客资料由于是敏感资源,这里不能直接展示哦!
4.护网行动资料
其中关于HW护网行动,也准备了对应的资料,这些内容可相当于比赛的金手指!
5.黑客必读书单
**
**
6.面试题合集
当你自学到这里,你就要开始思考找工作的事情了,而工作绕不开的就是真题和面试题。
更多内容为防止和谐,可以扫描获取~
朋友们需要全套共282G的《网络安全/黑客技术入门学习大礼包》,可以扫描下方二维码免费领取!
END