Tabel van Contents [show]
- Inleiding
- Aanvanklike bevindinge.
- Infeksieketting.
- Tegniese Analise.
- Aanvanklike infeksie – Kwaadwillige dokument.
- Tweede fase – Kwaadwillige PyInstaller-uitvoerbare lêer.
- Finale fase – Kwaadwillige Python-skripte.
- Discord Bot-kenmerke.
- Ransomware-kenmerke.
- Gevolgtrekking
- Seqrite Beskerming.
- IOCs
- MITRE ATT&CK.
- Skrywers
Inleiding
Seqrite Labs APT-Team het onlangs verskeie veldtogte ontdek wat vals posbeskrywings behels wat verband hou met vereistes by Food Corporations of India (FCI). Hierdie is gemik op individue wat na verskeie tegniese poste by FCI mik met 'n variant van ransomware bekend as Xelera. In hierdie geval, die malware word in Python geskryf en verpak met behulp van PyInstaller wat op die teikenmasjien uitvoer.
In hierdie blog sal ons die tegniese besonderhede van die veldtog wat ons tydens ons telemetrie-analise teëgekom het, ondersoek. Ons sal die verskillende stadiums van hierdie veldtog ondersoek, beginnende met die aanvanklike kwaadwillige dokumentvrag en die inhoud van die dokument, dan voortgaan om die kwaadwillige PyInstaller en onttrekte kwaadwillige python-skripte te onttrek en te analiseer en laastens die kwaadwillige ransomware-lêer te hersien.
Aanvanklike bevindings
Onlangs, op 18 Januarie 2025, het ons span 'n kwaadwillige dokument ontdek wat op VirusTotal verskyn het , afhangende van die soekreëls wat ons gebruik om dokumentlêers te soek wat kwaadwillige ingebedde inhoud in OLE Streams bevat.
Na aanvanklike analise het ons gevind dat die kwaadwillige lokmiddel bekend as FCEI-job-notification.doc gemik was op werksaansoekers wat aansoek doen vir verskeie rolle soos ingenieurs en ander tegniese en semi-tegniese rolle. Nadat ons die kwaadwillige vrag uit een van die OLE-strome onttrek het, het ons gevind dat die vrag 'n PyInstaller-gebaseerde uitvoerbare lêer was, bekend as jobnotification2025.exe. Dit bevat kwaadwillige python-skripte wat ransomware-uitvoering en ander onbedoelde take op die teikenmasjien uitvoer met behulp van 'n Discord-bot wat deur die ransomware-outeur beheer word.
PyInstaller staan as een van die gunsteling gereedskap van kwaadwillige sagteware-ontwikkelaars wat Python-skripte as een van hul keuses verkies. Voorheen het HolyCrypt en ander bekende kluise en diewers PyInstaller misbruik om wanware in die natuur te ontplooi.
Infeksie ketting

Tegniese Analise
Ons sal die analise in drie verskillende dele opdeel.
Aanvanklike infeksie – Kwaadwillige dokument.
Die aanvanklike infeksie word veroorsaak deur 'n kwaadwillige Word-dokument wat versprei word deur middel van spiesvissing-aanhegsels. Voordat ons in die kwaadwillige OLE-strome van die dokument duik, kom ons kyk na die lokmiddel.

Die dokument bevat drie bladsye inligting wat begin met die lokmiddel wat die aantal vakatures by die Food Corporation of India en die tipe werksmag wat benodig word, noem. Die tweede bladsy noem die ouderdomsgrens en geskiktheidskriteria vir verskillende poste, en dui die minimum en maksimum ouderdom wat vir elke kategorie vereis word, uiteen.

Daarbenewens bied die bladsy 'n oorsig van die opvoedkundige kwalifikasies wat nodig is vir verskeie poste, soos 'n baccalaureusgraad of ander graad, afhangende van die posrol. Nou gee die derde bladsy besonderhede oor die werwingsproses, insluitend die eksamenpatroon.

