Belajar dengan berlatih: Melanjutkan Analisis Malware

  • Whatsapp
Belajar dengan berlatih: Melanjutkan Analisis Malware
Belajar dengan berlatih Melanjutkan Analisis Malware

News.nextcloud.asia

Posting ini dan yang lainnya untuk bulan ini adalah bagian dari seri yang saya gunakan untuk membantu saya mempersiapkan sertifikasi GIAC Reverse Engineer Malware (GREM) saya.

Posting ini, saya melihat melakukan analisis statis dari malware Brbbot. Apa yang ingin saya pelajari selama proses analisis statis tentang malware ini? Apa pun yang mungkin menyarankan program ini mungkin berbahaya. Namun, berikut adalah beberapa hal yang saya pikirkan:

– Dapatkan file hash
– Apakah program tersebut berpotensi berbahaya
– Apakah executable dikemas atau tidak
– Semua jenis kebingungan
– String Menarik
– Informasi tentang fungsi yang diimpor
– Informasi tentang fungsi apa pun yang dapat diekspor
– Informasi tentang berbagai bagian dalam executable
– Apakah kriptografi terlibat atau tidak
– Informasi apa pun tentang sertifikat digital, dll., yang digunakan

Eksekusi BrbBot dirancang untuk Windows. Namun, untuk mengurangi risiko membahayakan sistem secara tidak sengaja, Anda dapat menjalankan analisis Anda pada sistem operasi yang berbeda. Dalam hal ini, saya melakukan analisis statis saya pada Windows 10 VM dan sistem Kali saya.

Mari kita pergi.
– Dapatkan file hash
Saya akan melihat hash dari perspektif MD5, menggunakan md5sum pada sistem Kali saya.

1
2
└─$ md5sum brbbot.exe                   
1c7243c8f3586b799a5f9a2e4200aa92  brbbot.exe

– Apakah program tersebut berpotensi berbahaya

Untuk menjawab pertanyaan ini, mari kita lihat dari tiga perspektif yang berbeda. Pertama, kita mulai dengan ClamAV

└─$ clamscan --verbose brbbot.exe
Scanning brbbot.exe
brbbot.exe: OK

----------- SCAN SUMMARY -----------
Known viruses: 8933105
Engine version: 0.103.0
Scanned directories: 0
Scanned files: 1
Infected files: 0
Data scanned: 0.07 MB
Data read: 0.07 MB (ratio 1.00:1)
Time: 18.415 sec (0 m 18 s)
Start Date: 2020:11:07 21:32:42
End Date:   2020:11:07 21:33:01

Hmmm! Menarik bahwa ClamAV tidak menemukan sesuatu yang berbahaya di sini. Mari gunakan Team Cymru Malware Hash Registry untuk menanyakan hash yang dikembalikan dari md5sum.

└─$ md5sum brbbot.exe | cut --fields 1 --delimiter " " | awk '{ system("whois --host hash.cymru.com "$1); }' | awk --field-separator " " '{ print $1 ; system("date [email protected]"$2); print $3}'
1c7243c8f3586b799a5f9a2e4200aa92
Sat 07 Nov 2020 09:42:16 PM EST
NO_DATA
Menariknya, Team Cymru melaporkan hash ini tidak ada dalam database mereka seperti yang terlihat oleh TIDAK ADA DATA. Pada titik ini, saya bertanya-tanya apakah file ini benar-benar berbahaya. Mari kita jalankan satu tes terakhir melawan VirusTotal menggunakan Sysinternals Sigcheck.

└─$ wine ~/SysInternals/sigcheck64.exe -a -h -u -v brbbot.exe                    1 ⨯

Sigcheck v2.80 - File version and signature viewer
Copyright (C) 2004-2020 Mark Russinovich
Sysinternals - www.sysinternals.com

brbbot.exe:
        Verified:       Unsigned
        Link date:      1:12 AM 2/25/2015
        Publisher:      n/a
        Company:        n/a
        Description:    n/a
        Product:        n/a
        Prod version:   n/a
        File version:   n/a
        MachineType:    64-bit
        Binary Version: n/a
        Original Name:  n/a
        Internal Name:  n/a
        Copyright:      n/a
        Comments:       n/a
        Entropy:        5.918
        MD5:    1C7243C8F3586B799A5F9A2E4200AA92
        SHA1:   4DB5A8E237937B6D7B435A8506B8584121A7E9E3
        PESHA1: 4DB5A8E237937B6D7B435A8506B8584121A7E9E3
        PE256:  n/a
        SHA256: F47060D0F7DE5EE651878EB18DD2D24B5003BDB03EF4F49879F448F05034A21E
        IMP:    475B069FEC5E5868CAEB7D4D89236C89
        VT detection:   52/73
        VT link:        https://www.virustotal.com/gui/file/f47060d0f7de5ee651878eb18dd2d24b5003bdb03ef4f49879f448f05034a21e/detection

