工具介紹
capa 檢測(cè)可執(zhí)行文件中的功能。您針對(duì) PE、ELF、.NET 模塊或 shellcode 文件運(yùn)行它,它會(huì)告訴您它認(rèn)為該程序可以做什么。例如,它可能表明該文件是后門(mén)、能夠安裝服務(wù)或依賴 HTTP 進(jìn)行通信。
工具使用針對(duì)未知二進(jìn)制文件 ( suspicious.exe) 運(yùn)行 capa,該工具報(bào)告該程序可以發(fā)送 HTTP 請(qǐng)求、通過(guò) XOR 和 Base64 解碼數(shù)據(jù)、安裝服務(wù)并生成新進(jìn)程。總而言之,這讓我們認(rèn)為這suspicious.exe可能是一個(gè)持久的后門(mén)。因此,我們的下一個(gè)分析步驟可能是在沙箱中運(yùn)行suspicious.exe并嘗試恢復(fù)命令和控制服務(wù)器。通過(guò)傳遞-vv標(biāo)志(非常詳細(xì)),capa 準(zhǔn)確報(bào)告在哪里找到了這些功能的證據(jù)。這至少有兩個(gè)原因:- 它有助于解釋為什么我們應(yīng)該相信結(jié)果,并使我們能夠驗(yàn)證結(jié)論,并且
- 它顯示了經(jīng)驗(yàn)豐富的分析師可以使用 IDA Pro 研究二進(jìn)制文件中的哪些位置
$ capa.exe suspicious.exe -vv
...
execute shell command and capture output
namespace c2/shell
author matthew.williams@mandiant.com
scope function
att&ck Execution::Command and Scripting Interpreter::Windows Command Shell [T1059.003]
references https://docs.microsoft.com/en-us/windows/win32/api/processthreadsapi/ns-processthreadsapi-startupinfoa
function @ 0x4011C0
and:
match: create a process with modified I/O handles and window @ 0x4011C0
and:
number: 257 = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW @ 0x4012B8
or:
number: 68 = StartupInfo.cb (size) @ 0x401282
or: = API functions that accept a pointer to a STARTUPINFO structure
api: kernel32.CreateProcess @ 0x401343
match: create pipe @ 0x4011C0
or:
api: kernel32.CreatePipe @ 0x40126F, 0x401280
optional:
match: create thread @ 0x40136A, 0x4013BA
or:
and:
os: windows
or:
api: kernel32.CreateThread @ 0x4013D7
or:
and:
os: windows
or:
api: kernel32.CreateThread @ 0x401395
or:
string: "cmd.exe" @ 0x4012FD
...
capa 使用一組規(guī)則來(lái)識(shí)別程序中的功能。這些規(guī)則很容易編寫(xiě),即使對(duì)于逆向工程新手來(lái)說(shuō)也是如此。通過(guò)編寫(xiě)規(guī)則,您可以擴(kuò)展 capa 識(shí)別的功能。在某些方面,capa 規(guī)則是 OpenIOC、Yara 和 YAML 格式的混合。
以下是 capa 使用的規(guī)則示例:
rule:
meta:
name: hash data with CRC32
namespace: data-manipulation/checksum/crc32
authors:
- moritz.raabe@mandiant.com
scope: function
mbc:
- Data::Checksum::CRC32 [C0032.001]
examples:
- 2D3EDC218A90F03089CC01715A9F047F:0x403CBD
- 7D28CB106CB54876B2A5C111724A07CD:0x402350 # RtlComputeCrc32
- 7EFF498DE13CC734262F87E6B3EF38AB:0x100084A6
features:
- or:
- and:
- mnemonic: shr
- or:
- number: 0xEDB88320
- bytes: 00 00 00 00 96 30 07 77 2C 61 0E EE BA 51 09 99 19 C4 6D 07 8F F4 6A 70 35 A5 63 E9 A3 95 64 9E = crc32_tab
- number: 8
- characteristic: nzxor
- and:
- number: 0x8320
- number: 0xEDB8
- characteristic: nzxor
- api: RtlComputeCrc32
下載鏈接:
鏈接:https://pan.quark.cn/s/01e6d73b416b
項(xiàng)目地址:https://github.com/mandiant/capa
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
9017瀏覽量
85182 -
HTTP
+關(guān)注
關(guān)注
0文章
501瀏覽量
31056 -
分析工具
+關(guān)注
關(guān)注
0文章
28瀏覽量
5074
原文標(biāo)題:【藍(lán)隊(duì)】惡意文件分析工具
文章出處:【微信號(hào):菜鳥(niǎo)學(xué)安全,微信公眾號(hào):菜鳥(niǎo)學(xué)安全】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論