1、Brute Force
低级和中级
主要使用工具是burp,通过burp抓包的手段,对当前登录页面进行抓包。首先假设用户名为admin,随意输入密码,点击登录,之后通过抓包的方式抓取数据包,在包头的位置标注的着我们提交的用户名和密码且都为明文,将此数据包发送至intruder模块,进行爆破。
在低级中还可使用万能密码进行登录,admin' or '1'='1 ,其原理为绕过密码,由于代码本身的漏洞(在源码中没有过滤特殊符号),在传参时通过admin'中的 ' 将前面的 ' 进行闭合,同时在验证时1=1永远为真,根据优先级最后执行or,有一方为真即可,所以无需输入密码也可以通过密码验证。
高级
高级源码
通过审计代码,发现其在验证时会验证用户的token,通过抓包会发现包头中有username、password、Login以及user_token四个参数。
数据包发送到intruder
首先清除变量clear,随后对password、user_token的值添加变量add,将攻击模式选成pitchfork;进入options模块,配置grep-extract,找到value值,选中后如下图
选中value
将redirections选成always。
随后进行最重要一步,设置线程,此处有坑,burp高版本设置线程不在options中,在resource pool中,新建一个pool,进行设置如图
设置线程数为1
最后对payload进行设置
set1
设置set2,type选中recursive grep 在下方将token值填上,可以开始攻击了。
通过比较返回包的大小确定出正确密码