目录
1、wireshark_checkin
2、wireshark_secret
3、字里行间的秘密
4、你也玩原神吗
5、Herta's Study
6、用溯流仪见证伏特台风
7、热心助人的小明
1、wireshark_checkin
直接字符串搜 flag
flag{ez_traffic_analyze_isn't_it}
2、wireshark_secret
查看原始数据
导出十六进制值
新建十六进制文件导入数据
保存为 png 打开
看到 flag:flag{you_are_gooddddd}
3、字里行间的秘密
Txt 存在零宽隐写
拿到 key:it_is_k3y
打开 world
全选有东西,改字体颜色即可看到 flag
flag{you_h4ve_4nyth1n9}
4、你也玩原神吗
Gif 分解成图片
对照提取
对照表解出了很多东西
我一开始一直试的中间的那串大的,但是大小写都不对
后面继续解密四周小的密文,得到:
FLAGISASENTENCE IIAAELGTSFKFA
DOYOUKNOWFENCE MESIOAABGNHNSGOGMYEIADE
提示 flag 是一句话,还有 FENCE 也就是栅栏加密
将后面那段: MESIOAABGNHNSGOGMYEIADE 用于栅栏解密
直接枚举,可以看到:MAYBEGENSHINISAGOODGAME,也许原神是个好游戏
包裹 flag 提交发现没对,换小写发现正确
最终 flag为:flag{maybegenshinisagoodgame}
5、Herta's Study
解密下这个 horse.php
得到:
$ns=base64_encode($ns);for($i=0;$i<strlen($ns);$i+=1){if($i%2==1){$ns[$i]=str_rot13($ns[$i]);}}return $ns;
提取加密后的内容:
d2hiYJ1cOjo=MQclMDo=ZzFeZKt0aTlmX2lmX2Zua2VsZzFfZ30XZzFeZKt0aTlmX2lmX2Zua2VsZzFfZ30tCt==ZzxuZ3tmSQNsaGRsUmBsNzVOdKQkZaVZLa0tCt==YJJwZNo=
写个脚本逆向解密:
import base64def custom_decrypt(encrypted_str):decrypted_list = list(encrypted_str) for i in range(1, len(decrypted_list), 2):decrypted_list[i] = decrypted_list[i].translate(str.maketrans("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz","NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm"))partially_decrypted_str = "".join(decrypted_list)try:original_str = base64.b64decode(partially_decrypted_str).decode('utf-8')except UnicodeDecodeError:original_str = base64.b64decode(partially_decrypted_str)return original_strencrypted_str = "ZzxuZ3tmSQNsaGRsUmBsNzVOdKQkZaVZLa0tCt=="
decrypted_str = custom_decrypt(encrypted_str)
print("flag:", decrypted_str)
拿到 flag:flag{sH3_i4_S0_6eAut1fuL.}
6、用溯流仪见证伏特台风
搜索伏特台风报告找到了下面这个地址
提取:powerj7kmpzkdhjg4szvcxxgktgk36ezpjxvtosylrpey7svpmrjyuyd.onion
进行 md5 加密:
最终 flag:flag{6c3ea51b6f9d4f5e}
7、热心助人的小明
查看镜像的系统信息:
volatility_2.6_win64_standalone.exe -f image.raw imageinfo
列出缓存在内存中的注册表 hivelist:
volatility_2.6_win64_standalone.exe -f image.raw --profile=Win7SP1x86_23418 hivelist
列出用户名:
volatility_2.6_win64_standalone.exe -f image.raw --profile=Win7SP1x86_23418 printkey -K "SAM\Domains\Account\Users\Names"
导出用户名密码信息:
Administrator:500:aad3b435b51404eeaad3b435b51404ee:10eca58175d4228ece151e287086e824:::Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::HomeGroupUser$:1002:aad3b435b51404eeaad3b435b51404ee:bd4667328af8beb097a299187278c48f:::Xiaohong:1003:aad3b435b51404eeaad3b435b51404ee:3fa7d7d3c37b8e9baaf6ed13d70ed858:::
第一个 hash 值都是空密码:
这个是 Windows 早期使用的 LM 哈希,通常较弱,容易被破解。
在现代系统中一般用 aad3b435b51404eeaad3b435b51404ee 表示未启用(即空值)。
我们需要爆破第二个的 hash,NTLM 算法生成的哈希值,找到了但是要钱:
查看明文存储的密码:
volatility_2.6_win64_standalone.exe -f image.raw --profile=Win7SP1x86_23418 lsadump
flag{d1rT9_u3KR_p4sSw0rD_HACKER!} 提交发现是错的
换用 mimikatz 打了一下,无果:
导出了屏幕截图,依旧没什么发现
vol.py --plugins=/root/桌面/volatility-master/volatility/plugins -f /root/桌面/image.raw --profile=Win7SP1x86_23418 screenshot --dump-dir=./
后面碰撞出前面那个 md5 就是 *
小红的密码破不出,应该很复杂
真的很不理解了
d1rT9_u3KR_p4sSw0rD_HACKER! 这种看着真的很像 flag 了
但是它md5 的 ntlm 确实与小红密码不一样,啊啊啊
看到一个日记文件,导出
我觉得每次登录都输入复杂的密码太累了,所以如果我能自动登录就好了
vol.py --plugins=/root/桌面/volatility-master/volatility/plugins -f /root/桌面/image.raw --profile=Win7SP1x86_23418 printkey -o 0x91e7b4b0 -K "Microsoft\Windows NT\CurrentVersion\Winlogon"
确实开了自动登录
又来到这里,就是默认密码啊 DefaultPassword
最后问了出题人,呜呜呜,不需要 base64 解码,直接包裹 flag{} 交
(之前其实也试过的,可能打错了…)
最终 flag 为:flag{ZDFyVDlfdTNlUl9wNHNTdzByRF9IQUNLRVIh}