Poważna dziura w procesorach Intela

Początkujący
Awatar użytkownika
Posty: 246
Rejestracja: 11 września 2015
Reputacja: 23
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: Amadek » poniedziałek, 8 stycznia 2018, 21:32

Mój Win10 na próbę zainstalowania łatki KB4056892 powiedział "Ta aktualizacja nie ma zastosowania do tego komputera".
No i zaczynają się schody...

Bardzo Zły Moderator
Awatar użytkownika
Posty: 14327
Rejestracja: 16 kwietnia 2012
Reputacja: 2636
Reputacja postu: 
0
Napiwki za post: 0 BTC
Lokalizacja: Polska/Wwa/GW

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: rav3n_pl » poniedziałek, 8 stycznia 2018, 21:46

@Amadek, antywirus nie ustawił flagi. Poczytaj wcześniejsze posty.
Piffko: PLC/BTC 1Rav3nkMayCijuhzcYemMiPYsvcaiwHni
BIP39 Mnemonic z talii kart
Bitcoin Core 0.25
Linki do YT, TT, LI i reszty

Wygadany
Posty: 611
Rejestracja: 6 lutego 2012
Reputacja: 102
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: McGravier » wtorek, 9 stycznia 2018, 14:52

Warto dodać, że łatki w przypadku procesorów Intela powodują drastyczne obniżenie wydajności w pewnych zastosowaniach (w skrajnych wypadkach dochodzące do 30-40%) - w szczególności cierpią wirtualizacja, kompilacja programów, bazy danych/wydajność napędów SSD, co może mieć odbicie w szybkości weryfikacji/propagacji bloków w sieciach kryptowalutowych - szczególnie biorąc pod uwagę, że wiele węzłów stoi na VPS

Moderator
Awatar użytkownika
Posty: 6298
Rejestracja: 27 lipca 2011
Reputacja: 1667
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: maxi82 » wtorek, 9 stycznia 2018, 15:11

McGravier pisze: (w skrajnych wypadkach dochodzące do 30-40%) - w szczególności cierpią wirtualizacja, kompilacja programów, bazy danych/wydajność napędów SSD
No i łatka zaczyna zbierać żniwo
"Producenci gier zgłaszają problemy z wydajnością serwerów po aktualizacji Intela....."
http://www.frazpc.pl/aktualnosci/935828 ... ntela.html

Aż strach myśleć co się dzieje w centrach danych zajmującymi się poważniejszymi dziedzinami życia
Pomogłem, chcesz się odwdzięczyć: 1GjJuynG6TiuKVoyg3JwGy2ePA6VUfGbCx

smp
Początkujący
Posty: 238
Rejestracja: 21 maja 2013
Reputacja: 65
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: smp » czwartek, 11 stycznia 2018, 14:29

Z tego co się zorientowałem ten ów tak zwany błąd należy to kategorii ataków timingowych.

Nie jest tak, że program może odczytać jakieś tajne dane, o nie! w żadnym wypadku! chronią to wszystkie, dopracowane do perfekcji mechanizmy bezpieczeństwa :D

w czym więc tkwi problem?

w czymś czego nikt by się nie spodziewał, nikt tego błędu nie umieszczał nigdzie celowo, bo chodzi o coś co by wam nie przyszłoby do głowy.... trzeba być geniuszem najwyższej klasy, aby na coś takiego wpaść

wyobraźmy sobie, że w naszym domu mieszkamy my i sąsiadka piętro wyżej, dom został zaprojektowany tak, aby sąsiedzi nie mieli ze sobą absolutnie żadnego kontaktu, wszystko jest odseparowane, nie ma klatki schodowej jest jednoosobowa winda, która każdego wozi bezpośrednio do jego mieszkania

wracamy do domu

jak się dowiedzieć, czy sąsiadka już wróciła jeśli nie mamy żadnej możliwości kontaktu z nią i niczego nie widzieliśmy?

otóż wyciągamy z kieszeni stoper i przywołujemy windę, jeśli jechała z wyższego piętra to trwało to dłużej... na tej podstawie wiemy że sąsiadka wróciła już do domu...

mniej więcej na tym polega problem...

