ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Mobile WebDev

Mobile WebDev Mobile WebDev题目描述来源:Hacker101 CTF难度:中等(Moderate)Flag 数量:2 个Mobile WebDev 利用了两个关键漏洞:APK 中硬编码的 HMAC 密钥→ 获取 Flag 1ZIP 目录穿越漏洞(Zip Slip)→ 获取 Flag 2验证实例:https://b5c5a9fbbd2822e636e2b70765ec180f.ctf.hacker101.com/第一步:分析 App,收集线索1. 安装与抓包# 安装 APKadbinstallwebdev.apk# 设置 Burp Suite 代理,拦截网络请求2. 发现后台接口通过操作 App(点击 REFRESH 或 EDIT 按钮),抓包发现主要交互路径:路径功能/save.php保存编辑内容/edit.php编辑页面/content/内容目录3. 找到上传入口查看/edit.php页面的 HTML 源码,发现关键提示:!-- 提示:/upload.php --这是一个文件上传入口。Flag 1:计算 HMAC 上传 ZIP1. 访问上传页面访问/upload.php,页面提示:只允许上传 ZIP 文件需要提供 HMAC 参数2. 逆向 APK,提取密钥使用 JADX-GUI 反编译 APK:jadx-gui webdev.apk在代码中搜索HmacKey,找到硬编码的十六进制密钥:// MainActivity.java 中的密钥privatestaticfinalStringHmacKey="8c34bac50d9b096d41cafb53683b315690acf65a11b5f63250c61f7718fa1d1d";3. 编写 Python 脚本计算 HMACimporthmacimporthashlibimportbinascii# 从 APK 中提取的密钥key=binascii.unhexlify('8c34bac50d9b096d41cafb53683b315690acf65a11b5f63250c61f7718fa1d1d')# 读取 ZIP 文件withopen("test.zip",'rb')asf:data=f.read()# 计算 HMAC-MD5h=hmac.new(key,data,hashlib.md5)print(f"HMAC:{h.hexdigest(
返回列表