type
status
date
slug
tags
summary
category
icon
password
fisher
前面的没什么用,把反调和格式检查过掉,然后手动改rip过sha1触发main里的异常处理,有一个函数里面有类似base变表的表,实则是自写的加密,可以把vector容器的符号表恢复一下方便看,逆该加密即可
fafalua
写作lua,实则发现是AngelScript语言的玩意,找到官方仓库看源码,发现samples里面有个games和这个程序的games一模一样,除了游戏过关后多一个输入check flag,以及.as被编译为asc,后缀改成flua
游戏本身没有用,改zf过掉即可
然后会输入,输入的flag会过一个gift,映射一下
打入符号表,asCContext::ExecuteNext函数会执行asc的opcode,这里猜测加密逻辑均在该函数中执行(调试非asc程序时会发现直接返回no~并打印)
直接对该函数的vm分发进行批量hook,会发现一直在执行这部分的xor,hook并打印,
经过调试发现这里只做了xor,发现在对flag处理中不会触发其他xor,且xor数量刚好为输入长度两倍
第一次xor中内存里看见deadbeef字符串,经过调试以及猜测发现是rc4
然后跟进调试hook,发现了另一个置换异或操作,数量恰好为0x26
均打印hook结果分析,猜测加密逻辑
得到解密脚本
- 作者:moyaoxue
- 链接:https://moyaoxue.de/article/14425ac9-6ea8-80ac-99c0-e3e90815fa28
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。

