首页
社区
课程
招聘
[原创]提交题目 2023 KCTF
2023-8-21 15:50 852

[原创]提交题目 2023 KCTF

2023-8-21 15:50
852

战队名称:
Archaia

队长QQ:
1553441448

参赛题目:
见附件

公开的用户名及序列号:
用户名 : CCFE84316BD02C02
序列号 : D532E41AFE55A4265D7789C84BF40384

题目答案:
用户名 : KCTF
序列号 : 8BCBB6979E174CB7ECAEACDA104522CA

题目设计:
此题使用了X86的代码混淆。

1.题目介绍:这次提交的题目是windows32位的应用程序,作战思路是将算法高级代码和汇编进行混淆、膨胀

2.整体设计:
(1)用户名加密部分:
使用修改过的DES算法,对用户名进行多次加密,将结果进行hash、拼接,再进行hash,得到一个值
(2)序列号加密部分
使用修改后的AES算法,对序列号进行解密,将结果通过修改过的DES算法,进行多次解密,密钥来自于(1)的中间结果,最后得到一个值,再进行序列化解密,与(1)最后生成的值进行比较

3.混淆:
(1)32位混淆:对常见汇编指令进行替换、膨胀,增加垃圾代码,乱序

4.算法:

使用修改过的DES算法

使用修改过的AES算法

使用简单的解释执行算法

使用RSHash算法保护算法部分的内存完整性

技术要点:
1、X86的代码混淆
2、算法设计

破解时可能会遇到的问题
1.总体思路:
通过调试器的trace功能或者模拟执行的方式拿到完整的解密算法,最后分析解密算法得到加密算法。
2.需要解决的问题
(1)拿到完整的代码之后,需要写脚本将垃圾指令除去,以便最后的分析
(2)通过分析解密算法得到加密的算法。
(3)需要正面对抗大量冗余代码

预期的破解思路:
1.找到混淆规律,提升分析速度

2.根据关键算法代码写逆算法


[培训]二进制漏洞攻防(第3期);满10人开班;模糊测试与工具使用二次开发;网络协议漏洞挖掘;Linux内核漏洞挖掘与利用;AOSP漏洞挖掘与利用;代码审计。

最后于 2023-9-17 12:08 被kanxue编辑 ,原因:
上传的附件:
收藏
点赞0
打赏
分享
最新回复 (2)
雪    币: 32410
活跃值: (18730)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
kanxue 8 2023-8-27 16:02
2
0

需要修正

最后于 2023-8-27 16:10 被kanxue编辑 ,原因:
雪    币: 32410
活跃值: (18730)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
kanxue 8 2023-8-30 11:47
3
0
第八题 AI核心地带
游客
登录 | 注册 方可回帖
返回