Dit noem dat die eksamen uit 100 vrae bestaan wat onderwerpe soos Numeriese Vermoë, Engelse Taal, Logiese Redenering en Algemene Studies dek. Kandidate kry 60 minute om die toets te voltooi, met 'n straf van een-vierde van 'n punt vir elke verkeerde antwoord, terwyl onbeantwoorde vrae nie negatiewe punte kry nie. Kyk na die kwaadwillige strome van hierdie dokument en onttrek dit vinnig vir verdere analise.

Deur die kwaadwillige dokument te analiseer, het ons gevind dat die dokument 'n ingebedde OLE-objek (Ole10Native) bevat. Hierdie objek is binne die ObjectPool-struktuur geleë en is 31.5 MB groot.
![]()
Nadat die ingebedde inhoud uit die kwaadwillige OLE-stroom onttrek is en die lêer in 'n ontledingsinstrument gelaai is, het ons uitgevind dat dit 'n PE64-binêre lêer is, wat basies 'n saamgeperste PyInstaller-binêre lêer is.

Tweede Fase – Kwaadwillige PyInstaller Uitvoerbare Programmatuur
Nadat ons die inhoud van die uitvoerbare lêer met behulp van pyinstxtractor onttrek het , het ons interessante lêers en gidse gevind wat python-saamgestelde lêers bevat, soos mainscript.pyc, 'n saamgestelde Python-skrip wat as die hooflogika van die wanware-lêer dien.

Ondersteunende gidse en biblioteke, soos psutil, aiohttp en asyncio, was ook teenwoordig, wat dui op vermoëns vir stelselmonitering en asynchrone netwerkbedrywighede, wat algemeen in wanware gebruik word vir data-insameling of bevel-en-beheer (C2) kommunikasie.

Ons het ook 'n paar interessante lêers gevind wat Python-saamgestelde lêers bevat, soos notoken887 en command en vele meer, wat vir ons artefakte gee dat die veldtog nie net verband hou met die ontplooiing van XELERA-ransomware nie, maar baie meer. In die volgende afdeling sal ons die Python-gedekompileerde lêers analiseer.

Finale Fase – Kwaadwillige Python-skripte
Nadat ons die main.pyc-lêer gedekompileer het, het ons gevind dat dit baie interessante biblioteke invoer, soos notoken887, start, command en nog baie meer. En na noukeurige analise het ons ook gevind dat die bedreigingsakteur basies Discord as 'n Bevel-en-Beheer-funksie gebruik om afstandbevele uit te voer en uiteindelik die XELERA-ransomware te ontplooi.

Discord Bot-kenmerke
Kom ons kyk nou na 'n paar van die interessante opdragte wat die Discord-bot op die teikenmasjien kan uitvoer en die werking van die ransomware.

Sodra 'n slagoffer geraak word nadat die kwaadwillige dokument uitgevoer is, gebruik die bedreigingsakteur die Discord Bot om sekere bose take uit te voer, soos om blaaier-gebaseerde geloofsbriewe te steel, die teiken met sekere neerhalende boodskappe te strooi en nog baie meer.
Voorreg-eskalasie en stelselbeheer
- Administrateur UitvoeringsversoekDie bot bevat 'n opdrag (admin) wat kontroleer of die bot se proses as admin loop met behulp van die IsUserAdmin API en indien nie, gebruik dit die ShellExecuteW API met runas-vorm wat die operasie uitvoer.

- Sluit- en afskakelkontrolesDie bot kan die stelsel sluit (🔒 lockpc) of afskakel/herbegin forseer (📤 shutdown, 🔄 restartpc), wat ongerief by die teikenmasjien veroorsaak.


Blaaierbewyse en lêerdiefstal
- Lêerdiefstal: Die Discord-bot kan lêers van die teikenmasjien verwyder.

- Blaaierbewyse steel: Die Discord-bot kan sensitiewe inligting soos koekies, gebruikersname en wagwoorde van verskeie blaaiers soos Google Chrome, Microsoft Edge en nog baie meer van die teikenmasjien steel.


