app安全评估之客户端程序安全(Activity拒绝服务)
安全场景描述
开发者为方便调用,会把Activity组件设置为导出状态。Android组件之间采用Intent来传递数据,如果Intent接收方没有对Intent的畸形数据进行异常捕获,攻击者可以通过构造附有畸形数据的Intent,导致APP崩溃,触发拒绝服务漏洞。
威胁等级
中
影响范围
Android所有版本
测试步骤
搜索activity android:exported=

修复建议
- 将不必要导出的组件调整为不导出
<activity android:name=".ActivityDdosDemo" android:exported="false">
<intent-filter>
<action android:name="android.intent.360.testddos"/>
</intent-filter>
</activity>
- 对intent的数据处理进行保护
try {
Intent intent = getIntent();
boolean nullp = intent.getBooleanExtra("npe", true);
if (nullp) {
if (intent.getAction().equals("android.intent.360.testddos")) {
Logger.log("Test for Android DDOS Bug");
}
} else {
Logger.log("Test for Android DDOS Bug");
String test = (String) intent.getSerializableExtra("serializable_key");
}
} catch (Exception exp) {
}

浙公网安备 33010602011771号