前言:涉及 RC4魔改 TEA魔改 AES魔改,i春秋练习题。,进行复现。
查壳:
ida打开。
修改完名字,以及类型之后如下;
分别进入 rc4_init 和rc4_crypt
rc4_init:
根据RC4 S和T的生成进行对拍。
魔改一: 初始化操作,运用的是AES的常量表。(并不是取值【0~255】)
魔改二:进行了XOR 0x66
实际就是
s[j] = temp ^ 0x66; --->生成的S进行了异或0x66的操作。(它这属于简单花指令、混淆)
rc4_crypt
修改名字,以及类型 依旧对拍:
魔改三:
key的最后生成XOR了 (x+0x34)
脚本:
### RC4是对称密码。 所以,加解密用同一套算法。
查壳
ida打开:
处理依旧 对函数名 、类型进行改正
进入encrypt函数;
提取TEA算法 特征码进行对照 看是否有进行魔改操作:
魔改:
对照可以发现。引入了两个data值(可以通过动态的方式获取。)
delta的默认值从 0x9E3779B9 变成了 0x6E75316C
脚本:
对照TEA原型解密脚本去编写魔改TEA解密脚本。
验证:
查壳:
ida打开。
跟进
aes_key_schedule_128
进行对拍。
能说明这是子密钥的生成流程。
aes_encrypt_128
依旧对拍
- -
列混合:
参考:
【AES加密算法】| AES加密过程详解| 对称加密| Rijndael-128| 密码学| 信息安全_哔哩哔哩_bilibili
所以,综上 两处魔改
一是 字节替换时用的是逆S盒而不是S盒
二是 行位移的顺序。
脚本:(能分析就好,脚本直接GitHub上扒拉下来进行改动。)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/40718.html