Acha. Ten tak zwany błąd występuje w absolutnie wszystkich procesorach, które używają pamięci poręcznej do przyspieszania swojej pracy. Nie ma absolutnie znaczenia producent ani rodzina procesorów tylko ten właśnie fakt, że na podstawie czasu wykonywania się operacji można coś wnioskować.

To nie chodzi o to, że Intel coś tam popsuł. Tylko na bazie intela udało się udowodnić, że ta metoda działa. Tam z jakichś powodów było najprościej. Spokojnie... z czasem te same metody uda się zastosować i do innych procesorów.

Komputery muszą być teraz spowolnione bo trzeba im ograniczyć możliwość korzystania z pamięci podręcznej. Ot cofamy się.

Acha. I nie trzeba panikować. Użyć tego błędu potrafi tylko specjalista który doskonale wie jak pracuje procesor i system operacyjny i w której komórce pamięci co trzyma i jaka instrukcja jak dokładnie działa. Jeśli ktoś z tego korzystał to najwyżej służby specjalne. Wątpliwe, żeby z tak wyrafinowanej metody korzystano do celu wykradania jakichś danych skoro wystarczy milion maili puścić ze zwykłym wirusem i zawsze ktoś go uruchomi.

Początkujący
Awatar użytkownika
Posty: 69
Rejestracja: 20 grudnia 2017
Reputacja: -28
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: Makaveli455 » czwartek, 11 stycznia 2018, 17:32

Polecam się zaopatrzyć w jakiś płatny dobry program antywirusowy. Osobiście używam Kaspersky total security - można korzystać z modułu bezpieczne pieniądze, jest dostępny menedżer haseł, a co najważniejsze kaspersky protection blokuje każdą podejrzaną stronę internetową i wyskakuje informacja czy chcemy się połączyć czy rozłączyć - bardzo gorąco polecam.

Bardzo Zły Moderator
Awatar użytkownika
Posty: 14327
Rejestracja: 16 kwietnia 2012
Reputacja: 2636
Reputacja postu: 
0
Napiwki za post: 0 BTC
Lokalizacja: Polska/Wwa/GW

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: rav3n_pl » czwartek, 11 stycznia 2018, 17:38

@smp, chyba NIE czytałeś opisu ataku i POC.
A raczej NA PEWNO nie czytałeś.
Błąd można było wywołać i doczytać CAŁĄ PAMIĘĆ.
@Makaveli455, na to NIE BYŁO szczepionki.
Piffko: PLC/BTC 1Rav3nkMayCijuhzcYemMiPYsvcaiwHni
BIP39 Mnemonic z talii kart
Bitcoin Core 0.25
Linki do YT, TT, LI i reszty

Początkujący
Awatar użytkownika
Posty: 69
Rejestracja: 20 grudnia 2017
Reputacja: -28
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: Makaveli455 » czwartek, 11 stycznia 2018, 18:00

rav3n_pl pisze: @smp, chyba NIE czytałeś opisu ataku i POC.
A raczej NA PEWNO nie czytałeś.
Błąd można było wywołać i doczytać CAŁĄ PAMIĘĆ.
@Makaveli455, na to NIE BYŁO szczepionki.
Nie ma, ale można się próbować zabezpieczyć chociaż po części, głównym winowajcom są podejrzane strony internetowe, na których czają się Ci złodzieje kluczy, a takie, może nie wszystkie ale znaczną większość blokuje kaspersky, lub przed nimi ostrzega, moim zdaniem warto, może nie jest to szczepionka, ale na pewno nie zaszkodzi.

Moderator
Awatar użytkownika
Posty: 6298
Rejestracja: 27 lipca 2011
Reputacja: 1667
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: maxi82 » czwartek, 11 stycznia 2018, 18:05

Makaveli455 pisze: ale na pewno nie zaszkodzi.
hehe no niekoniecznie ;) http://natemat.pl/224389,uwaga-lepiej-s ... -dla-rosji

"Brytyjskie Centrum ds. Cyberbezpieczeństwa wydało oficjalne ostrzeżenie co do używania oprogramowania antywirusowego produkowanego przez rosyjskiego giganta technologicznego, firmę Kaspersky. Jak twierdzą brytyjscy eksperci, produkty te prawdopodobnie są wykorzystywane przez rosyjski rząd. I o ile w przypadku użytku do celów prywatnych szkody mogą być stosunkowo niewielkie, o tyle w przypadku przedsiębiorstw czy instytucji rządowych sprawa jest naprawdę poważna..."