Slegte aktiwiteite: Ontwrigting en strooipos van aanstootlike inhoud.
- Visuele Ontwrigting: Die aanvaller skep 'n visuele ontwrigting deur verwringende effekte te veroorsaak, agtergrond te verander en ander visuele ontwrigtings wat probleme by die teikenmasjien veroorsaak.



- Sensoriese Ontwrigting: Die aanvaller skep sensoriese ontwrigting deur muisinsette te blokkeer en klank op die teikenmasjien te speel, wat probleme op die teikenmasjien veroorsaak.

Lys van opdragte
| Command | Doel | |
| 1 | 🔧 admin | Vra om die wanware as administrateur te laat loop |
| 2 | 🚫 nomouse (begin/stop) | Weier die gebruiker muis- en sleutelbordregte |
| 3 | kontrolelêer | Soek vir 'n spesifieke lêer en verwyder dit opsioneel |
| 4 | verdomp | Aktiveer 'n Blou Skerm van die Dood (BSOD) |
| 5 | 🌊 vervaag | Pas 'n ekstreme GDI-vervaagdeffek toe |
| 6 | 🔥 smelt | Skep 'n skermsmelt-effek |
| 7 | 🌎 skermswaai | Veeg en buig die hele skerm |
| 8 | ⚡ beslaglegging | Flits die skerm om aanvalle te veroorsaak |
| 9 | 🌪 tornado | Skep 'n skerm-tornado-effek |
| 10 | 👴 witmaak | Maak die skerm wit |
| 11 | 🚫 blokskerm | Vertoon 'n Hitler-beeld as 'n skermblok |
| 12 | 🥏 ultraklankaanvalle | Meer intense weergawe van beslaglegging, met begin/stop-argumente |
| 13 | 📂 boom | Kry die lêerboom van die slagoffer se stelsel |
| 14 | 📤 deel | Laai 'n lêer op en voer dit uit op die slagoffer se rekenaar |
| 15 | 🔗 skakeldeling | Laai 'n URL-gebaseerde lêer af en voer dit op die slagoffer se rekenaar uit |
| 16 | 📊 lp | Lys aktiewe prosesse |
| 17 | 🔨 kp | Maak 'n spesifieke proses dood |
| 18 | 📂 krylêers | Steel lêers van die slagoffer se stelsel |
| 19 | 📁 cd | Navigeer deur die slagoffer se lêerstelsel |
| 20 | 📸 ss | Maak 'n kiekie |
| 21 | 📷 webkamera-foto | Neem 'n beeld van die slagoffer se webkamera |
| 22 | 📥 boewelêers | Hernoem en beskadig alle lêers in Downloads/Dokumente permanent |
| 23 | 🌍 oop url | Maak 'n webwerf oop in die slagoffer se blaaier |
| 24 | 🔎 soek | Doen 'n websoektog |
| 25 | 🔐 krypwds | Onttrek gestoorde wagwoorde vanaf Microsoft Edge |
| 26 | 📜 kryblaaiergeskiedenis | Haal blaaiergeskiedenis van die slagoffer se stelsel af |
| 27 | 😂 kkk | Wys KKK-verwante memes op die slagoffer se skerm |
| 28 | 🔔 spamkennisgewing | Stuur herhaalde strooiposkennisgewings |
| 29 | 🔊 basversterking | Forseer die volume tot 100% |
| 30 | 😈 fokblaaier | Korrupte Chrome indien op die slagoffer se rekenaar geïnstalleer |
| 31 | 🛑 swastika | Stel 'n draaiende swastika as agtergrond (begin/stop) |
| 32 | 🤯 nukepc | Voer 'n ernstige aanval op die slagoffer se rekenaar uit |
| 33 | 🔄 herbegin rekenaar | Herbegin die slagoffer se rekenaar |
| 34 | 📤 afsluiting | Skakel die slagoffer se rekenaar af |
| 35 | ❌ toemaak | Maak die boewe-toepassing toe |
| 36 | 🧹 skoon | Verwyder alle Discord-kanale behalwe die huidige een |
| 37 | ❌ foutespamz | Spam snaakse foutboodskappe |
| 38 | 🌐 ip | Kry die slagoffer se IP-adres terug |
| 39 | 🎵 speelklank | Speel agtergrondklank vanaf 'n opgelaaide lêer |
| 40 | 💻 stelselinligting | Onttrek stelselinligting |
| 41 | 🖼 agtergrond | Verander die slagoffer se lessenaar agtergrond |
| 42 | ℹ hulp | Wys die hulpboodskap met alle opdragte |
| 43 | 🔄 herlaai | Herbegin die boewe-bot |
| 44 | 🔒 sluitrekenaar | Sluit die slagoffer se rekenaar (forseer aanmeldskerm) |
Ransomware-kenmerke.
Saam met die kwaadwillige Discord-gebaseerde diefstal, ontplooi die aanvaller ook 'n ransomware bekend as XELERA . As ons na die waarskuwingsfunksie kyk, kan ons sien dat daar altesaam 6 belangrike funksies vir verskeie ransomware-verwante doeleindes is.

