XCTF-mobile app2


下载地址: 点此下载

1.提取文件

更改app安装包后缀为zip
在这里插入图片描述
把这3个文件解压出来
在这里插入图片描述
然后使用dex2jar将dex文件转换为jar文件,得到一个jar文件,这个文件中包含了大部分程序逻辑
在这里插入图片描述
再使用AXMLPrinter2.jar对AndroidManifest.xml进行解包
在这里插入图片描述

2.分析文件

使用JD-GUI分析jar文件
在这里插入图片描述
找到MainActivity.clss,因为正常情况下MainActivity是app加载的第一个页面。
在这里插入图片描述
可以看到程序获取两个编辑框的内容,通过Intent机制调用SecondActivity
在这里插入图片描述
跟过去看下
在这里插入图片描述
质量把两个编辑框的内容相连,通过doRawData函数加密后与VEIzd/V2UPYNdn/bxH3Xig==对比,跟到doRawData函数中,查看函数逻辑
在这里插入图片描述
这个函数是定义在共享库中的,找到解压出来的lib文件
在这里插入图片描述
lib文件下有3个文件夹,每个文件夹里都有一个so文件,没关系,都是一样的,只是不懂平台调用不懂的库文件。随便找一个,拖入IDA
在这里插入图片描述
找到这个函数。这里IDA分析的有点问题,手动把这个函数形参a1的类型改为JNIEnv*,在变量上按Y就可以修改类型
在这里插入图片描述
发现这是一个AES加密,密钥是"thisisatestkey=="
在这里插入图片描述
解密脚本,或者使用在线解密网站,对一开始发现的这个密文进行解密。
在这里插入图片描述

import base64
from Crypto.Cipher import AES
cipher=base64.b64decode("VEIzd/V2UPYNdn/bxH3Xig==")
key = "thisisatestkey==".encode("utf-8")
aes = AES.new(key,AES.MODE_ECB)
msg = aes.decrypt(cipher)
print(msg.decode("utf-8"))

的到明文

aimagetencent

经过尝试,这个不是flag,在app中输入,得到的也不是flag
在这里插入图片描述

3.分析XML文件

<activity
			android:label="@7F050001"
			android:name="com.tencent.testvuln.MainActivity"
			>
			<intent-filter
				>
				<action
					android:name="android.intent.action.MAIN"
					>
				</action>
				<category
					android:name="android.intent.category.LAUNCHER"
					>
				</category>
			</intent-filter>
		</activity>
		<activity
			android:label="@7F050001"
			android:name="com.tencent.testvuln.SecondActivity"
			>
		</activity>
		<activity
			android:name="com.tencent.testvuln.FileDataActivity"
			>
			<intent-filter
				>
				<action
					android:name="android.intent.action.tencent"
					>
				</action>
			</intent-filter>
		</activity>

发现这个页面app总共有3个Activity,MainActivity、SecondActivity都分析过了,只有FileDataActivity还不懂它是干啥的,回到JD-GUI中找到FileDataActivity.class。发现还有一个密文,在IDA中跟下,看看decode是干啥的
在这里插入图片描述
在这里插入图片描述
应该是AES解密
在这里插入图片描述

4.经过验证得到flag

Cas3_0f_A_CAK3

5.其他解法

#连接虚拟机
adb connect 127.0.0.1:62001
#获取shell
adb shell
#使用am start调用FileDataActivity页面
am start com.tencent.testvuln/.FileDataActivity

在这里插入图片描述
得到flag
在这里插入图片描述

发布了24 篇原创文章 · 获赞 9 · 访问量 3218

猜你喜欢

转载自blog.csdn.net/qin9800/article/details/104972349
今日推荐