参考:
【JISA20】A Large-Scale Study on the Adoption of Anti-Debugging and Anti-Tampering Protections in Android Apps
JISA是CCF-C类期刊
关于app证书及其校验,参见https://blog.csdn.net/qq_39441603/article/details/123767506
计算文件(例如,资源文件或程序文件)hash值,并和预设的合法值进行比较
例如,app可以使用Zipentry库来计算文件CRC校验码。
安装渠道检查
app可以调用PackageManager.getInstallerPackageName API 来获取 安装了当前app 的app的包名
Google的经典远程证明框架:
Our analysis shows that 59% of these apps implement neither Anti-Debugging nor Anti-Tampering protections
41%的app使用了Anti-Debugging或Anti-Tampering protections
half of the remaining apps deploy only one protection
41%中约一半的app只使用了Anti-Debugging或Anti-Tampering中的一项
We also observe that app developers prefer Java to Native protections by a ratio of 99 to 1