De Python-Paket threadflussend, entdeckt op PyPI, gouf identifizéiert als béiswëlleg, déi eng konventionell Infostealer-Malware enthält. Seng definéierend Charakteristik ass awer d'Benotzung vun fortgeschrattene Code-Verschleierungstechniken, déi seng Notzlaascht verstoppen, wat d'Analyse besonnesch usprochsvoll mécht. Dës Malware benotzt dräi Schichten vun der Verschleierung iterativ iwwer seng Attackkette, wat bedeitend Hindernisser fir d'manuell Dekonstruktioun erstellt.
Eis Malware Early Warning Team huet de Pak dem PyPI Sécherheetsteam gemellt, deen en séier ewechgeholl huet. An dësem Artikel erkläre mir d'Etappen vun threadflussend's Attack an d'Methoden, déi e benotzt fir säin Zweck ze verstoppen, mat engem Fokus op wéi Infostealer-Malware a Code-Verschleierung zesumme funktionéieren.
Spicherblat: Infostealer Malware a Codeverdunkelung
Wat ass Infostealer Malware?
Infostealer-Malware verhält sech wéi en Déif an Ärer digitaler Welt. Et klaut sech roueg sensibel Informatiounen, wéi Är Passwierder, Kreditkartennummeren oder perséinlech Donnéeën, ouni datt Dir et mierkt. Dës Programmer notéieren dat, wat Dir aginn hutt (Keylogging), kapéieren Äre Browser oder scannen Dateien op Ärem Apparat fir wäertvoll Donnéeën ze sammelen. Dat Erschreckendst? Si sinn exzellent dran, ënner dem Radar ze bleiwen.
Wat ass Code-Verblüffung?
Code Obfuscation ass am Fong d'Konscht, Saachen am A ze verstoppen, dacks vun Hacker benotzt fir hire béiswëllege Code méi schwéier ze erkennen oder ze verstoen. Stellt Iech vir, datt een Code op eng Manéier schreift, déi bewosst verwirrend ass, Deeler dovun verschlësselt oder seng Ausgesinn duerchernee bréngt, fir Antivirus-Tools oder Fuerscher aus dem Spill ze bréngen. Et ass eng clever awer frustréierend Taktik, déi Malware hëlleft, méi laang aktiv ze bleiwen an net erkannt ze ginn.
Verschleierungsschichten vun der ThreadFluent Infostealer Malware
1. Dräifach Verschlësselung
Den Obfuskatiounsprozess fänkt mat enger staark verschlësselter Notzlaascht un, déi an der ... integréiert ass. fluent.py Datei. Den initialen Encodéierungs- an Entschlësselungsprozess kann wéi follegt zesummegefaasst ginn:
encoded_data = base64_module.b64decode("... BASE-6 with encrypted payload, IV and RSA-encrypted keys…”); # … Sequential decryption: ChaCha20, Blowfish and AES … encrypted_payload = AES_Cipher.new(aes_key, AES_Cipher.MODE_CBC, iv=aes_iv).decrypt(encrypted_payload[16:]) final_payload = unpad_function(encrypted_payload, AES_Cipher.block_size) exec( zlib_module.decompress(bz2_module.decompress(final_payload)) ) Dëse Verdunkelungsprozess ëmfaasst:
- KompressorBenotzung vu gzip a bzip.
- Symmetresch VerschlësselungVerkettet Verschlësselung mat ChaCha20, Blowfish an AES.
- Asymmetresch VerschlësselungRSA gëtt benotzt fir déi symmetresch Schlësselen ze verschlësselen.
D'Resultat gëtt a Base64 kodéiert an agefouert als kodéiert_DonnéeënAll Iteratioun baut op der viregter op a schaaft eng verschachtelt Verschlësselungsstruktur, déi et aussergewéinlech schwéier mécht, déi tatsächlech Notzlaascht ouni Reverse Engineering ze fannen.
2. Gzip Dekompressioun
A ville Zwëschenschrëtt benotzt d'Malware eng einfach awer effektiv Obfuskatiounsmethod: Gzip-Kompressioun a Kombinatioun mat Base64-Kodéierung.
import base64, zlib; eval(zlib.decompress(base64.b64decode(<STR>).decode('utf-8')) Dës Technik garantéiert, datt déi verschleiert Notzlaascht während de ganze Etappen verstoppt bleift.
3. Code-Verknëppung an dynamesch Kompilatioun
Déi lescht Schicht besteet doran, déi verschleiert Notzlaascht iwwer verschidde Variabelen opzedeelen, déi während der Ausféierung dynamesch zesummegefaasst an decodéiert ginn:
import base64, zlib FEQXCBDOZKHVIhT = '...' # ....(111 other variables with base-64 encoded values) ... zZytWuvuEdBXSrO = eval(<FEQXCBDOZKHVIhT' encoded with '\x>) + eval(<next variable, encoded>) + eval( ' zlib.decompress(base64.b64decode(<VAR>)).decode('utf-8') ') + ... eval(compile(base64.b64decode(eval(zZytWuvuEdBXSrO)).decode('utf-8'), ‘<app>', 'exec')) Dës Etapp ass besonnesch ustrengend fir manuell Reverse-Engineering, well all Variabel decodéiert a rekombinéiert muss ginn, fir déi nächst Notzlaascht ze weisen.
Duerch d'Kombinatioun vun dësen Obfuskatiounstechniken, infostealer malware in threadflussend entdeckung entgeet, a weist déi entscheedend Roll vun Code Obfuscatioun bei modernen Cyberattacken.
Déi méistufeg Attackkette vun ThreadFluent
d' threadflussend infostealer malware besteet aus véier verschiddenen Etappen, déi all zousätzlech Schichten aféieren, Code ObfuscatiounDës Etappen déngen net nëmmen dozou, d'Notzlaascht ze liwweren, mä se och virun Detektioun an Analyse ze schützen.

Etapp 0: Ufankscodeausféierung
Den Entréepunkt ass den __init__.py Datei, déi d'Ausféierung vun der verschleierter Notzlaascht initiéiert an fluent.pyDës Datei benotzt méischichteg Obfuskatioun (wéi an de Schrëtt 1-3 beschriwwen) fir den Dropper vun der Stage 1 ze produzéieren:
import os,threading def main(): if os.name == 'nt': from . import fluent fluent.main() thread = threading.Thread(target=main , daemon=True) thread.start() Etapp 1: Éischten Dropper
Den éischten Dropper, nodeems en deobfuskéiert ass, luet zousätzleche béiswëllege Code erof an integréiert en, setzt.py, aus engem GitHub-Repository Rout-haareg-Schanken-1337/Reputatiounen (Warnung: potenziell béiswëlleg Code hei).
Den Dropper integréiert sech setzt.py an déi lokal Installatioun vun der populärer Ufro Bibliothéik, seng Ännerungen __init__.py Datei fir d'Deobfuskatioun auszeféieren an déi nächst Etapp auszeféieren. Dës Deobfuskatioun besteet doran, vill Uwendungen vun den Obfuskatiounsschichten 1 ... 3 ëmzedréinen.
Etapp 2: Zweet Dropper
Den zweeten Dropper, nodeems en no dem selwechte Prozess deobfuskéiert ass, luet nach eng aner Notzlaascht erof, ssl.py aus dem GitHub Repository, ëmbenannt et a udp.py, a generéiert eng Spärdatei fir sécherzestellen, datt d'Malware net ëmmer erëm nei installéiert gëtt. Dann gëtt se ausgeféiert fir se ze deobfuscéieren, wat zu der Ausféierung vun der leschter Infostealer-Payload féiert.
Etapp 3: Schlussendlech Infostealer
Déi lescht Etapp ass en voll funktionellen Infostealer, deen fortgeschratt Ausweichtechniken benotzt:
- Anti-Analyse-Funktiounen:
- Erkennt Antimalware-Tools a gëtt ofgebrach, wann Prozesser, IP-Adressen, Hostnimm oder virtuell Ëmfeld op der schwaarzer Lëscht fonnt ginn.
- Daten Exfiltratioun:
- Erfaasst komplett Informatiounen. Rangéiert vun IP, MAC Adress, VPN Daten, Browser Cookien/Verlaf, Kreditkartendaten a Krypto Portemonnaie Umeldungsinformatiounen ënner anerem, inklusiv engem Screenshot.
- Schéckt geklaut Donnéeën (verschlësselt) iwwer en Telegram Kanal, andeems Dir déi hei gewisen Schabloun benotzt:

Deobfuskatiounsstrategie
Fir ähnlech Paketen z'analyséieren, mussen d'Fuerscher systematesch hir Verschleierungsschichten ëmdréinen:
- Schrëtt fir d'Emulatioun vun der Obfuskatioun: Schreift Skripter fir d'Transformatiounen (z.B. Entschlësselung, Dekompressioun) ze simuléieren, ouni d'Payload auszeféieren.
- Réckverschlësselungsschichten: Extrahéiert an entschlësselt d'Notzlaascht mat Hëllef vun den agebette Schlësselen an Algorithmen.
- Iterativ Analyse: Veraarbecht all Zwëschenstadium iterativ fir déi lescht Notzlaascht ze rekonstruéieren.
Automatiséiert Tools an Sandbox-Ëmfeld si wesentlech fir dës Analyse ze vereinfachen.
Wëllt Dir méi wëssen, wéi Dir a Echtzäit virun de Gefore bleiwe kënnt?
Luet eise Whitepaper "Early Warning: Echtzäit-Bedrohungsdetektioun a Prioritiséierung" erof a fannt eraus, wéi Dir Är Software-Liwwerketten sécherstelle kënnt.
Den Acteur vun der Bedrohung
Anscheinend gouf de Pak vun zwéi PyPI-Konten publizéiert, ABIRHOSSAIN10 an anomilano785, aktuell ewechgeholl.
Et gëtt e (aktuell aktive) GitHub-Kont mam Numm ABIRHOSSAIN10, wat mat der Kampagne a Verbindung kéint stoen. Den Rout-haareg-Schanken-1337 De GitHub-Benotzer, deem de Repository gehéiert, deen fir den Download vun den Payloads vun der 2. an 3. Phase benotzt gëtt, gëtt och analyséiert.
Och wann d'Zuschreiwung ëmmer komplizéiert ass an d'Memberschaft an engem rouden Team eng Méiglechkeet ass, hiweisen d'Aart a Quantitéit vun den Informatiounen, déi erausgeholl goufen, op e béiswëllegen Akteur.
Conclusioun: D'Roll vun der Code-Verschleierung an der Evolutioun vu Malware
d' threadflussend Dëse Pak ass e Beispill vun der moderner Malware-Verschleierung a senger méistufeger Liwwerung. Zesumme mat den ugewannten Ausweichungstechniken weist dëse Pak e kloere Versuch, der Detektioun an der Analyse ze entgoen.
Dës Analyse ënnersträicht d'Wichtegkeet vu gemeinsamen Efforten an automatiséierten Tools fir sou Bedrohungen ze bekämpfen. Duerch d'Analyse an d'Verständnis vun dëse Methoden kënne Sécherheetsexperten an Zukunft besser Verteidegung géint ähnlech Malware entwéckelen.
Wéi de MEW-System vun Xygeni verhënnert huet, datt de béiswëllege Threadfluent-Package an d'Produktioun kënnt
Xygeni's Malware Fréiwarnung (MEW) System war instrumental fir ze stoppen threadflussend Python-Paket, eng béiswëlleg Ofhängegkeet mat fortgeschrattene code obfuscation an eng méistufeg infostealer malware, ier et d'Produktiounsëmfeld a Gefor brénge kéint. Hei ass wéi:
- Detektioun duerch statesch Analyse
MEW gesi threadflussendverstoppte Code vum, a fënnt verdächteg Zeeche wéi geschichtete Verschlësselung an ongewéinlech Ofhängegkeetsaktivitéit. - Bewäertung vun der Erreechbarkeet bei der Lafzäit
De System huet festgestallt, datt de Code vum Pak während der Benotzung ausgeféiert konnt ginn, wouduerch en als eescht Bedrohung markéiert gouf, ouni en tatsächlech auszeféieren. - CI/CD Pipeline Schutz
MEW blockéiert threadflussend a Echtzäit, huet verhënnert datt et a Builds integréiert gouf, an huet verhënnert datt et an d'Produktioun kënnt. Et huet den Entwéckler handlungsfäeg Alarmer geschéckt, wat wäertvoll Zäit gespuert huet. - Bedrohung Intelligenz Deele
Xygeni huet de Pak séier un PyPI gemellt a seng Erkenntnisser mat sengem globale Sécherheetsnetz gedeelt, sou datt seng weider Verbreedung verhënnert gouf.
Duerch d'Fänken threadflussend Ufanks huet Xygeni säi MEW-System séchergestallt, datt de béiswëllege Code keng Software-Versuergungsketten oder ... beschiedegt huet. CI/CD Workflows.
Schützen Är CI/CD Pipelines gratis
Verhënnert Gefore wéi threadflussend mam Xygeni sengem Malware Early Warning System. Start Är gratis Test haut a sécher Är Software-Liwwerketten.
Louis Rodriguez
De Luis Rodriguez ass e Physikercist + Mathematiker an CISSP. Aktuell Matgrënner a CTO bei Xygeni Security. Hie huet iwwer 20 Joer Erfahrung an der Softwaresécherheet a war u Projeten ewéi SAST an SCAHie konzentréiert sech de Moment op software supply chain security.
Daniel Martin
Den Daniel Martín ass e Cybersécherheetsexpert a Member vum Xygeni-Fuerschungssécherheetsteam, spezialiséiert op ... SDLC Sécherheets- a Applikatiounsschwachstellereminderung.