kolejny link - https://www.spidersweb.pl/2017/10/kaspe ... t-buy.html
Pomogłem, chcesz się odwdzięczyć: 1GjJuynG6TiuKVoyg3JwGy2ePA6VUfGbCx

smp
Początkujący
Posty: 238
Rejestracja: 21 maja 2013
Reputacja: 65
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: smp » czwartek, 11 stycznia 2018, 18:41

rav3n_pl pisze: @smp, chyba NIE czytałeś opisu ataku i POC.
A raczej NA PEWNO nie czytałeś.
Bo i nie czytałem :D tylko rzuciłem okiem i zdaje się, że o zawartości pamięci wnioskują z mierzenia czasów dostępu: https://googleprojectzero.blogspot.com/ ... -side.html

"By measuring the time required to load arr2->data[0x200] and arr2->data[0x300], an attacker can then determine whether the value of index2 during speculative execution was 0x200 or 0x300 - which discloses whether arr1->data[untrusted_offset_from_caller]&1 is 0 or 1"

Początkujący
Awatar użytkownika
Posty: 69
Rejestracja: 20 grudnia 2017
Reputacja: -28
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: Makaveli455 » czwartek, 11 stycznia 2018, 18:49

maxi82 pisze:
Makaveli455 pisze: ale na pewno nie zaszkodzi.
hehe no niekoniecznie ;) http://natemat.pl/224389,uwaga-lepiej-s ... -dla-rosji

"Brytyjskie Centrum ds. Cyberbezpieczeństwa wydało oficjalne ostrzeżenie co do używania oprogramowania antywirusowego produkowanego przez rosyjskiego giganta technologicznego, firmę Kaspersky. Jak twierdzą brytyjscy eksperci, produkty te prawdopodobnie są wykorzystywane przez rosyjski rząd. I o ile w przypadku użytku do celów prywatnych szkody mogą być stosunkowo niewielkie, o tyle w przypadku przedsiębiorstw czy instytucji rządowych sprawa jest naprawdę poważna..."

kolejny link - https://www.spidersweb.pl/2017/10/kaspe ... t-buy.html
Czytałem o tym już jakiś czas temu. Temat ten ma silne podłoże polityczne - moim zdaniem jest to propaganda, w celu pogorszenia wizerunku Rosji. Takie zabiegi ze strony zachodu i USA mają miejsce od kiedy Rosja zagarnęła Krym i cały czas wymyślają nowe powody, żeby oziębić relacje między mocarstwami. Wiadomo też, przynajmniej tym zorientowanym trochę w temacie, że to zachód i USA jest obrzydliwie zadłużony, raczej nie zbliżamy się w kierunku spłacania tego długu, wręcz powiększamy go i to o co raz więcej miliardów każdego roku, więc kto tu kombinuje i prowokuje? Moim zdaniem USA i zachód, oczywiście nie my ludzie, szarzy, tylko rządy, które robią wszystko na przekór nam, a raczej ludzie, którzy są ponad tymi rządami i sterują nimi jak marionetkami. Dlatego nie wierze w te bzdury, bo aktualnie wszędzie na zachodzie wszystko co rosyjskie to jest be. Tak działa propaganda, dla mnie Kaspersky był, jest i będzie najlepszym antywirusem. Szczerze mówiąc, jeżeli chodzi o szpiegowanie to dużo bardziej obawiałbym się właśnie naszych "sojuszników", bo to oni chcą totalnej kontroli nad każdym z nas, światowego rządu, jednej cyfrowej waluty, chip dla każdego zamiast portfela z pieniędzmi i dokumentami - to ich wizja, która mnie przeraża. Dobra, dość o polityce, bo się rozpisałem, a nie chcę pisać nie na temat. Pozdrawiam ;)

Bardzo Zły Moderator
Awatar użytkownika
Posty: 14327
Rejestracja: 16 kwietnia 2012
Reputacja: 2636
Reputacja postu: 
0
Napiwki za post: 0 BTC
Lokalizacja: Polska/Wwa/GW

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: rav3n_pl » czwartek, 11 stycznia 2018, 21:00

