遇到没有验证码可爆破系统,实际情况比较少见,是碰巧了,很少能有这么理想的环境和顺利的过程。最近帮群友搞一个账号,顺便写出来过程。有前置条件(能一直登录而且没验证码),有点苛刻,这里只是提出一种方法。
先在图书馆考了个试,新生入馆教育,一般账号都是学号,密码毕竟简单。
在考试页面找到密码
但是没有学号,搜索引擎找了一圈都是老生的,没有新生,只好换个办法。
进去后某一个功能可以返回实体信息,搜了几下,找了几个22级的。
身份证号显示前6位和最后一位,出生日期全部显示,同时标注性别,那么此处得到身份证前14位和最后一位校验位。有了15位就差3位数字。文件地址:https://openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=080D6FBF2BB468F9007657F26D60013E公民身份号码表示形式
顺序码奇偶区分性别
检验码计算公式
根据以上信息对已有身份证进行计算,可将1000个结果缩小至50左右,因为根据以上公式,1000个结果只有100个正确,同时有性别校验,再除以2,数量已减少到50左右。用一个简单的脚本来计算
得到计算结果
奇偶校验去除一半
可惜的是这个目标的cas不能碰撞,次数多了会冻结账号,而且会出验证码,但是运气挺好,他们的深信服没有开启防碰撞和验证码。(概率很低)但是深信服前端请求加密了,再写一个处理加密的有点麻烦,所以我换了个办法,用selenium模拟登录。类似这样,比较简单
模拟登录会一个个的测试
登录成功
遇到没有验证码的概率比较低,这次只是碰巧了,但是46个密码,手工去测也用不了多久。上面的计算过程可以和登录合并,计算一个就直接登录,效率更高。
文章来源: http://mp.weixin.qq.com/s?__biz=MzI3NzI4OTkyNw==&mid=2247488558&idx=1&sn=e2c06b7360589aeac0e5806814120076&chksm=eb69da86dc1e5390a37692b6fd15301ba2c75e8865fcf0e2dd0108ce92b89cf75885f1d984ea#rd
如有侵权请联系:admin#unsafe.sh