php mysql注入靶机_SQL注入靶机实例

本文详细讲述了如何通过PHP发现并利用SQL注入漏洞,从id=1的URL入手,逐步猜测字段,利用order by和union select技巧获取数据库信息,包括表名、字段名和敏感数据。展示了渗透测试中识别注入点和信息收集的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

打开靶机

8f447bc9e61e7eba5836735217f495a3.png

右键源代码 习惯搜一下index 发现php 大概率为MYSQL数据库

60b18ffec7e844e37c2797d0aa79098c.png

点击index.php后发现新建一个网页和之前的一样 结论这个index.php就是靶机

判断是否存在注入点

发现url上有id=1  又是MYSQL数据库  心中窃喜 就可以想到select * from [表] where id=[任何数字]

接下来把id=后改成0+1 看看有没有发现

187d4936e9f27fa302ef2e55754af9e1.png

果然有戏  发现跟原来界面相同 说明0+1被带到数据库中执行所以说存在注入点 接下来我们可以干活了

我们开始猜字段 当然用order by 在id=1后加上and 1=1 order by 1

6e94084af78d3f8266351704025d3ca5.png

发现页面没有异常 我们继续猜and 1=1 order by 2

2ab138f731aa154fc5f2ab0e914fd0ba.png

页面也没有异常 继续猜and 1=1 order by 3 这里大家可以写一个小脚本自己跑

865aed6403ee0a6759b38e21befcb987.png

页面没有了 说明没有3字段 只有2个字段 那我们就select一下

查询系统自带库以获取表名、字段名

MySQL 在 5 以上的版本都自带了一个数据库,叫 information_schema

通过构造 ?id=1 and 0 union select 1,version() 来判断是否有 information_schema

dbab05c5873a4e7c4ae0d20378a7979d.png

发现是5以上的版本 说明有 我们在用?id=1 and 0 union select 1,database() 再看看数据库有什么发现

707f43e432b3ec78c6cbd8d105ddb669.png

发现库名叫maoshe

获取表名,利用 库名 去 information_schema 查找 表名即可。

发现

52371f0018b340195cde7b33cdffd6b3.png

发现 id username password

用?id=1 and 0 union select 1,GROUP_CONCAT(id, username, password) from admin limit 0,1提取出id username password

05b09e99f1ded855c0049f60ffb6e6c2.png

结束!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值