hacktricks/reversing/common-api-used-in-malware.md
2024-02-11 02:13:58 +00:00

6.5 KiB

Jifunze kuhusu kudukua AWS kutoka sifuri hadi shujaa na htARTE (Mtaalam wa Timu Nyekundu ya AWS ya HackTricks)!

Njia nyingine za kusaidia HackTricks:

Pata udhaifu unaowajali zaidi ili uweze kuzirekebisha haraka. Intruder inafuatilia eneo lako la shambulio, inafanya uchunguzi wa vitisho wa kujitokeza, inapata masuala katika mfumo wako mzima wa teknolojia, kutoka kwa APIs hadi programu za wavuti na mifumo ya wingu. Jaribu bure leo.

{% embed url="https://www.intruder.io/?utm_campaign=hacktricks&utm_source=referral" %}


Kawaida

Uunganishaji

Sockets za Raw Sockets za WinAPI
socket() WSAStratup()
bind() bind()
listen() listen()
accept() accept()
connect() connect()
read()/recv() recv()
write() send()
shutdown() WSACleanup()

Uthabiti

Usajili Faili Huduma
RegCreateKeyEx() GetTempPath() OpenSCManager
RegOpenKeyEx() CopyFile() CreateService()
RegSetValueEx() CreateFile() StartServiceCtrlDispatcher()
RegDeleteKeyEx() WriteFile()
RegGetValue() ReadFile()

Ufichaji

Jina
WinCrypt
CryptAcquireContext()
CryptGenKey()
CryptDeriveKey()
CryptDecrypt()
CryptReleaseContext()

Kuzuia Uchambuzi/VM

Jina la Kazi Maagizo ya Mkutano
IsDebuggerPresent() CPUID()
GetSystemInfo() IN()
GlobalMemoryStatusEx()
GetVersion()
CreateToolhelp32Snapshot [Angalia ikiwa mchakato unaendesha]
CreateFileW/A [Angalia ikiwa faili ipo]

Ufichaji

Jina
VirtualAlloc Alokisha kumbukumbu (pakiti)
VirtualProtect Badilisha ruhusa ya kumbukumbu (pakiti inayotoa ruhusa ya utekelezaji kwa sehemu)
ReadProcessMemory Uingizaji kwenye michakato ya nje
WriteProcessMemoryA/W Uingizaji kwenye michakato ya nje
NtWriteVirtualMemory
CreateRemoteThread Uingizaji wa DLL/Mchakato...
NtUnmapViewOfSection
QueueUserAPC
CreateProcessInternalA/W

Utekelezaji

Jina la Kazi
CreateProcessA/W
ShellExecute
WinExec
ResumeThread
NtResumeThread

Mbalimbali

  • GetAsyncKeyState() -- Kurekodi funguo
  • SetWindowsHookEx -- Kurekodi funguo
  • GetForeGroundWindow -- Pata jina la dirisha linaloendesha (au wavuti kutoka kwa kivinjari)
  • LoadLibrary() -- Ingiza maktaba
  • GetProcAddress() -- Ingiza maktaba
  • CreateToolhelp32Snapshot() -- Orodhesha michakato inayoendesha
  • GetDC() -- Picha ya skrini
  • BitBlt() -- Picha ya skrini
  • InternetOpen(), InternetOpenUrl(), InternetReadFile(), InternetWriteFile() -- Fikia Mtandao
  • FindResource(), LoadResource(), LockResource() -- Fikia rasilimali za kutekelezwa

Mbinu za Programu Hasidi

Uingizaji wa DLL

Tekeleza DLL isiyojulikana ndani ya mchakato mwingine

  1. Tafuta mchakato wa kuingiza DLL mbaya: CreateToolhelp32Snapshot, Process32First, Process32Next
  2. Fungua mchakato: GetModuleHandle, GetProcAddress, OpenProcess
  3. Andika njia ya DLL ndani ya mchakato: VirtualAllocEx, WriteProcessMemory
  4. Unda mchakato katika mchakato ambao utapakia DLL mbaya: CreateRemoteThread, LoadLibrary

Vipengele vingine vya kutumia: NTCreateThreadEx, RtlCreateUserThread

Uingizaji wa DLL kwa Kutafakari

Pakia DLL mbaya bila kuita wito wa kawaida wa Windows API.
DLL inafungwa ndani ya mchakato, itatatua anwani za uingizaji, kurekebisha urekebishaji na kuita kazi ya DllMain.

Utek