Die losprysware-boodskap kan gesien word, met 'n Litecoin-adres vir die indien van die losprysbedrag. Kom ons kyk na die verskeie ander funksies.

As ons na die eerste funksie kyk, herhaal die kill_explorer-funksie oor lopende prosesse in 'n deurlopende lus en kontroleer vir die teenwoordigheid van memz.exe. Indien memz.exe nie gevind word nie , soek dit dan na explorer.exe en probeer dit beëindig . Hierdie siklus herhaal onbepaald en verseker dat Windows Explorer nie loop tensy memz.exe aktief is nie.

Aan die ander kant laai die create_memz_in_startup-lêer, waarna in hierdie ransomware verwys word, basies 'n MBR-korrupsie-gebaseerde uitvoerbare lêer af.

Nou, voordat ons na die volgende funksies kyk, laat ons kyk na die werking van die MBR-korrupsie-instrument wat hier as MEMZ.exe afgelaai word.

Die MEMZ.exe- wanware begin sy uitvoering deur opdragreëlargumente te ontleed om die werking daarvan te bepaal. Indien die /watchdog-argument teenwoordig is, aktiveer dit 'n "waghond"-modus wat 'n moniteringsdraad skep en 'n versteekte venster registreer. Dit verseker dat die wanware aanhou loop en beëindiging weerstaan deur 'n Windows-boodskaplus te gebruik.

Nou, in hierdie deel van die MBR, behels dit die oorskryf van die Meesteropstartrekord (MBR) van die skyf, wat die stelsel onopstartbaar maak. Die wanware maak \\.\PhysicalDrive0 oop om rou toegang tot die primêre skyf te verkry en ken 'n 64 KB-buffer toe om die kwaadwillige vrag voor te berei.

Volgende skep die MBR-beskadiger 'n tekslêer met die naam note.txt wat 'n spottende boodskap bevat. Hierdie lêer word gevul met teks wat die gebruiker inlig dat hul stelsel deur die MEMZ-Trojan besmet is. Die boodskap waarsku verder teen pogings om die wanware te stop, en beweer dat dit tot die onmiddellike vernietiging van die stelsel sal lei.
Nou, sodra ons klaar is met die begrip van die MBR Corruption-wanware, sal ons voortgaan met die ondersoek na die ander stel funksies.
As ons na die tweede funksie kyk, verander die change_wallpaper basies die lessenaar se agtergrond na 'n beeld van 'n slot.

Die derde en vierde funksies van hierdie losprysware is basies om al die venstertitels te strooi met 'n boodskap dat die slagoffer se rekenaar geraak is, alle moontlike lêers en gidse van die lessenaar te verwyder en dieselfde gids met losprysbeelde te oorstroom.

