Come vengono gestiti i bit / byte dopo aver eseguito Meltdown? [chiuso]

-1

Capisco come funziona, ma ad esempio dopo aver letto 4 byte, come si fa a capire se era originariamente un numero intero o 4 caratteri diversi? Entrambi potrebbero dare un risultato significativo.

    
posta user173052 15.03.2018 - 19:33
fonte

2 risposte

2

Lo stesso di tutto, davvero. Ricerca e sperimentazione. Per qualcosa come i dati nel kernel di Linux la fonte è pubblica e puoi sapere quale byte sarà dove (forse è necessario fare il debug del kernel per essere sicuro, ma puoi ancora ottenerlo). È la stessa cosa che dovevi fare per capire quale "cattiva speculazione" dovesse causare per ottenere i dati desiderati nella cache in primo luogo.

Per Windows si farebbe la ricerca tramite le intestazioni nel kernel SDK, o in libri come "Windows Internals". È, ancora una volta, la stessa ricerca che faresti per capire quali compensazioni stai cercando. Il debug del kernel può essere d'aiuto.

L'unico approccio "spray and pray" sarebbe alla ricerca di segnalatori. Alcune strutture dati iniziano con un identificatore di byte di 4 o così così che possono verificare la validità dei dati forniti (in Windows questi tendono ad essere chiamati dwMagic ). Avendo trovato una succosa (ancora una volta, dalla ricerca è necessario sapere che cosa è succosa) si conosce quindi un offset relativo (dalla ricerca) di dove sono i dati che si desidera. Ma c'è molto spazio per gli indirizzi da cercare, quindi "spray and pray" è un po 'inaffidabile.

    
risposta data 16.03.2018 - 17:37
fonte
1

I byte sono byte. Se qualcosa è letto come un numero intero, carattere, immagine, audio, ecc., È una proprietà di un programma, non i dati. Puoi scattare una foto e aprirla in un programma di elaborazione testi, se lo desideri. Esistono varie forme di "metadati" che forniscono informazioni su quale cosa "supposto" debba essere interpretato come, ad esempio, le estensioni di file. Puoi anche verificare se corrisponde a dati tipici di un particolare tipo: puoi verificare se i dati, interpretati come caratteri, formano una parola in una lingua conosciuta, ecc. Ma alla fine, se prendi dati, devi decidere cosa fare fare con esso, e "È stato interpretato come un personaggio?" è solo una piccola parte di questo. Se rubi una password, ad esempio, devi capire quale sia la password per .

    
risposta data 16.03.2018 - 22:55
fonte

Leggi altre domande sui tag