17 App 的安全测试专项做什么?
2026/9/17...大约 2 分钟
17|App 的安全测试专项做什么?
开场按 App 特有攻击面组织——金融、社交类 App 的安全专项是刚需(监管明文要求)。
回答思路
第一步:四个特有攻击面 + 验证动作
| 攻击面 | 测什么 | 验证动作 |
|---|---|---|
| 本地存储 | 敏感信息是否明文存在本地(sp、sqlite、沙盒文件里翻 token 和用户信息) | 文件浏览器或 root 后翻沙盒目录 |
| 日志 | 是否打印敏感数据 | adb logcat 过滤关键字 |
| 传输 | 是否校验证书(能否被中间人抓包——不校验证书的 App 等于裸奔)、证书固定的强度 | 装证书抓包看通不通 |
| 逆向 | 反编译看代码,硬编码的密钥和 secret 是否裸奔 | jadx 反编译 grep secret 和 key |
| 组件(安卓) | 四大组件是否导出(外部 App 能否调起内部 Activity 拿数据)、WebView 的 JS 桥是否暴露敏感接口 | 组件清单审查 |
第二步:讲客户端安全的特殊性
客户端代码在攻击者手里(可反编译可调试可 hook)——一切逻辑放在客户端的都是可被篡改的。安全设计的原则:「客户端只做体验、校验都在服务端」,判断漏洞时用这个原则度量。
第三步:讲典型漏洞输出(经验密度可感)
本地明文存密码(高危)、日志打印 token(中危)、不校验证书(高危)、secret 硬编码(高危)、debug 模式没关(信息泄露)、截屏保护缺失(金融 App 敏感页面可被截屏,合规要求)。
收尾:讲加固和它的局限
加固(壳、混淆)提高逆向成本,但不改变「客户端不可信」的本质——测试要假设攻击者能绕过加固直接审逻辑。
考察重点
| 维度 | 说明 |
|---|---|
| 企业动机 | App 安测和 Web 安测的技能栈差异明显——企业用这题筛「真做过移动端安全」的人,这个标签在市场上稀缺 |
| 过线标准 | 至少三个攻击面 + 对应验证动作 |
| 区分度 | jadx 反编译、四大组件导出、JS 桥暴露这些颗粒度是实战标志 |
| 加分项 | 「客户端只做体验、校验都在服务端」的安全设计原则 |
| 减分项 | App 安全只会「抓包看看」,移动端特有攻击面(本地存储、逆向、组件)完全没概念 |
来源
整理自知识星球帖《面试情报 05|安全测试 20 题》,返回题库。