Die vyfde funksie fokus op die uitvoer van die MBR-korrupsie-gebaseerde wanware deur eers die Windows-opstartmap te lys en indien die kwaadwillige sagteware gevind word, gaan dit voort en voer dit uit, terwyl die sesde funksie 'n agtergrond aflaai en die huidige lessenaar na die een wat afgelaai is, verander. Dan gaan dit voort en gebruik dit Teks-na-spraak [TTS] in 'n oneindige lus om die boodskap in klank in 'n oneindige lus te laat loop.


Sodra die ransomware uitgevoer is, word hierdie boodskap op die skerm vertoon. As ons vervolgens na die adres van die genoemde kriptogeldeenheid-beursie kyk, kan ons sien dat daar altesaam 16 transaksies met dieselfde beursie-adres was.

Gevolgtrekking
XELERA Ransomware is geïdentifiseer, 'n Python-gebaseerde wanware, en is tans 'n baie nuwe operasie wat data- en geloofsbriewediefstal behels, tesame met die ontplooiing van 'n ransomware, wat tans geen vorm van enkripsie met kriptografie uitvoer nie. Dit versprei aktief en tans is die bogenoemde modus operandi die primêre een, wat gebruik word om die ransomware op verskeie teikenmasjiene te plaas.
Seqrite Beskerming
- OLE.Losprys.49280.GC
- Losprys.Xelera
IOCs
| Filename | SHA-256 |
| FCEI-werkskennisgewing.doc | ff06ce3fd6fe994aeaa0edc5162989d08f34440e9cacbc9e49e5db8ef98a74e3 |
| mainscript.exe (jobnotification2025.exe) | 519401c998fe5d6eb143415f7c17ad5f8e5ef5ebae57ac91e9fa89a0bfcf0c7f |
| URL |
| hxxps[:]//github[.]com/Sam-cpu999/stuff/raw/main/MEMZ[.]exe |
| hxxps[:]//th[.]bing[.]com/th/id/OIP.nQu9CQ9gM84Pblh6AgykIgHaHa?rs=1&pid=ImgDetMain |
| hxxps[:]//pghnetworks[.]com/wp-content/uploads/2018/06/Blog-pic[.]jpg |
| hxxps[:]//thugging[.]org/static/kkk[.]png |
| hxxps[:]//thugging[.]org/static/3[.]mp4 |
| hxxps[.]//chochox[.]com/wp-content/uploads/2016/10/Geto 29[.]jpg |
LTC Address: LaHL1jGMk2VUgn6c4QtFVLi7BjycWrQorB
MITER ATT&CK
| taktiek | Tegniek-ID | Naam |
| Aanvanklike toegang | T1566.001 | Phishing: Spiesphishing-aanhegsel.
|
| Uitvoering | T1204.002
T1059.006 |
Gebruikersuitvoering: Kwaadwillige lêer.
Python. |
| Volharding | T1547.001 | Register-uitvoersleutels / opstartmap. |
| Verdedigingsontduiking | T1562.001 | Verswak verdediging: Deaktiveer of wysig gereedskap. |
| Toegang tot geloofsbriewe | T1555.003 | Geloofsbriewe vanaf webblaaier. |
| Discovery | T1033
T1217
T1010
T1083
T1016 |
Stelseleienaar/Gebruikersontdekking.
Blaaierinligting-ontdekking.
Toepassingsvenster-ontdekking.
Lêer- en gidsontdekking.
Stelselnetwerkkonfigurasie-ontdekking. |
| versameling | T1560.002
T1056.001 T1113
|
Argief via Biblioteek.
Sleutelregistrasie. Skermopname.
|
| Bevel en beheer | T1102.002 | Tweerigtingkommunikasie. |
| impak | T1531
T1486 T1657 T1491.001 T1561.001 T1489 T1529
|
Verwydering van rekeningtoegang.
Data geïnkripteer vir impak. Finansiële diefstal. Interne Ontsiering. Vee van skyfinhoud uit. Diensstop. Stelselafskakeling / Herbegin.
|
Skrywers
- Subhajeet Singha
- Kartikkumar Ishvarbhai Jivani