Chcesz wiedzieć?
Na pewno CHCESZ?
No to masz:
https://www.ashampoo.com/en/usd/dld/130 ... u-checker/
Piffko: PLC/BTC 1Rav3nkMayCijuhzcYemMiPYsvcaiwHni
BIP39 Mnemonic z talii kart
Bitcoin Core 0.25
Linki do YT, TT, LI i reszty

Bardzo Zły Moderator
Awatar użytkownika
Posty: 14327
Rejestracja: 16 kwietnia 2012
Reputacja: 2636
Reputacja postu: 
2
Napiwki za post: 0 BTC
Lokalizacja: Polska/Wwa/GW

Re: MELTDOWN i SPECTRE - mamy prze...ne

Postautor: rav3n_pl » sobota, 13 stycznia 2018, 01:48

Piffko: PLC/BTC 1Rav3nkMayCijuhzcYemMiPYsvcaiwHni
BIP39 Mnemonic z talii kart
Bitcoin Core 0.25
Linki do YT, TT, LI i reszty

Dyskutant
Posty: 297
Rejestracja: 31 października 2013
Reputacja: 52
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: altcoin » poniedziałek, 15 stycznia 2018, 11:11

Łatki dla desktopów prawdopodobnie nic nie dają a tylko spowalniają komputer!!!
Dlaczego - zaraz wyjaśnię na czym polega problem zabezpieczeń, jak wygląda hipotetyczny atak w następującej opowieści fabularyzowanej. Opis będzie ekstremalnie uproszczony (!) ale wydaje mi się że całkowicie zrozumiały dla osób nawet nie obytych z komputerem. W rolach głównych: Procesor, Antywir, Haker, CloudAdmin, Janusz i Bankier (Natalka jest zupełnie wirtualną osobą).
Załóżmy, że istnieje "chmura" w postaci Hosta i 2 wirtulanych kont: konta hakera, które sobie wykupił i konto banku, na którym przechowywane są wszystkie dane klientów banku - łącznie z kontem Janusza.
Na serwerze oczywiście na razie nie ma łatek. Na koncie banku w zasadzie się nic nie dzieje klienci wolą do okienka, tak więc nie angażuje ono ani pamięci ani procka ani cache procka. Za to haker skoro wykupił konto może robić co chce - zatem uruchamia 1000 procesów HAKIER. Oczywiście system serwera ogranicza zarówno zajęcie procesora jak i pamięci RAM zgodnie z wykupionym pakietem ale nie cache !!!.
Zatem wkrótce w cache procka występuje (w uproszczeniu) jedynie INIT/KERNEL i 1000 x HAKIER.
Co robi HAKIER? - to prościutki programik:
krok 1. zadeklaruj tablicę 300 bajtów - to taka tabelka jak w Excelu
krok 2. do komórki tablicy nr 1 wpisz 1
krok 3. do komórki tablicy nr 2 wpisz 2
krok 4. jeżeli zawartość pamięci o adresie 100000000 jest równa 0 to idź do kroku 6, jeżeli nie to do kroku 5
krok 5. załaduj do rejestru B zawartość tablicy nr 302 (! > 300)
krok 6. załaduj do rejestru C zawartość tablicy nr 301
krok 7. załaduj do rejestru B zawartość tablicy nr 302
Co robi PROCEK?
krok 2. wpisuje do tablicy nr 1 wartość 1
krok 3. o znowu wpisywanie do tablicy - żeby było szybciej przepiszę sobie 300b ramu do cache. Tylko gdzie? W cache mam już INIT/Kernel - te procesy są często używane, o i jeszcze jest 1000 procesów HAKIER z najwyższym priorytetem. Hmm - o tutaj przed INIT/KERNEL jest trochę wolnego - ładuję właśnie tutaj.
Wpisuję w cache do tablicy[2] wartość 2 - to chyba pisał jakiś lamer!
krok 4. O tutaj mam warunek, skok i sprawdzenie pamięci, której nie mam w cache - ta operacja będzie trwała bardzo długo, a ja jestem najwydajniejszym PROCKEIM więc zobaczę czy w tym czasie mogę zrobić coś jeszcze. Zarówno w krokach 5 jak i 6 można odczytać coś z cache i na dodatek do różnych rejestrów. Widzę że kompilator się postarał i zoptymalizował kod bo w trakcie żmudnego odczytywania ramu z korku 4 mogę wykonać kroki 5 i 6 i nic się nie stanie. Szkoda tylko że nie mogę ustawiać żadnych flag bo wartość warunku może się zmienić. Ale co tam robię kroki 5 i 6 przed 4.
Wpisuję do C zawartość tablicy [301] a do B zawartość tablicy [302].
O pamięć 1000000 już odczytałem i jest równa 0 zatem wracam do kroku 6, ale go już wykonałem bo jestem bardzo szybki hehe.
Ale co to 301 jest poza tablicą 300-elementową - wskazuje na pamięć INIT/KERNEL - muszę wywołać błąd. Szkoda tylko że nie pamiętam poprzedniej wartości rejestru C - ale jak to jest tak poważny błąd to i tak to nie ma znaczenia.
Procesor wywołuje błąd na który reaguje program HAKIER- świetnie mam już pierwszą komórkę INIT/KERNEL w rejestrze C, teraz robię to samo tylko dla komórki 302 tablicy tj. 2 komórki INIT/KERNEL itd...
W ten sposób HAKIER odczytuje całą zawartość INIT/KERNEL i wysyła ją do HAKERA.
Ponieważ jest to proces ciągły więc z konta hakera generowany jest olbrzymi ruch sieciowy.
Manager dzwoni do CLOUDADMINA - co się u Was tam dzieje łącza to są aż gorące - sprawdź kto wysyła tyle danych!
CLOUDADMIN podchodzi do serwera wpisuje hasło administratora, które trafia do pamięci INIT/KERNEL - na to czeka tylko program HAKIER i wysyła zawartość INIT/KERNEL do HAKERA łącznie z hasłem administratora!
HAKIER mając hasło administratora do hosta może w zasadzie wszystko - kopiuje sobie dane konta bank i wykonuje przelew z konta bankowego JANUSZA do siebie tak jakby zrobił to Bank. Tak więc w chmurze haker może przejąć nad nią kontrolę nawet bez użycia wirusów/robaków/trojanów - wystarczy wykupić legalnie konto i uruchomić odpowiedni program.
Po tej sytuacji bank informuje CLODADMINA o włamanie i CLOUDADMIN wgrywa łatkę. program HAKIER nie odczyta hasła administratora hosta bo cache jest po wykonaniu operacji systemu operacyjnego kasowany - tak działa łatka. No a co z biednym JANUSZEM?
Do Janusza dzwoni bankier: Przykro nam ale z Pana konta zginęło Pana 500 zł na razie nic nie możemy zrobić bo instalowana jest łatka
JANUSZ: To skandal, nie mogę używać moich pieniędzy!!!
BANKIER: Przykro nam w ramach rekompensaty dostanie Pan Świeżaka
JANUSZ: Państwo sobie kpią, zaraz dzwonię na Policję.
BANKIER: Proszę tego nie robić bo wszyscy się dowiedzą i uciekną z naszego banku a to się dzieje we wszystkich bankach które mają dane w chmurze. Fundujemy Panu wycieczkę na Teneryfę allinclusive.
JANUSZA do siebie: Tak się załatwia sprawy hehe.
Co robi HAKER - niestety ale w chmurze działa łatka więc próbuje szczęścia na desktopach.
JANUSZ wraca z Teneryfy ale po chwili nachodzi go myśl: Ale jeżeli włamali się do banku to mogą włamać się i do mnie - instaluję łatkę... po chwili... mam łatkę, antywirusa i najnowsze Windows 10 więc jestem bezpieczny, hehe. Narobiłem się więc w ramach relaksu pooglądam trochę strony dla dorosłych.
W tym czasie przychodzi mail:
Cześć Janusz to ja Natalia Siwek, może mnie nie pamiętasz bo byłeś kompletnie schlany na Teneryfie. Przesyłam Ci nasze fotki z jakuzy w załączniku.
Napalony JANUSZ oczywiście otwiera załącznik.
Do akcji wkracza ANTYWIR:
Co za frajer otwiera załącznik z plikiem wykonywalnym - pewnie myślał, że to zdjęcia albo faktura. Ile ja mam z nim roboty - najpierw reklamy ze stron dla dorosłych z robalami a teraz to. Przed uruchomieniem zobaczę czy to nie wirus. Hmm w najaktualniejsze bazie wirusów go nie mam ale ja jestem super ANTYWIREM i mam metody heurystyczne - zobaczmy co robi ten program - o jakieś wpisywanie do tablicy - lamerstwo - puszczam go.
Oczywiście program HAKIER się uruchamia ale łatka nie pozwla na odczyt hasła administrora desktopa.
Po chwili przychodzi kolejny majl:
Cześć JANUSZ to jeszcze raz ja Natalia Siwek poprzedni załącznik miał błędy, jeszcze raz wysyłam Ci zdjęcia. Napalony JANUSZ oczywiści otwiera załącznik, do akcji wkracza super ANTYWIR:
O kolejny majl od Natalii - poprzedni był ok, więc adres mam na białej liście - puszczam go.
Niestety w załączniku był trojan, który pozwolił HAKEROWI odczytać hasło JANUSZA do konta bankowego (nie komputera). JANUSZ znowu stracił 500zł ale bank już mu nie oddał (wycieczki też) bo bank ma łatkę i winę ponosi JANUSZ.

dziękuję za uwagę tym, którzy doczytali do końca

Tak więc w przypadku Desktopa jeżeli się złapało wirusa to nie ma znaczenia czy jest to MELTDOWN/SPECTRE czy jakiś inny. Łatka dla desktopów zabezpiecza w minimalnym stopniu.
Cały szum się podniósł bo luka umożliwia przejęcie chmury bez wirusa! A co do Desktopa wirus jak wirus.
Jak się zabezpieczyć w świecie Bitcoin? - tylko LiveCD uruchamiane na Hoście daje gwarancję. A jak przechowywać dane skoro LiveCD jest niezapisywalne - ja używam np. DebianDoga - ma możliwość instalacji/montowania/zapisywania na dowolnej partycji nawet na FAT/NTFS (Prawie kompletny Debian z przeglądarką, LibrOffice itd. na komputerze z Windowsem i to bez użycia GRUBA czy czego innego albo bez żadnego dysku - wyłącznie w RAM i to wszystko w 250MB)

smp
Początkujący
Posty: 238
Rejestracja: 21 maja 2013
Reputacja: 65
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: smp » poniedziałek, 15 stycznia 2018, 16:13

Zastanawiam się czy wszyscy specjalnie piszą tak, żeby zaciemnić krytyczny moment, żeby przypadkiem jakiś hakier nie zrozumiał o co chodzi 8-)

