Giter Club home page Giter Club logo

Comments (3)

EzoomE avatar EzoomE commented on May 25, 2024

我还要说明一点,对方允许用户修改返回包获得跳转向后台页面的链接,然而302跳转后的请求存在一个检测,如果用户不满足这个需求则会再次302跳转回到login,但是我感觉这个得出密码的样子过于离谱了,应该不是爆破出来的,我很好奇这个结论是如何得出的?

from vscan.

veo avatar veo commented on May 25, 2024

由于vscan的设计初衷主要应用于红队快速扫描,设计上为了速度牺牲了准确率。
还有我个人认为,误报总比漏报要好。

所以vscan结果可能会有大量的误报,需要手工二次排查

说一下原理:
1.利用正则判断是否有pass login等关键字,有的话判断为登录页面
2.利用正则寻找登录接口,登录参数
3.构造登录包,先登录一个不存在的随机账号密码的,取返回内容
4.构造弱口令登录包,进行爆破登录,同时与随机登录包返回、前面所有爆破的登录包返回内容进行比较,大于区别阈值则停止爆破,判断可能成功
5.再发一个判断可能成功的账号不同密码,取返回值,比较停止爆破的登录包,如果不一样,则爆破成功

逻辑我个人认为还是比较缜密的,关键在于 1.如何正确的构造登录包 2.登陆次数限制 3.返回一直内容变化 三个问题
1.正确的构造登录包如果用浏览器引擎解析会更准确,但是会牺牲效率,所以还是采用正则 (误报+30%)
2.登录次数限制有可能会封禁账号,或每次返回的内容都不一样(误报+10%)
3.返回内容一直变化,如返回内容带随机的md5时间戳等 (误报+10%)

所以这个问题其实很难解决,我已经尽力了

from vscan.

EzoomE avatar EzoomE commented on May 25, 2024

由于vscan的设计初衷主要应用于红队快速扫描,设计上为了速度牺牲了准确率。 还有我个人认为,误报总比漏报要好。

所以vscan结果可能会有大量的误报,需要手工二次排查

说一下原理: 1.利用正则判断是否有pass login等关键字,有的话判断为登录页面 2.利用正则寻找登录接口,登录参数 3.构造登录包,先登录一个不存在的随机账号密码的,取返回内容 4.构造弱口令登录包,进行爆破登录,同时与随机登录包返回、前面所有爆破的登录包返回内容进行比较,大于区别阈值则停止爆破,判断可能成功 5.再发一个判断可能成功的不同账号密码,取返回值,比较停止爆破的登录包,如果不一样,则爆破成功

逻辑我个人认为还是比较缜密的,关键在于 1.如何正确的构造登录包 2.登陆次数限制 3.返回一直内容变化 三个问题 1.正确的构造登录包如果用浏览器引擎解析会更准确,但是会牺牲效率,所以还是采用正则 (误报+30%) 2.登录次数限制有可能会封禁账号,或每次返回的内容都不一样(误报+10%) 3.返回内容一直变化,如返回内容带随机的md5时间戳等 (误报+10%)

所以这个问题其实很难解决,我已经尽力了

非常感谢你耐心回答,工具很强大,应该是MD5时间戳导致的误报,谢谢

from vscan.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.