挑战一览

清除筛选

176 题 (第 4 / 8 页)

数字取证难度 2★★☆☆☆

从磁盘镜像中寻找秘密文件

检查 ext4 文件系统的磁盘镜像 `disk.img`,找出文件系统中隐藏的秘密备份并取得 flag。 容器内无法 mount,请用 debugfs 直接遍历文件系统。

密码学难度 2★★☆☆☆

寻找哈希碰撞

MD5 可实际构造不同输入却具有同一哈希值的碰撞。碰撞抗性已失效的哈希不应再用于安全敏感的完整性保护或签名。 据称具有相同 MD5 的两个文件: file_a != file_b md5(file_a) =…

密码学难度 2★★☆☆☆

哈希长度扩展攻击

对 MD5、SHA-1、SHA-256 等 Merkle–Damgård 哈希,直接以 `hash(secret || message)` 作为签名可能受到长度扩展攻击。 已知消息与 SHA-256: message =…

数字取证难度 2★★☆☆☆

从数据包捕获中寻找密码

分析 `traffic.pcap` 中的 HTTP 登录请求,找出管理员提交的密码。

密码学难度 2★★☆☆☆

填充预言机入门

填充预言机攻击会利用不同错误响应作为恢复明文的信号。本入门题请从泄露的 Base64 字符串中读取 flag。 泄露的 Base64 字符串: Vmlld1NvdXJjZTpLSU5PQ097cGFkZGluZ19vcmFjbGVfYmF…

数字取证难度 2★★☆☆☆

根据文件时间戳确定入侵时刻

分析 evidence/ 中多个文件的修改时间,确定入侵发生的时间段以及与之相关的隐藏文件。隐藏文件的内容不一定能直接读懂。 学习时间线分析的基础。

基础技能难度 2★★☆☆☆

进程猎人:隐藏进程

名为 `secret_service` 的后台进程把旗标放在命令行参数中。请找出它的 PID、运行用户和完整参数。

数字取证难度 2★★☆☆☆

从内存转储中查找进程

memory.dump 是将内存转储的分析结果(pslist / psscan / cmdline)排列在一起的简化文本。请找出在进程列表中被隐藏的可疑进程,并从它携带的配置值中读出 flag。学习内存取证的基础。…

密码学难度 2★★☆☆☆

彩虹表攻击

未加盐的快速哈希可被预计算反查数据库轻易还原。请反查给出的 MD5 哈希。 MD5 哈希: 5f4dcc3b5aa765d61d8327deb882cf99 请反查该哈希,并把原始字符串以 KINOCO{...} 的形式提交。

基础技能难度 2★★☆☆☆

日志分析:找出入侵者

`/app/auth.log` 记录认证事件。找出一小时内失败登录至少 10 次的 IP,并取得该 IP 的第一次失败时间戳。日志格式:`[YYYY-MM-DD HH:MM:SS] Failed login from…

密码学难度 2★★☆☆☆

一次一密密钥复用攻击

一次一密仅在密钥只使用一次时安全。复用同一密钥时,可由已知明文恢复另一段明文。 用同一密钥加密的两个密文: ciphertext1_hex = 1c0a070901 known_plaintext1 = HELLO…

密码学难度 2★★☆☆☆

可预测的随机数

固定种子的伪随机输出可被复现;通用随机数生成器不能用于加密机密。 旗标生成代码: import random random.seed(12345) flag_chars = [chr(random.randint(65, 90))…

数字取证难度 2★★☆☆☆

恢复已删除文件

从磁盘镜像中恢复被删除的压缩文件(ZIP),并在其中的备忘录里找到 flag。 学习如何使用文件雕刻工具恢复已删除的文件。 提供文件:disk_image.dd

基础技能难度 2★★☆☆☆

压缩迷宫:多层归档文件

`/app/flag.tar.gz` 是多层压缩文件:`flag.tar.gz → flag.tar → flag.zip.bz2.gz → flag.zip.bz2 → flag.zip → flag.txt`。请逐层解压并读取最终文件。

密码学难度 2★★☆☆☆

破解小型 RSA 密钥

RSA 依赖足够大的素数。本题的 `n` 过小;请分解它、求出私钥指数,并解密密文数列。 公钥与密文: n = 323 e = 5 ciphertexts = [115, 181, 241, 109, 109, 57, 190,…

密码学难度 2★★☆☆☆

密码分析:破解仿射密码

`ciphertext.txt` 是用仿射密码 `E(x) = (a×x + b) mod 26` 加密的英文报告,大小写保持不变,非字母字符原样保留。请以明文以单词 KINOCO 开头为线索求出密钥 a、b 并解密,提交最后一行中的旗标。

基础技能难度 2★★☆☆☆

正则表达式大师:日志文件分析

`/app/access.log` 有数千条访问记录。提取 IP 以 `192.168.1.` 开头且状态码为 `404` 的记录,匹配行数即为旗标。

基础技能难度 2★★☆☆☆

环境变量大师:PATH 劫持

隐藏命令 `getflag` 位于 `/app/secret_bin`,但目录未在 `PATH` 中。请用绝对路径和修改 `PATH` 两种方式运行它。

数字取证难度 2★★☆☆☆

图像 LSB 中隐藏的消息

从 `image.png` 的最低有效位(LSB)隐写数据中恢复 flag。

数字取证难度 3★★★☆☆

从 Chrome 浏览器提取会话 Cookie

给你从 Linux 版 Chrome 配置文件中取出的 `/challenge/Cookies` 和 `/challenge/History`(都是 SQLite)。 受害者点击内部邮件中的链接,经过一个伪造的 SSO…

数字取证难度 3★★★☆☆

检测 DNS 隧道

从 `dns_queries.log` 中检测 DNS 隧道造成的数据外传,并恢复 flag。

基础技能难度 3★★★☆☆

Docker 取证:检查容器证据

在没有 Docker 守护进程的环境中调查镜像 `registry.internal/kinoco-billing-api:2.4.1` 的元数据:`/challenge/image_history.txt`(相当于 `docker…

基础技能难度 3★★★☆☆

从 Git 历史中找出被删除的 API 密钥

`/app/repo` 是一个 Git 仓库。开发者曾误将 API_KEY 提交,并在后续提交中将其删除。请查看正常的 Git 历史,找到删除前的 `config.py`,恢复其 API 密钥中包含的旗标。

Linux难度 3★★★☆☆

Linux-Capabilities:不依赖 SUID 的提权

系统中特定二进制文件被授予 Linux capabilities。请研究不使用 SUID 位的 capabilities 提权方法。