Ahhh! Sepertinya kita akhirnya membuat kemajuan. VirusTotal melaporkan tingkat deteksi 52/73. Pada titik ini, saya akan mempercayai VirusTotal. Namun, itu baik bagi kami untuk memiliki perspektif alat lain.

– Apakah executable dikemas atau tidak
Untuk memvalidasi apakah file dikemas atau tidak. Saya pertama kali menjalankan string pada file.

└─$ strings brbbot.exe | head --lines 10
!This program cannot be run in DOS mode.
Rich
.text
`.rdata
@.data
.pdata
@.rsrc
@.reloc
WATAUH
[email protected]
Sekilas, kesimpulan langsung saya adalah file ini tidak dikemas.

└─$ strings --all --encoding=s --bytes=10  brbbot.exe | more
...
GetUserObjectInformationW
GetLastActivePopup
GetActiveWindow
MessageBoxW
brbconfig.tmp
%s?i=%s&c=%s&p=%s
SoftwareMicrosoftWindowsCurrentVersionRun
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)
Connection: close
ZwQuerySystemInformation
RegSetValueExA
RegOpenKeyExA
RegDeleteValueA
RegFlushKey
RegCloseKey
CryptAcquireContextW
CryptDeriveKey
CryptReleaseContext
CryptEncrypt
CryptCreateHash
CryptDestroyKey
CryptDecrypt
CryptDestroyHash
...
– Semua jenis kebingungan

└─$ strings --all --encoding=s --bytes=10  brbbot.exe | more
...
GetUserObjectInformationW
GetLastActivePopup
GetActiveWindow
MessageBoxW
brbconfig.tmp
%s?i=%s&c=%s&p=%s
SoftwareMicrosoftWindowsCurrentVersionRun
Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0)
Connection: close
ZwQuerySystemInformation
RegSetValueExA
RegOpenKeyExA
RegDeleteValueA
RegFlushKey
RegCloseKey
CryptAcquireContextW
CryptDeriveKey
CryptReleaseContext
CryptEncrypt
CryptCreateHash
CryptDestroyKey
CryptDecrypt
CryptDestroyHash
...

Di atas, saya menyimpulkan bahwa data tidak dikaburkan. Lebih penting lagi, saya juga dapat mengidentifikasi string yang menarik, informasi tentang fungsi yang digunakan oleh program, fungsi yang menyarankan kriptografi sedang digunakan.

Mengambil tampilan yang berbeda. Mari kita lihat apa bingkai rangkap laporan.

└─$ peframe brbbot.exe


--------------------------------------------------------------------------------
File Information (time: 0:00:00.834525)
--------------------------------------------------------------------------------
filename         brbbot.exe
filetype         PE32+ executable (GUI) x86-64, for MS Windows
filesize         75776
hash sha256      f47060d0f7de5ee651878eb18dd2d24b5003bdb03ef4f49879f448f05034a21e
virustotal       /
imagebase        0x140000000 *
entrypoint       0x3f94
imphash          475b069fec5e5868caeb7d4d89236c89
datetime         2015-02-25 06:12:18
dll              False
directories      import, tls, resources, relocations
sections         .rdata, .data, .pdata, .rsrc, .reloc, .text *
features         mutex, antidbg, packer, crypto


--------------------------------------------------------------------------------
Yara Plugins
--------------------------------------------------------------------------------
IsPE64
IsWindowsGUI
HasRichSignature
Advapi Hash API


--------------------------------------------------------------------------------
Behavior
--------------------------------------------------------------------------------
anti dbg
Xor
network http
screenshot
win registry
win files operation


--------------------------------------------------------------------------------
Crypto
--------------------------------------------------------------------------------
Advapi Hash API


--------------------------------------------------------------------------------
Packer
--------------------------------------------------------------------------------
Microsoft Visual Cpp 80 DLL


--------------------------------------------------------------------------------
Mutex Api
--------------------------------------------------------------------------------
WaitForSingleObject


--------------------------------------------------------------------------------
Anti Debug
--------------------------------------------------------------------------------
GetLastError
IsDebuggerPresent
TerminateProcess
UnhandledExceptionFilter


--------------------------------------------------------------------------------
Sections Suspicious
--------------------------------------------------------------------------------
.text            6.34


--------------------------------------------------------------------------------
Import function
--------------------------------------------------------------------------------
ADVAPI32.dll     14
WININET.dll      9
WS2_32.dll       5
KERNEL32.dll     86
USER32.dll       1


--------------------------------------------------------------------------------
Possibile Breakpoint
--------------------------------------------------------------------------------
CloseHandle
CopyFileA
CreateFileA
CreateFileW
CreateProcessA
CryptEncrypt
DeleteCriticalSection
DeleteFileA
ExitProcess
FindResourceA
GetCommandLineW
GetComputerNameA
GetCurrentProcess
GetCurrentProcessId
GetFileSize
GetModuleFileNameA
GetModuleFileNameW
GetModuleHandleA
GetModuleHandleW
GetProcAddress
GetStartupInfoW
GetSystemDirectoryA
GetTempFileNameA
GetTempPathA
GetTickCount
HeapAlloc
HttpQueryInfoA
HttpSendRequestA
InitializeCriticalSectionAndSpinCount
InternetCloseHandle
InternetConnectA
InternetOpenA
InternetQueryDataAvailable
InternetReadFile
IsDebuggerPresent
LoadLibraryW
LockResource
ReadFile
RegCloseKey
RegDeleteValueA
RegOpenKeyExA
SetFilePointer
Sleep
TerminateProcess
UnhandledExceptionFilter
WSAStartup
WaitForSingleObject
WriteFile


--------------------------------------------------------------------------------
File
--------------------------------------------------------------------------------
brbconfig.tmp    Temporary
ntdll.dll        Library
ADVAPI32.dll     Library
WININET.dll      Library
WS2_32.dll       Library
KERNEL32.dll     Library
USER32.dll       Library

Di atas kami mendapatkan laporan yang bagus dari bingkai rangkap pada informasi yang berkaitan dengan biner. Di antara informasi yang ditunjukkan di atas adalah bagian yang kita lihat a .rsrc untuk bagian sumber daya. Malware dapat menyembunyikan konten berbahaya tambahan di bagian sumber daya, terutama saat beroperasi sebagai penetes, jadi mari kita gunakan bangku gulat untuk melihat apakah bagian tersebut berisi sesuatu yang menarik.

└─$ wrestool --list brbbot.exe 
--type="CONFIG" --name=101 --language=1033 [offset=0x17070 size=73]

Di atas kita melihat sumber daya dengan nama 101. Sekarang mari kita ekstrak sumber daya ini, untuk melihat jenis file apa itu.

└─$ sudo wrestool --extract --raw --verbose --out . brbbot.exe

└─$ ls brbbot.exe*                      
brbbot.exe  brbbot.exe_CONFIG_101

└─$ file brbbot.exe_CONFIG_101 
brbbot.exe_CONFIG_101: COM executable for DOS

Menarik, sumber daya dilaporkan sebagai COM dapat dieksekusi untuk DOS.

Mengambil pandangan lewat dengan ExifTool

└─$ exiftool brbbot.exe                         
ExifTool Version Number         : 12.09
File Name                       : brbbot.exe
Directory                       : .
File Size                       : 74 kB
File Modification Date/Time     : 2015:02:25 02:12:18-05:00
File Access Date/Time           : 2020:11:07 21:14:58-05:00
File Inode Change Date/Time     : 2020:11:07 21:12:42-05:00
File Permissions                : rw-r--r--
File Type                       : Win64 EXE
File Type Extension             : exe
MIME Type                       : application/octet-stream
Machine Type                    : AMD AMD64
Time Stamp                      : 2015:02:25 01:12:18-05:00
Image File Characteristics      : Executable, Large address aware
PE Type                         : PE32+
Linker Version                  : 10.0
Code Size                       : 50176
Initialized Data Size           : 35328
Uninitialized Data Size         : 0
Entry Point                     : 0x3f94
OS Version                      : 5.2
Image Version                   : 0.0
Subsystem Version               : 5.2
Subsystem                       : Windows GUI
Mari kita selesaikan ini dengan mengambil pass dengan PEStudio.

pestudio_brbbot

Demikian pula, ada alat seperti PE-beruang

PEBeat brbbot

Deteksi dengan Mudah

… dan sejumlah alat dan teknik lain yang dapat digunakan untuk mendapatkan wawasan tambahan melalui analisis statis.

Referensi:

Menguasai 4 Tahapan Analisis Malware
CrowdStrike – Apa itu Analisis Malware
Infosec Institute – Analisis Malware Statis
Mandiant – Analisis Malware Praktis
Medium – Analisis Malware 101
Memahami Struktur PE, Cara Awam – Analisis Malware Bagian 2
Analisis file portabel yang dapat dieksekusi dengan PEFRAME
Bingkai PE
Team Cymru – Registri Hash Malware
SANS FOR610 – Malware Rekayasa Terbalik – GREM

Pos terkait

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan.