Tento príspevok naposledy upravila Summer 14.10.2025 o 10:59
Verzia virtuálnej kamery, ktorú autor už predtým hackol, zverejnila video o Bilibiliho
Predchádzajúca verzia, ktorú som prelomil, bola tiež rozbitá Väzba:Prihlásenie na hypertextový odkaz je viditeľné. Nedávno ma klient požiadal, aby som rozlúštil ďalšiu verziu virtuálnej kamery od toho istého autora a jednoducho ju študoval Najskôr skontrolujte granát, Bangbang free reinforcement, relatívne jednoduché, len jednoduchá detekcia Fridy, vyššie uvedený odkaz podrobne analyzuje posilňovanie a detekciu Bangbang free verzie, pomocou rôznych nástrojov, ako je ebpf Najprv hookuj s Fridou, sú známky pádu, môže sa stať, že krok je vstreknutý príliš skoro, alebo je adresa neprístupná, keď je hook pripravený, opravením hook kódu skriptu na Fridu
Vo všeobecnosti bol čas vstrekovania trochu oneskorený, čo vyriešilo problém havárií injekcie hook Proces jeho aktivácie dostáva dáta vrátené aktiváciou a musí požiadať server, aby overil, že dostal časovú pečiatku aktivácie
Používateľ potom získa čas výpočtom rozdielu času. Táto virtuálna kamera tiež žiada root oprávnenia, inak nedochádza k komunikácii medzi procesmi verzií, Celkovo má tento fotoaparát spustené tri procesy Jedným z nich je hlavný proces aplikácie fotoaparátu, čo je komunikácia medzi procesmi medzi Java vrstvou a C++ vrstvou Druhým je, že hlavný proces spúšťa binárny spustiteľný vstupný parameter vcmplay na príkazovom riadku cez java vrstvu, aby spustil druhý proces, ktorý je hlavne zodpovedný za komunikáciu medzi procesmi medzi hlavným procesom kamerového vcmpaly a libvc.so procesom, ktorý sa vkladá do kamerovej služby systému, a hlavným spôsobom komunikácie je ibinder. Tretí je SO súbor kamerového kamerového servera vložený do systémovej služby. Ak aplikácia nemôže získať root oprávnenia alebo je problém v sieti, proces sa nespustí
Táto kamera potrebuje aktivačný kód na aktiváciu a použitie, a analýzou Java vrstvy sú všetky jej rozhrania odpojené Na aktiváciu je potrebné požiadať server o získanie overovacích informácií
Dáta, ktoré získate, sú všetky zašifrované Analýzou spustiteľného binárneho súboru VCMPLAY môžeme zistiť, že požadované dáta sú RSA šifrované, kľúč je lokalizovaný cez nástroj EBPF stackplz a šifrovací kľúč má 128 bitov Ešte jedno slovo Táto aplikácia je veľmi prefíkaná, pridal do vcmplay príponu so, čo ľudí vedie k presvedčeniu, že ide o SO súbor a musí sa načítať do pamäte Javy, ale v skutočnosti je to ďalší proces. Pripojil som camera service cameraserver libvc.so zistil som, že Frida spadla hneď, ako spadla Attach camera service. Neviem, či to bolo detegované. Dlho som to analyzoval a náhodou som zistil, že VCMPLAY raz zomrel, a podarilo sa ho zachytiť. Predpokladá sa, že to mohol byť proces VCMPLAY, ktorý zachytil proces cameraserve. Použil som ida na ladenie procesu VCMpay a zistil som, že stále má anti-debugging, skenoval som tracepid v proc/self/status, aby zistil, či bol odladený, a ešte desivejšie bolo, že zistil, že anti-ladenie nebolo pádom programu, ale skutočne vymazal dôležité súbory v systéme Android cez root oprávnenia, a potom sa telefón reštartoval do stavu dvojitého vymazania, systém musel byť inicializovaný na vstup do systému, a všetko v telefóne zmizlo. Kernel hook modul som napísal kpm cez kernelpatch a obchádzal ladenie Po niekoľkých bezsenných nociach tu bola všeobecná logika pochopená a odhaduje sa, že nebude ľahké ju rozlúštiť. Pokračovanie neskôr......
|