-
-
[原创]某诈骗应用协议流分析-DNS(TXT)识别解析
-
-
[原创]某诈骗应用协议流分析-DNS(TXT)识别解析
近期发现一款诈骗应用,该应用@r피닉스¤h。在使用时,会触发一串DNS TXT流,该TXT内容是一串base64组成:


尝试追踪堆栈:发现类名和jadx中打开的不一致,未找到a0类,猜测可能存在加壳。

使用firda-dexdump尝试脱壳,脱壳成功,打开dex2:

jadx进入a0.DnsEncrypt,发现存在一处AES/CBC/PKCS5Padding解密处,可以看到str值传入后,首先进行AES加密,barr2为iv,barr为key,随后第二个字符串作为异或密钥对整个str进行异或计算。

对a()进行向前追踪,发现传入的密钥和iv为固定值

对该位置进行hook,发现其正是我们要找的DNS_TXT的Base64加密位置
function hookTest102() {
Java.perform(function() {
var DNSEncrypt = Java.use("a0.f");
DNSEncrypt["a"].implementation = function (str, bArr, bArr2) {
console.log(`DNSEncrypt.a is called: str=${str}, bArr=${bArr}, bArr2=${bArr2}`);
let result = this["a"](str, bArr, bArr2);
console.log(`DNSEncrypt.a result=${result}`);
return result;
传播安全知识、拓宽行业人脉——看雪讲师团队等你加入!