Scurgere de date
Cum s-a întâmplat scurgerea de date
De unde provin datele publicate și de ce propriul panou al Exoliner a fost deschis pentru ele.
De unde provin datele
Exportul din panou (28 septembrie 2026)
Tot ce se află pe acest site a fost exportat prin propriul panou de moderare al Exoliner: conturi de utilizator, jurnale de execuție a scripturilor, transcrieri de tichete Discord, înregistrări de moderare și instantaneul statistic al panoului. Exportul a fost realizat prin mai multe extrageri la nivel de staff, din mai multe surse.
Corelat cu o scurgere anterioară (iunie 2025)
Un export mai vechi al bazei de date Exoliner din iunie 2025 a fost îmbinat pentru a completa lacunele lăsate de exportul din panou: mii de e-mailuri de conturi, ID-uri Discord, ID-uri Roblox asociate, indicatori de e-mail verificat și datele exacte de înscriere afișate acum pe pagina conturilor.
De ce a fost posibil
O evaluare independentă de securitate a panoului și a API-ului Exoliner a constatat că orice cont cu rang de staff putea rula operațiuni neauditate, la nivel de platformă, fără limite de export și fără alerte de audit. Datele de mai jos privesc doar panoul și API-ul. Evaluarea menționează că site-ul principal prezintă alte probleme, care nu sunt catalogate aici.
De ce a fost posibil
Evaluarea nu a găsit nicio cale de intrare pentru un outsider. Expunerea pe care o documentează este raza de impact: orice cont cu rang de staff putea rula operațiuni de scriere neauditate asupra configurației la nivel de platformă, inclusiv una care putea strica executorul tuturor utilizatorilor deodată.
Ce a constatat evaluarea
Fiecare constatare este descrisă pe baza evaluării panoului și API-ului Exoliner. Nu acoperă site-ul principal, despre care evaluarea menționează că prezintă alte probleme.
Critic
1Suprascriere globală neauditată a offseturilor
C-1Evaluarea raportează că PUT /v1/staff/offsets a acceptat orice token de staff, fără verificare de owner, și nu a scris nicio intrare de audit. O singură cerere a înlocuit offseturile de care depinde executorul fiecărui utilizator. În testare, totalul offseturilor a scăzut de la 401 la 1 printr-un singur apel, fără previzualizare, confirmare sau aprobare.
Ridicat
3Orice transcriere de suport poate fi citită după ID
H-1Se raportează că GET /v1/staff/tickets/{id}/transcript returnează orice tichet după un număr întreg secvențial, fără verificarea proprietarului, expunând conversații private complete, inclusiv ID-uri de utilizator Discord și atașamente.
Ștergerea scripturilor, accesibilă staff-ului
H-2Se raportează că DELETE /v1/scripts/delete a returnat succes pentru un token de staff, fără verificarea proprietarului, oferind posibilitatea de a șterge orice script după ID, fără ștergere reversibilă sau rând de audit.
Fără limită de rată la enumerarea întregului tabel
H-3Evaluarea raportează extragerea întregului tabel de utilizatori, 13.483 de înregistrări, în 135 de cereri în 25 de secunde, fără niciun răspuns de limitare a ratei.
Mediu
5Fără 2FA suplimentar la scrierile privilegiate
M-1Se raportează că offsets, execute, strike, comutarea jocurilor, max players, setările de revizuire AI, moderation intel și chat mute acceptă un simplu bearer token, deci o sesiune furată nu necesită un al doilea factor.
Tokenuri de 30 de zile, fără întrerupător impus
M-2Se raportează că tokenurile durează exact 30 de zile, fără endpoint de reîmprospătare, iar câmpul authVersion, care ar permite revocarea tuturor sesiunilor printr-o singură acțiune, este returnat, dar nu este impus pe server.
Reguli anti-detecție modificabile de orice staff
M-3Se raportează că endpointurile moderation-intel, care conțin regulile anti-detecție ale Exoliner, acceptă creare și ștergere de la orice cont de staff, astfel încât acele reguli ar putea fi dezactivate sau corupte.
Mesaje private șterse, expuse staff-ului
M-4Se raportează că endpointul de audit al chatului expune integral mesajele private șterse către orice staff, cu conținutul mesajului, ID-ul utilizatorului țintă și membrul staff care l-a șters.
Expunere de date la nivel de staff
M-5Se raportează că endpointurile de staff divulgă o estimare a veniturilor, distribuția exactă a rangurilor, ID-uri Discord, jurnalul complet de moderare și latența și numărul de servere la nivel de loc.
Scăzut
5Content-security-policy slabă pe frontend
L-1Se raportează că politica frontendului permite unsafe-inline și unsafe-eval fără nonce, astfel încât orice vulnerabilitate de cross-site scripting ar putea citi o sesiune de staff din local storage.
Căutare defectă a utilizatorilor
L-2Se raportează că fiecare parametru de căutare al endpointului de utilizatori este ignorat și returnează aceeași primă pagină nefiltrată, deci staff-ul poate acționa asupra conturilor greșite.
Divulgare publică de informații
L-3Se raportează că endpointurile de health și stats, fără autentificare, divulgă uptime-ul și totalurile live, iar corpurile 404 uniforme permit enumerarea tabelei de rute.
Erori de server prin confuzie de tip
L-4Se raportează că intrările care nu sunt șiruri provoacă erori 500 netratate pe mai multe endpointuri. Corpurile erorilor rămân curate, deci aceasta ține de fiabilitate, nu de divulgare.
Nume de gazdă backend duplicat
L-5Se raportează că două nume de gazdă servesc rute și autorizare identice din același proces, dublând suprafața de atac și făcând ca o listă de permisiuni per gazdă să poată fi ocolită prin geamăn.
Preferi înregistrarea căutabilă? Răsfoiește conturile