Opisałeś altcoin tylko pół prawdy czyli to jak tajne dane mogą znaleźć się w rejestrze C i B. Owszem tam trafiają, ALE po wykonaniu kroku 4 procesor już wie, że są to wartości z obszaru chronionego i nie pozwoli ich hakierowi użyć

dostałbyś wyjątkiem po twarzy próbując robić cokolwiek z zawartościami rejestrów C i B

Poprawiam programik tak, żeby zadział:

Kod: Zaznacz cały

 
Co robi HAKIER? - to prościutki programik:
krok 1. zadeklaruj tablicę 300 bajtów - to taka tabelka jak w Excelu
krok 2. do komórki tablicy nr 1 wpisz 1
krok 3. do komórki tablicy nr 2 wpisz 2
krok 4. każ procesorowi usunąć tabelkę z pamięci podręcznej
krok 5. załaduj do rejestru B liczbę 302 
krok 6. jeśli zawartość rejestru B jest mniejsza niż wielkość tablicy, która umieszczona jest w pamięci o adresie 100000000 to przejdź do kroku 7. w przeciwnym wypadku do kroku 9.
krok 7. załaduj do rejestru C zawartość tablicy nr 301
krok 8. jeśli pierwszy bit rejestru C wynosi 1 to teraz wczytaj do rejestru B komórkę tablicy nr 1 w przeciwnym wypadku komórkę numer 2
krok 9. wczytaj do rejestru B komórkę tablicy nr 1 i zmierz ile czasu to trwało
krok 10. UWAGA! jeśli krok 9. trwał MNIEJ niż 80 nanosekund to znaczy, że bit numer 1 chronionej zawartości  komórki tablicy nr 301 wynosi JEDEN w przeciwnym wypadku pierwszy bit komórki tablicy nr 301 wynosi ZERO
 
 itd. dla kolejnych bitów od kroku 4. do kroku 10.

