Šį įrašą paskutinį kartą redagavo Vasara 2025-10-14 10:59
Virtualios kameros versija, į kurią autorius įsilaužė anksčiau, paskelbė vaizdo įrašą "Bilibili"
Ankstesnė versija, kurią nulaužiau, taip pat buvo nulaužta Saitas:Hipersaito prisijungimas matomas. Neseniai klientas paprašė manęs nulaužti kitą to paties autoriaus virtualios kameros versiją ir tiesiog ją išstudijuoti Pirmiausia patikrinkite apvalkalą, Bangbang nemokamas sutvirtinimas, palyginti paprastas, tik paprastas Fridos aptikimas, aukščiau pateikta nuoroda atliko labai išsamią Bangbang nemokamos versijos sustiprinimo ir aptikimo analizę, naudojant įvairius įrankius, tokius kaip ebpf Kabliukas su frida pirmas, yra avarijos požymių, tai gali būti, kad žingsnis yra įpurškiamas per anksti, arba adresas yra nepasiekiamas, kai kabliukas yra paruoštas, pataisant scenarijaus kabliuko kodą į frida
Apskritai injekcijos laikas buvo šiek tiek atidėtas, o tai išsprendė įpurškimo gedimų problemą kabliukas Jo aktyvinimo procesas gauna aktyvinimo grąžintus duomenis ir jis turi paprašyti serverio patikrinti, ar jis gavo aktyvinimo laiko žymą
Tada vartotojui suteikiamas laikas apskaičiuojant laiko skirtumą. Ši virtuali kamera taip pat prašo root leidimų, kitaip nėra versijos kryžminio proceso ryšio, Iš viso ši kamera turi tris pradėtus procesus Vienas iš jų yra pagrindinis fotoaparato programos procesas, kuris yra kryžminis ryšys tarp Java sluoksnio ir C++ sluoksnio Antrasis yra tas, kad pagrindinis procesas paleidžia dvejetainį vykdomąjį vcmplay įvesties parametrą komandinėje eilutėje per java sluoksnį, kad pradėtų antrąjį procesą, kuris daugiausia yra atsakingas už kryžminį ryšį tarp pagrindinio kameros vcmpaly proceso ir libvc.so proceso, kuris įšvirkščiamas į sistemos kameros kameros paslaugą, o pagrindinis ryšio būdas yra ibinderis. Trečiasis yra fotoaparato kameros serverio SO failas, įterptas į sistemos paslaugą. Jei programa negali gauti root teisių arba yra tinklo problema, proceso nepavyks pradėti
Šiai kamerai reikia aktyvinimo kodo, kad būtų galima suaktyvinti ir naudoti, o analizuojant "Java" sluoksnį, visos jo sąsajos yra užkabintos Aktyvinimui reikia paprašyti serverio gauti patvirtinimo informaciją
Visi gaunami duomenys yra užšifruoti Analizuodami VCMPLAY dvejetainį vykdomąjį failą, galime gauti, kad prašomi duomenys yra RSA šifravimas, o raktas yra per stackplz EBPF įrankį, o šifravimo raktas yra 128 bitai Dar vienas žodis Ši programa yra labai gudrus, jis pridėjo taip priesaga į vcmplay, kuri verčia žmones galvoti, kad tai yra SO failas, ir jis turi būti įkeltas į Java atmintį, bet iš tikrųjų tai yra kitas procesas. Aš užkabinau kameros paslaugą kameros serveris libvc.so radau, kad frida sudužo, kai tik sugedo kameros prijungimo paslauga, nežinau, ar ji buvo aptikta, ilgai analizavau ir netyčia radau, kad VCMPLAY mirė vieną kartą, ir jis sugebėjo užsikabinti Įtariama, kad tai gali būti VCMPLAY procesas, kuris aptiko kameros procesą Aš naudojau ida derinti VCMpay procesą, ir nustatė, kad jis vis dar turėjo anti-derinimo, nuskaitė tracepid proc / savarankiškai / būseną, kad nustatytumėte, ar jis buvo derinamas, ir kas buvo dar baisiau buvo, kad jis nustatė, kad anti-derinimo nebuvo programos gedimas, jis iš tikrųjų ištrynė svarbius failus Android sistemoje per root leidimus, ir tada telefonas iš naujo paleistas į dvigubo kliringo būseną, ir sistema turi būti inicijuota įvesti į sistemą, ir viskas telefone dingo. Aš parašiau branduolio kabliuko modulį kpm per kernelpatch ir apeinau derinimą Po kelių bemiegių naktų čia buvo išsiaiškinta bendra logika ir manoma, kad ją nulaužti nebus lengva. Tęsinys bus tęsiamas vėliau......
|