首页
课程
问答
CTF
社区
招聘
峰会
发现
排行榜
知识库
工具下载
看雪20年
看雪商城
证书查询
登录
注册
首页
社区
课程
招聘
发现
问答
CTF
排行榜
知识库
工具下载
峰会
看雪商城
证书查询
社区
CTF对抗
发新帖
0
0
[原创]第二题:巳时·绿光幽语 WP
发表于: 2026-8-11 12:53
10
[原创]第二题:巳时·绿光幽语 WP
Q7411
2026-8-11 12:53
10
题目给的是 Py 打包程序 解包后发现入口 `main` 逻辑很简单: ```python import sys sys.exit(0) ``` 说明真正逻辑不在常规入口中 需要继续检查其他文件 这波吃亏了 我还在想 第二题这么难?原来是我没运行 没看到提示 唉 ```java 提示,需要还原的代码 def my_function(): print("恭喜成功!") 请输入key还原代码(请输入6个字符) ``` 继续搜索字符串和 frozen 模块 发现关键逻辑被藏在 `python313.dll` 中的 frozen `os` 模块里 程序主要流程如下 1. 使用 `xor 0x55` 解密并打印提示信息 2. 要求输入 6 个字符的 key 3. 使用该 key 循环异或两段密文 4. 还原 `my_function.__code__.co_code` 和 `my_function.__code__.co_consts` 5. 如果还原成功,则执行目标函数 题目提示需要还原的代码为 ```python def my_function(): print("恭喜成功!") ``` 因此可以用目标函数的字节码反推 key 核心反推脚本 ```python cipher = b'\xecbmucryb6tcr*c\x03ucryb6tCr\x1eb' target = b'\x95\x00[\x01\x00\x00\x00\x00\x00\x00\x00\x00S\x015\x01\x00\x00\x00\x00\x00\x00 \x00g\x00' key_stream = bytes(cipher[i] ^ target[i] for i in range(len(target))) print(key_stream) ``` 输出结果为 ```text b'yb6tcryb6tcryb6tcryb6tcryb' ``` key 长度为 6 因此得到flag ```text yb6tcr ```
传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!!
最后于
2026-8-11 12:58 被Q7411编辑 ,原因:
收藏
・
0
点赞
・
0
打赏
分享
分享到微信
分享到QQ
分享到微博
赞赏记录
参与人
雪币
留言
时间
查看更多
赞赏
×
1 雪花
5 雪花
10 雪花
20 雪花
50 雪花
80 雪花
100 雪花
150 雪花
200 雪花
支付方式:
微信支付
赞赏留言:
快捷留言
感谢分享~
精品文章~
原创内容~
精彩转帖~
助人为乐~
感谢分享~
最新回复
(
0
)
游客
登录
|
注册
方可回帖
回帖
表情
雪币赚取及消费
高级回复
返回
Q7411
3
发帖
2
回帖
0
RANK
关注
私信
他的文章
[原创] KCTF 2026 第二题:巳时·绿光幽语 WP
154
[原创]第二题:巳时·绿光幽语 WP
10
关于我们
联系我们
企业服务
看雪公众号
专注于PC、移动、智能设备安全研究及逆向工程的开发者社区
看原图
赞赏
×
雪币:
+
留言:
快捷留言
为你点赞!
返回
顶部