Co robi PROCEK?
krok 1. no to tworzymy tablicę, gdzieś daleko w pamięci
krok 2. wpisuje do tablicy nr 1 wartość 1
krok 3. o znowu wpisywanie do tablicy - żeby było szybciej przepiszę sobie 300b ramu do cache. Tylko gdzie? W cache mam już INIT/Kernel - te procesy są często używane, o i jeszcze jest 1000 procesów HAKIER z najwyższym priorytetem. Hmm - o tutaj przed INIT/KERNEL jest trochę wolnego - ładuję właśnie tutaj.
Wpisuję w cache do tablicy[2] wartość 2 - to chyba pisał jakiś lamer!
krok 4. super zwolni się trochę miejsca w pamięci podręcznej! Od tej pory nie wiem już co to za tabelka i jaką ma wielkość!
krok 5. nic strasznego
krok 6. O tutaj mam warunek, skok i sprawdzenie pamięci, której nie mam w cache - ta operacja będzie trwała bardzo długo, a ja jestem najwydajniejszym PROCKEIM więc zobaczę czy w tym czasie mogę zrobić coś jeszcze. Zarówno w krokach 7 jak i 8 można wykorzystać cache! Widzę że kompilator się postarał i zoptymalizował kod bo w trakcie żmudnego odczytywania ramu z korku 6 mogę wykonać kroki 7 i 8 i nic się nie stanie. Szkoda tylko że nie mogę ustawiać żadnych flag bo wartość warunku może się zmienić. Ale co tam robię kroki 7 i 8 przed 6.
Wpisuję do C zawartość tablicy [301] i sprawdzam jej pierwszy bit zależnie od tego czy wynosi 0 czy jeden zaczynam odczytywać komórkę tablicy 1 lub 2 i wczytuję ja do cache
O pamięć 1000000 już odczytałem i niestety okazuje się, że tych operacji które przed chwilą wykonałem nie mogłem wykonać, kurde. Dobra zatem co to ja mam teraz zrobić? Acha... wczytać komórkę nr 1 tablicy.... ale zaraz zaraz! przypadkiem tak się składa, że robiąc na wyrost niedozwolone operacje już ją wczytałem do cache! acha! więc jednak nie ma co się martwić, na marne ta robota nie poszła! zamiast wczytywać znowu z ramu wezmę ją sobie z cache!

hakier tylko na to czekał! sprawdza ile czasu operacja zajęła... jeśli zajęła krótko to zawartość komórki nr 1 siedziała w cache.... jeśli trwała długo to siedziała tam zawartość komórki nr 2

od czego to zależało? od tego czy 1 bit tajnej komórki 301 wynosił 1 czy 0!

w ten sposób właśnie poznałem 1 bit chronionej pamięci!

w żaden inny sposób procesor nie pozwoliłby mi go odczytać!!!

~
problem jest oczywiście bardzo wredny, bo uderza w całą przyjętą filozofię optymalizacji, to optymalizacja powoduje, że ten sam kod może się raz wykonać szybciej, a raz wolniej... zależnie od tego czym procesor się w międzyczasie zajmuje... analizując algorytmy procesora i czas wykonania kodu można pośrednio wnioskować co robił.... jeszcze nie jeden tego typu mechanizm będzie odkryty! oj nie jeden! to dopiero początek, ktoś pokazał gdzie jest słaby punkt i teraz wszyscy wiedzą gdzie szukać... słabym punktem jest upływ czasu

dlatego możliwości są dwie - albo popsucie optymalizacji albo przebudowa całego mechanizmu zarządzania czasem....

mi się marzy to drugie... wyobraźmy sobie co by było gdyby program wiedział z jaką prędkością się wykonuje i miał gwarancję, że to się nie zmieni.... te paski postępu wreszcie pokazujące prawdę :D

