0%

Brute Force

Brute Force

即暴力(破解),是指黑客利用密码字典,使用穷举法猜解出用户口令,是现在最为广泛使用的攻击手法之一。

  • low
    查看源码,可以发现,服务器只是验证参数login是否设置,
    isset函数在服务器中检测变量是否被设置,返回true/false,没有任何防爆机制,且存在sql注入。
    方法一(sql注入):在username框输入admin’# 或者 admin’ or ‘1’=’1即可成功登陆。
    原理为 and的优先级高于or。
    方法二(burp爆破)抓包下来,放到intruder爆破,只对参数password进行爆破,

    换到payload,再添加字典,最后开始attack。

    成功爆破,返回页面长度和其他不一样的。
  • medium
    可以看到,medium级别的代码对用户输入的参数进行了简单的过滤,对一些预定义字符进行了转义,基本上防止了SQL注入。
    还有一个措施就是如果密码输错了,则延时两秒之后才能再次提交。
    用burp爆破与low操作一样,只是少了sql注入。
  • high
    使用了Anti-CSRF token来抵御CSRF攻击,使用了函数stripslashes和mysqli_real_esacpe_string来抵御sql注入和xss攻击。
    由于使用了Anti-CSRF token,每次服务器返回登陆页面都会包含一个随机的user_token值,每次用户登陆要一起提交,
    所以服务器接到请求,会先检查user_token值,再进行sql查询,所以使用不再使用burp的无脑爆破。
    这里有两种方法:
    方法一:写python脚本,先模拟服务器发出请求获得一个token值,再利用获得的token值进行爆破。(脚本后续补上)
    方法二:还是可以使用burp爆破,需要修改一些设置。
    参加两个爆破参数。
    这里攻击类型也要相应修改,为pitchfock,线程设为1。
    找到Grep-Extract模块进行相应设置,add:
-------------本文结束感谢您的阅读-------------

欢迎关注我的其它发布渠道