teraz troche dokladniej napisze odnosnie moich cytowan postow nt. chipwhisperer itd.
moze wrocmy tutaj wpierw do tematu kak7 jest wiecej jak pewne ze wystarczy blok 016c do odpalenia kart z 4k (sam blok)
co za tym idzie istotne jest tutaj mozliwosc wykonania niepodpisanego kodu bo nawet jesli komus uda sie odpalic exploita (ktoregos ze znanych) to operatorom wystarczy tylko informacja ze 4k dziala (nie musza wiedziec jak dziala exploit !!!) - dlaczego ? , na prosty rozum 1 funkcja w C to kilkanascie linijek kodu w asm co za tym idzie wystarczy jakakolwiek aktualizacja u1traboxow i po tej aktualizacji trzeba bedzie zaczynac od nowa (ta aktualizacja nie musi byc skierowana w exploita) wystarczy ze cos tam sie w kernelu zmieni moga miec nawet taki gotowy kod ze przy kazdej aktualizacji po kompilacji wprowadza w odpowiednich miejscach pewne zmiany
a wiec istotna jest tutaj mozliwosc odpalania nieautoryzowanego kodu (zautoryzowanego) ktory nie powinien w zwiazku z tym teraz moze dokladniej opisze o co chodzi min. niech sobie te osoby z forum chipwhisperer przeczytaja co ja o tym wszystkim mysle (wiem)
oni widac za duzo nawczytywali/naogladali sie tych materialow dlatego im wydaje sie ze da sie to zrobic w ten sam sposob whatever
niestety realia sa inne , dekodery (procesory w dekoderach) sa lepiej pozabezpieczane niz jakies army avry itd. te takie hobby microcontroller ale to nie oznacza ze sa nie do rozpracowania
dlatego moja propozycja dla tych osob niech oni sprawdza dokladnie w jaki sposob dziala proces autoryzacji kodu na procesorach broadcom (bo z tego co widze to na nich im zalezy) czyli:
-wglad w komunikacje pomiedzy pamieciami a procesorem
-szybki pomiar spa (1) obserwacja zachowan procesora (potrzeba ze 50 000 USD) na taki szybki start
-wglad w kod (poczatek kodu) z pamieci w ida
a przedewszystkim zamiast ogladac filmy na youtube niech sobie sprawdza parametry chipwhisperer lite i pro :thum:
i wtedy niech pisza... ja wiem ze oni tylko pisza i nie wiedza wogole o czym pisza @matrix4all do ciebie tez mam pewne zastrzezenia
ogolem to jest taki szybki start to co ja robie (bez tego ani rusz)
zeby moc zaatakowac procesor trzeba wiedziec kiedy i gdzie atakowac zgadza sie czy nie ?! do tego celu sprawdza sie komunikacje z pamieciami (mozna tez zastosowac pomiar napieciowy SPA) ale uwaga 50 000$ - czy to jest zrozumiale ? jezeli nie to za chwile napisze dlaczego
moze zacznijmy tutaj od pewnych predkosci i parametrow (co jest tylko wierzcholkiem na gorze lodu)
przetwornik ADC (tak ADC za ktore placilem juz nieraz) jego wydajnosc to zaledwie 100mhz to cus co nagrywa sinus na lini zasilajacej nastepnie konwertuje to na sygnal logiczny i wysyla do procesora (w cw-lite to jest fpga) w oscyloskopach tez fpga i tez to tak dziala z ta roznica ze oscyloskopy posiadaja wiecej parametrow
a wiec jezeli to jest 100mhz to procesory jakie mozna analizowac to takie ktore pracuja przy czestotliwosci 100mhz lub (uwaga czytaj jelopie jeden z drugim !!!) czasami mozecie skonczyc przy 25mhz ta zabawka
ponoc mozna zmniejszyc czestotliwosc atakowanego procesora - ponoc ?! to sobie sprobujcie zmniejszyc w procesorze z dekodera satelitarnego i napiszcie mi tutaj co wam wyszlo (trzaski komplikacje wykonywania kodu) im szybszy procesor tym trudniej zmusic go do wykonania poprawnie kodu podczas tej operacji (ja to juz robilem/probowalem nieraz)
mozliwe ze sie da dopracowujac kod w fpga (nie bede tutaj pisal o co mi chodzi szkoda mojego czasu)
teraz kolejny parametr to jest bufor czyli ile przebiegow (stanow logicznych sinusoid whatever) mozna zapisac za 1 razem (przechwycic) tutaj chipwhisperer wygrywa z oscyloskopami bo moze zapisac duzo wiecej poprzez synchronizacje zegara w procesorze (ze soba) z ta roznica ze oscyloskopy po pewnych modyfikacjach sprzetowych tez moga
im wyzsza czestotliwosc probkowania tym wiekszy bufor jest potrzebny
kolejna lista problemow:
- signal to noise ratio (jest za niski tam gdzie jest duzo kondensatorow) a tam jest ze ho ho tam gdzie szukacie dziury w calym
- procesory kilkurdzeniowe wykonuja operacje w tym samym czasie tak ? czyli jeden cpu dziala w tym samym momencie co drugi wiec nie da sie wykonac podgladu na czysty sygnal z glownego procesora bo jeden drugiego zakloca (mozna go wyciac) ale o tym za chwile
-trzaski z przetwornic stabilizatorow itd. (to tez sie da wyciac)
ale to wszystko kosztuje...
dokladnie to ja niepamietam ale to byla kwota okolo 4500 euro tyle ile ja zaplacilem za uklady scalone + (niektore gotowe urzadzenia) do tego celu
zeby wyciac cos na sygnale trzeba posiadac mozliwosc obrobki sygnalu min. filtry cyfrowe analogowe itd. problem w tym ze to musza byc uklady do zadan specjalnych ktore nie sa tanie
a wiec najpierw sprawdz cos a pozniej pisz
to odnosnie samych pomiarow przy uzyciu chipwhisperer na procesorach z dekoderow satelitarnych (ogolem to mozecie sobie to z glowy wybic!)
2. glitching (ja to nazywam faulting)
do tego tez wam chipwhisperer nie wystarczy niestety nie mam dobrej wiadomosci ale cokolwiek nie bedziecie chcieli w tym kierunku zrobic bedzie to wymagalo modyfikacji/kreacji wlasnego kodu pod fpga (pod dekodery) nie znajdziecie zadnej gotowej zabawki do tego celu
ja uzywam artix-7 (pozniej moze wstawie zdjecie)
jeszcze wracajac do odpaleniu kodu bez podpisu powiem tak , wsio jest do zrobienia bez znaczenia jaki to procesor jednak wymaga to poswiecenia czasu i jest nie lada wyzwaniem (procesory z dekoderow je mam na mysli) jest to wieloetapowy proces gdzie jak cos sie spierd. lub pominie po drodze to nic z tego wszystkiego nie wyjdzie
ja uzywam ogolem to uzywam artix-7 fpga + 2 oscyloskopy (starszy model od znajomego rigol ds1054z) nowszy sam kupilem rigol mso seria 5000 (z patchem)
co ten patch oznacza ? maxymalny pomiar jaki moze wykonac ten drugi rigol to az 300mhz (a nie 100 jak w cw-lite czy pro) ale to nie patch
patch = jezeli ktos wie co oznacza synchronizacja zegara atakowanego urzadzenia z urzadzeniem pomiarowym z j. angielskiego synchronous sampling w skrocie ja tego rigola przerobilem zeby mogl w ten sposob dzialac w sieci nie ma opisu jak to zrobic ale po przeczytaniu pewnych materialow naukowych i na podstawie doswiadczen w temacie (wykonalem to samemu) teraz to ja mam prawdziwy chipwhisperer vs shitwhisperer
na sam koniec dodam nie pamietam czy pisalem dokladniej nt. jak dziala chipwhisperer (dla mnie wogole nie dziala)
bo normalnie to jest tak ze jak ktos robi kod pod procesor to procesor ma kontrolowac wszystkie zachowania (przejac jakas kontrole nad atakowanym procesorem) nie procesor ale fpga (procesory sie do tego celu nie nadaja) czyli musi kontrolowac linie jakies tam zeby wiedziec kiedy wystartowac itd. czasami potrzeba wiecej niz tylko 0 i 1 (stan niski/wysoki) czasami trzeba miec mozliwosc przechwycenia kodu hexadecymalnego itd. (to sie nazywa trigger) tz w urzadzeniach takich jak pomiarowe to jest triggerem a w kodzie programu to poprostu kod
czyli to taki uchwyt ktory potrafi wychwycic cos w urzadzeniu w danym monencie i od tego momentu wystartowac lub wykonac jakas operacje
otoz shitwhisperer lite posiada tylko trigger 1/0 czyli on moze wylapac tylko stan wysoki/niski nic pozatym (w dekoderach potrzeba wiecej)
ponadto jego funkcjonalnosc jest ograniczona w sposob taki ze procesor i fpga wykonuja jakies podstawowe operacje a obsluga uartu i pozostalymi zajmuje sie sam komputer przez to zamula caly proces (wiem wiem mieli to poprawic) mieli dodac mozliwosc uruchomienia chipwhisperer standalone ale chyba tego do dzis nie zrobili ... (obslugi uartu wam nie dodadza do niego nigdy)
moj fpga posiada uart wyswietla komunikaty odbiera dane analizuje sygnal (gdzie ma wystartowac) potrafi analizowac i przetwarzac kod hexadecymalny i to jest same fpga a nie szajsowaty procesor arm + fpga gdzie arm sie tymi operacjami zajmuje (kosztowalo mnie to zdrowia) bo to nie procesor a fpga znacznie wiecej roboty z tym jest
takze podsumowujac to wszystko ja bym wam radzil najpierw zaczac cos robic w tym kierunku i pozniej wypisywac jakies informacje z tym zwiazane...
co do @matrix4all czegos tutaj nierozumiem jak ty mogles wykonac niepodpisany kod na bcm7362 bez wgladu jak procesor wykonuje kod z pamieci (zapomniales o bseck ?!) tylko mi nie mow ze poprzez spa bo z krzesla spadne
spa jest niewykonalne na procesorach z tej serii bcm generacja 3 44nm
aha i te 50 000 USD o co chodzi , chodzi o oscyloskopy o zajebiscie mocnych parametrach (seria teledyne lecroy) gdyby bylo tak ze jakis tam chiwphisperer wystarcza (o pomiarach wiadomo od lat) to juz by dawno temu wszystkie procesory rozpracowywali ale nie bo bariere stanowi cena
to tak samo jak z kartami inteligentymi je tez mozna lamac ale problem stanowi cena (kwota jaka trzeba w to zainwestowac)
takze teraz juz mozecie sobie darowac te filmy z youtube odnosnie chipwhisperer i calej reszty
huh no to tyle na dzis