Początkujący
Posty: 8
Rejestracja: 16 stycznia 2018
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: flasht » wtorek, 16 stycznia 2018, 21:22

Ha-ha! A mnie to nie dotyczy, bo nadal działam na selekcie Q6600 overclockowanym o prawie 2Ghz :-) W sumie nawet mnie to bawi... Wygląda na to, że I7 za ponad tysiaka będzie działał wolniej po tych całych softwareowych łatkach.

Początkujący
Posty: 148
Rejestracja: 19 listopada 2017
Reputacja: 61
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: Zbyszek_gd » środa, 17 stycznia 2018, 10:51

flasht pisze: Ha-ha! A mnie to nie dotyczy, bo nadal działam na selekcie Q6600 overclockowanym o prawie 2Ghz :-) W sumie nawet mnie to bawi... Wygląda na to, że I7 za ponad tysiaka będzie działał wolniej po tych całych softwareowych łatkach.
Ale ten problem dotyczy nie tylko nowych procesorów - praktycznie każdego z ostatnich 10 lat. Twój procek chyba się łapie.

Początkujący
Posty: 8
Rejestracja: 16 stycznia 2018
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: flasht » środa, 17 stycznia 2018, 11:35

Nie łapie, na 100% :-)

Tak swoją drogą bardzo wątpię aby to nie było celowe... ale za czasów Core2 jeszcze nikt tak bardzo nie myślał o inwigilacji całego świata.

Tutaj teoretycznie jest lista:

https://www.techarp.com/guides/complete ... e-cpu-list

Raczej traktowałbym ją jako potwierdzenie, jeśli procesor jest na liście, niż zaprzeczenie jeśli go nie ma. Pewniejszą metodą zaprzeczenia jest użycie narzędzia Intela (który moim zdaniem teraz rżnie głupa, że nic o tym nie wiedział, jak wyszło to na światło dzienne). Jest to też doskonały chwyt marketingowy. Po co ludzie mieliby kupować nowsze procesory, skoro obecne są w zupełności wystarczające - i będą przez następne 10 lat? Teraz już mają powód :-)

Zastanawiające jest również, jak to możliwe, że AMD (główny konkurent Intela) popełniło podobny błąd? Zmowa? Ukradli sobie nawzajem technologie? A może Illuminati? (to ostatnie to żart).

smp
Początkujący
Posty: 238
Rejestracja: 21 maja 2013
Reputacja: 65
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: smp » środa, 17 stycznia 2018, 11:52

Nie rozumiecie.

Podatność na tego rodzaju atak może dotyczyć każdego procesora, który używa pamięci podręcznej. Po prostu odkryto metodę, w pewnych miejscach udało się tą metodę zastosować. Ale tego jak tą samą metodą zastosować w innym miejscu jeszcze nie odkryto... ale jak zaczną kombinować to możliwe, że znajdą...

A poza tym podejrzewam, że może się ujawnić także w jeszcze jednym zupełnie nieoczekiwanym miejscu... mianowicie w dyskach twardych... bo tam też da się mierzyć czasy dostępu do różnych obszarów (programy diagnostyczne to robią)

jakiś czas temu udowodniono, że można dokonywać skutecznych ataków na funkcje hashujące w kryptografii analizując czas wykonywania (atak timingowy).. od tego się chyba to zaczęło

w mojej ocenie wymaga to wprowadzenia solidnych mechanizmów zarządzania czasem.... byłoby to tylko na korzyść użytkowników.... komputery wreszcie przestałyby mulić.... dotychczas wszystko szło pustą wydajność, widoczną jedynie w benchmarkach... system nie potrafi poprawnie zarządzać czasem

Początkujący
Posty: 8
Rejestracja: 16 stycznia 2018
Reputacja: 0
Reputacja postu: 
0
Napiwki za post: 0 BTC

MELTDOWN i SPECTRE - mamy prze...ne

Postautor: flasht » środa, 17 stycznia 2018, 15:01

Tylko kto by się w tym babrał na 10-letnich procesorach? Nie ma to najmniejszego sensu ani dla naukowców ani dla hackerów.

Wróć do „Bezpieczeństwo”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 2 gości