
🦆 Malduck मैलवेयर विश्लेषण यात्राओं में आपका डकी साथी है।
Malduck मैलवेयर विश्लेषण यात्राओं में आपका डकी साथी है। यह मुख्य रूप से Roach प्रोजेक्ट पर आधारित है, जो Maciej Kotowicz द्वारा बनाई गई mlib लाइब्रेरी से कई अवधारणाओं को प्राप्त करता है। फोर्क का उद्देश्य Roach को Cuckoo Sandbox प्रोजेक्ट से स्वतंत्र बनाना था, लेकिन फिर भी इसके आंतरिक procmem प्रारूप का समर्थन करना।
Malduck CERT.pl कोडबेस से कई सुधार प्रदान करता है, जो मैलवेयर विश्लेषण उद्देश्यों के लिए लिखी गई स्क्रिप्ट को अधिक छोटा और शक्तिशाली बनाता है।
from malduck import aes
key = b'A'*16
iv = b'B'*16
plaintext = b'data'*16
ciphertext = aes.cbc.encrypt(key, iv, plaintext)
from malduck import serpent
key = b'a'*16
iv = b'b'*16
plaintext = b'data'*16
ciphertext = serpent.cbc.encrypt(key, plaintext, iv)
from malduck import aplib
# Headerless compressed buffer
aplib(b'T\x00he quick\xecb\x0erown\xcef\xaex\x80jumps\xed\xe4veur`t?lazy\xead\xfeg\xc0\x00')
from malduck import DWORD
def sdbm_hash(name: bytes) -> int:
hh = 0
for c in name:
# operations on the DWORD type produce a dword, so a result
# is also a DWORD.
hh = DWORD(c) + (hh << 6) + (hh << 16) - hh
return int(hh)
from malduck import Extractor
class Citadel(Extractor):
family = "citadel"
yara_rules = ("citadel",)
overrides = ("zeus",)
@Extractor.string("briankerbs")
def citadel_found(self, p, addr, match):
log.info('[+] `Coded by Brian Krebs` str @ %X' % addr)
return True
@Extractor.string
def cit_login(self, p, addr, match):
log.info('[+] Found login_key xor @ %X' % addr)
hit = p.uint32v(addr + 4)
print(hex(hit))
if p.is_addr(hit):
return {'login_key': p.asciiz(hit)}
hit = p.uint32v(addr + 5)
print(hex(hit))
if p.is_addr(hit):
return {'login_key': p.asciiz(hit)}
from malduck import procmempe
with procmempe.from_file("notepad.exe", image=True) as p:
resource_data = p.pe.resource("NPENCODINGDIALOG")
इसे चलाकर स्थापित करें
pip install malduck
अधिक दस्तावेज़ readthedocs पर पाए जा सकते हैं।
