美文网首页
爆破(登录验证)

爆破(登录验证)

作者: 夏夜星语 | 来源:发表于2017-07-26 21:47 被阅读256次

    Brute Force:(暴力破解)简单来说就是用大量的身份认证信息来不断尝试登录目标系统,如果幸运,将得到正确登录信息(账号与密码)。一般采用字典(还有大量登录信息)的工具进行爆破。

    一、手动爆破(借助burpsuite)

    1.首先配置好Firefox和burpsuite,打开爆破页面,输入一个随机账号与密码进行捕获。Burpsuite拿到请求:


    image.png image.png

    2.将请求参数的账号与密码部分设置为payload位置。如下:


    image.png

    3.在D盘下放置两个txt字典,有两个,一个是user.txt, 一个是passwd.txt,然后里面的内容是如下:


    image.png
    image.png image.png

    4.设置导入:第2个字段同理。


    image.png

    5.设置flag,如下: (因为错误提示Username and/or password incorrect.),所以字符设置为incorrect。


    image.png
    6.进行攻击:如图,可看到admin,password的组合是没有incorrect标志,说明是成功的。
    image.png
    7.试一下在前端:如图成功爆破:
    image.png

    二、防御陷阱

    1、验证码放在前端:
    一般会在用户登录页面放置验证码,来防止攻击者自动化脚本攻击。但是如果验证码判断的逻辑是在前端JS,那么这也是可以被绕过的。因为如果用burpsuite捕获到请求,伪造后进行重发包,那么验证码就没作用。
    2、后端验证码:可能会出现验证码错误,但用户名密码正确,所以登录了,那么这逻辑也是有问题的。
    3、加token的认证:如果token是在前端用户还没有进行认证的情况下,直接返回给前端,比如在一个<input type='hidden'>的标签里,那么这个token只要被获取到,就可以被利用,直接获取到重发包。

    三、正确防御

    1、设置密码用户名的限制,比如长度必须在8位以上,字母加特殊字符与数字的组合等
    2、要有验证码,但验证码要写在后台,逻辑要正确,且不能被猜测
    3、要有错误限制,比如连续登录5次密码错误,账号就应该被锁定5分钟这样的

    相关文章

      网友评论

          本文标题:爆破(登录验证)

          本文链接:https://www.haomeiwen.com/subject/xexakxtx.html