# CTF 第二题

模拟登录

packagename:com.tencent.testvuln

# 静态分析

直接打开 mainactivity 看到,这里点击了登录按钮后,直接通过序列化 (intent) 传到了下一个页面

image-20220802212523959

点进去发现,其实就是对输入的这两个玩意做了个加密

image-20220802212656609

跟进去发现是 native 方法

image-20220802213646813

找到对应的方法,可以看到,这里估计就是采用了 aes 的加密

编写 aes 脚本

#coding:utf-8
import base64
from Crypto.Cipher import AES
# VEIzd/V2UPYNdn/bxH3Xig==
# 9YuQ2dk8CSaCe7DTAmaqAA==
cipher = base64.b64decode('VEIzd/V2UPYNdn/bxH3Xig==')
cipher2 = base64.b64decode('9YuQ2dk8CSaCe7DTAmaqAA==')
key = b'thisisatestkey=='
aes = AES.new(key, AES.MODE_ECB)
msg = aes.decrypt(cipher)
msg2 = aes.decrypt(cipher2)
print(msg.decode('utf-8'))
print(msg2.decode('utf-8'))
# aimagetencent
# Cas3_0f_A_CAK3

然后直接用这个提交,发现错误,估计存在啥不清楚的地方,再看题目名称,app 漏洞第二题,直接搜索 Encrpto, 发现 FileDataActivity 中有个解密操作,然后用 aes 脚本测试,拿到结果,提交成功。

Edited on

Give me a cup of [coffee]~( ̄▽ ̄)~*

Mr2 WeChat Pay

WeChat Pay