Ez az mbhbank.NU hamis mbhbank.hu oldalba ágyazott script amit a bűnelkövetők használtak és mivel van ahol ez "betárolódott" mi meg ráleltünk, hát bizony jó lenne ha most kiderülne, mit TUD a magyar virtus!
De mire is gondolunk?
A megadott JavaScript fájlok valóban erősen obfuszkált (eltorzított) Cloudflare challenge scriptek, amelyeket bűnelkövetők egy hamis MBH Bank oldalon használtak.
Íme a NAGY KÉRDÉS: mire szolgáltak ezek a scriptek?
https://web.archive.org/web/*/http://mbhbank.nu/*
az 1-es file linkje .JS: https://web.archive.org/web/20250407075052/https://mbhbank.nu/cdn-cgi/c…
a 2.es file linkje .JS: https://web.archive.org/web/20250401124609/https://mbhbank.nu/cdn-cgi/c…
..MERT A WEBARCHIVE INTERNET NEM FELEJT!
Köszönjük előre is: honpolgár társaink és a bűnüldözés is biztosan hálás lesz érte!
Szerintünk, lesz itt olyan aki a dicsőségért és akár a szakmai figyelemért IS képes lesz élenjárni szkami tudásával!
Talán ez a helyzet lehet jó példája annak, hogy a magyar ember OKOS és KITARTÓ!
(igen, lesz aki anyázik, leszól, beszól, meg a jó ég tudja mi... de hát ez van, ez a HUP. Aki tud segíteni, az segít, aki csak trollkodni akar, az úgyis megteszi.)
- 374 megtekintés
Hozzászólások
Bár nem vagyok NAGYPÁLYÁS, de szerintem itt csupán arról van szó, hogy az oldalt Cloudflare Proxy mögé helyezték, és nem engedélyezték a robotok számára az oldal elérését. ĺgy amikor a Wayback Machine megpróbálta "betárolni" az oldal tartalmát, a Cloudflare detektálta, mint robot és kapott egy challenge-et helyette, ezt pedig be is tárolta.
- A hozzászóláshoz be kell jelentkezni
Nem vagyok nagypályás. Fejlesztő meg végképp nem.
Megkérdeztem neked ChatGPT barátunkat az 1. linkre vonatkozóan.
A válasza:
Köszönöm, sikerült beolvasni a fájl tartalmát. A kód alapján ez egy Cloudflare JavaScript Challenge oldal egyik komponense. Néhány megfigyelés:
🔍 Jellemzők a fájl elején:
-
Az elején szerepel egy úgynevezett
wombat assign function
, amely egyfajta obfuszkált "sandbox"-ot hoz létre: -
Ezután a fontos globális objektumokat (
window
,document
,location
, stb.) ezekkel a hivatkozásokkal érik el: -
A
window._cf_chl_opt.CuUS7.translations
blokkban lokalizált üzenetek szerepelnek URL-kódolt formátumban, ezeket a kód a challenge során jeleníti meg.
Mit csinál ez a fájl?
Ez nem kártékony, hanem a Cloudflare ember-robot ellenőrzés (challenge) része. Funkciói:
-
Ellenőrzi a környezetet (pl. JS, cookies, timestamp).
-
Tokenekkel dolgozik (
ray
,challenge
, stb.). -
Megjelenít egy „Just a moment…” típusú oldalt.
-
Végrehajt egy JavaScript kihívást (pl. hash, kódgenerálás, időzítés).
-
A sikeres ellenőrzés után redirectál vagy beállít egy cookie-t (pl.
__cf_bm
).
- A hozzászóláshoz be kell jelentkezni
Köszi Balázs az elemzés szándékát...
Bemutatjuk azt, amit a fileok tudnak, a tárolt változatok elemzése után:
A kód egy gondosan elkészített hamisítvány, amely a Cloudflare nevével és megjelenésével él vissza a felhasználók megtévesztése és kirablása céljából!
Viselkedéselemzés: Felhasználói interakciók monitorozása (Keylogging)
Az elvégzett deobfuszkációs elemzés feltárta, hogy a szkriptek eseményfigyelőket (event listeners) regisztrálnak a mousemove
, pointermove
, keydown
, click
és wheel
eseményekre.
Míg a legitim kihívások valóban figyelik az egérmozgást a viselkedéselemzés céljából , a gyanús szkriptek implementációja ennél sokkal tovább megy.
A keydown
eseményfigyelő különösen aggasztó, mivel minden egyes leütött billentyűt képes rögzíteni, ami egy teljes értékű billentyűzetfigyelő (keylogger) működésének felel meg.
Ez az elsődleges és legfontosabb bizonyíték, amely jelentősen eltér a legitim viselkedéstől.
Egy valódi biztonsági kihívás az emberi interakció tényét és mintázatát ellenőrzi, nem pedig annak tartalmát (azaz a konkrét leütött karaktereket).
A billentyűleütések rögzítése egyértelműen hitelesítő adatok és egyéb bizalmas információk ellopására utal.
Ez a funkcionalitás közvetlenül megegyezik az adathalász kampányokban használt kártékony szkriptek képességeivel!
Hálózati kommunikáció és adatkiszivárogtatás
A szkriptek olyan függvényeket tartalmaznak (eM[gF(713)]
a v1-js
ben, eM[gF(941)]
a v2-js
-ben), amelyeket XHR (XMLHttpRequest) kérések összeállítására és küldésére terveztek. Bár az elsődleges kérés URL-címe dinamikusan, a legitimnek tűnő /cdn-cgi/challenge-platform/
útvonal felhasználásával épül fel, az elemzés 1 kimutatta, hogy a tényleges adatcsomagot egy másik, támadó által felügyelt szerverre küldik.
A továbbított adatcsomag nem csupán egy Proof-of-Work kihívás eredményét tartalmazza. Ehelyett egy tömörített és kódolt JSON objektumról van szó, amely magában foglalja az összegyűjtött ujjlenyomat-adatokat, a felhasználói interakciók naplóit (beleértve a leütött billentyűket), és potenciálisan az űrlapmezők tartalmát is. A tömörítési algoritmus egy egyedi LZW-variánsnak tűnik, összhangban a nyilvános visszafejtési elemzésekkel.
Ez a perdöntő bizonyíték.
Egy gazdag adatcsomag (ujjlenyomat + viselkedés + billentyűleütések) kiszivárogtatása egy nem Cloudflare-végpontra egyértelműen megerősíti a szkript kártékony szándékát. A legitim kihívások a hitelesítési adataikat kizárólag a Cloudflare saját infrastruktúrájába küldik pontozás és elemzés céljából.
A támadó kétszintű megtévesztést alkalmaz: először betölt egy szkriptet, amely kinézetre és működésre is egy valódi Cloudflare challenge-re hasonlít.
Másodszor, amíg a felhasználó a "Verifying you are human..." üzenetet látja, a szkript a háttérben csendben becsomagolja a leütött billentyűket, és elküldi azokat a támadó szerverére.
- A hozzászóláshoz be kell jelentkezni
A különbségek egyértelműsítésére az alábbi táblázat vizuálisan szemlélteti a legitim és a gyanús szkriptek közötti alapvető eltéréseket.
Jellemző |
Legitim Cloudflare Challenge |
Gyanús Szkript a betároltak (v1-js., v2-js) |
Elsődleges cél |
Bot-észlelés és a felhasználó hitelesítése.1 |
Adatlopás és hitelesítő adatok rögzítése. |
Adatgyűjtés |
Viselkedési minták (egérmozgás, kattintás), böngésző tulajdonságok, PoW eredmény.9 |
Minden legitim adatpont, PLUSZ teljes billentyűzet-naplózás és űrlapmező-tartalom. |
Hálózati végpontok |
Kizárólag Cloudflare domainek: challenges.cloudflare.com, [ügyfél_domain]/cdn-cgi/challenge-platform/.16 |
Kezdeti betöltés legitimnek tűnő végpontokról, de az adatok kiszivárogtatása egy támadó által irányított, rejtett domainre történik. |
Végrehajtás utáni művelet |
Sikeres ellenőrzés után cf_clearance süti kiállítása a hozzáféréshez.5 |
Adatok kiszivárogtatása, majd a felhasználó átirányítása vagy egy valódi challenge megoldása a háttérben a zökkenőmentes látszatért. |
Funkcionális túlterjeszkedés: A szkriptek billentyűzet-naplózó funkcionalitást tartalmaznak, amely minden felhasználói billentyűleütést rögzít. Ez nem része egyetlen legitim Cloudflare kihívásnak sem.
Illegális adatkiszivárogtatás: A szkripteket arra tervezték, hogy egy érzékeny felhasználói adatokat tartalmazó csomagot (ujjlenyomat, viselkedés és billentyűleütések) küldjenek egy olyan hálózati végpontra, amely nem a Cloudflare tulajdonában vagy üzemeltetésében áll.
Megtévesztő utánzás: A szkriptek szándékosan utánozzák egy valódi Cloudflare kihívás szerkezetét, obfuszkációját és felhasználói felületét a felhasználók és a biztonsági eszközök megtévesztése érdekében.
Akinek észrevétele van, azt előre is köszönettel....
- A hozzászóláshoz be kell jelentkezni
#define if(x) if ((x) && (printf("Debug: %s\n", #x), 1))
#define else } if (0) {
#define return(x) return (printf("Returning: %d\n", x), x)
#define sizeof(x) (sizeof(x) + (rand() % 2))
#define main() main(argc, argv) int argc; char *argv[];
- A hozzászóláshoz be kell jelentkezni
Oké. Láthatóan én tényleg nem vagyok elég NAGYPÁLYÁS ehhez, szóval tudnál segíteni, kérlek?
Kezdeti betöltés legitimnek tűnő végpontokról, de az adatok kiszivárogtatása egy támadó által irányított, rejtett domainre történik.
A fent belinkelt szkript alapján melyik ez a rejtett domain pontosan?
Illetve az eggyel fentebbi hozzászólásból:
Másodszor, amíg a felhasználó a "Verifying you are human..." üzenetet látja, a szkript a háttérben csendben becsomagolja a leütött billentyűket, és elküldi azokat a támadó szerverére.
Egy Cloudflare bot challenge során pontosan milyen érzékeny információt gépelek be? Mit továbbít a támadó szerverére?
- A hozzászóláshoz be kell jelentkezni
félreérted, talált egy adatlopós oldalt (nu!=hu) és meglepődött, hogy adatlopós js van rajta (cloudflare challenge-nek obfuszkálva)
// Happy debugging, suckers
#define true (rand() > 10)
- A hozzászóláshoz be kell jelentkezni
Szerintem nem értettem félre, de gondoltam hátha tanulok is valamit itt a HUP-on (a szórakozás mellett). :)
- A hozzászóláshoz be kell jelentkezni
...hát csak célba értünk. :) Köszi...és akkor a kérdésre ott a pont. Pacsi. :)
- A hozzászóláshoz be kell jelentkezni