■ このスレッドは過去ログ倉庫に格納されています
【IT】インテルを突如襲った「致命的なバグ」の実態 この問題は、いったいどれだけ深刻なのか
- 222 :名無しさん@1周年:2018/01/06(土) 18:08:38.66 ID:pLVuUROk0.net
- >>217
この脆弱性は、投機実行ではアクセス権のチェックを行わずにアクセスが行われることを利用している。
投機実行されてアクセスされた値を元に、メモリのアクセスを行う。値自身は、投機実行が使われない
ことが確定した段階で捨てられてしまうが、その値を元にアクセスした痕跡はキャッシュに残ってしまう。
どのアドレスがアクセスされたのかを、改めて当該アドレスを読み出した時の読み出しにかかった時間で
判断する、というのがこのアタックの原理。
したがって、高精度な時刻計測の手段が必要。実際、いまのJavaScriptはJITでコンパイルされて
実行されることと、高精度なクロック(パフォーマンスカウンタ)が利用できるため、Java Scriptであっても
このアタックは可能です。
応急対策として、高精度に時間を図る機能の精度が落とされることになりました。FireFox, IE, Edge
Chromeすべてで実施される模様。
if flag then /* このフラグはFalseに設定しておく */
x = mem[attack_address] /* 投機実行で実行されるが、本来は実行されない */
d = my_array[(x and 1)*4096] /* ここで、キャッシュに痕跡を残す */
end if
/* ここから、 x の値のbit0 の値を知ることができる*/
t0=Peformance.now
for_check = my_array[0]
t1=Performance.now
if t1-t0 > threshold then
print("bit value is 1")
else
print("bit value is 0")
endif
総レス数 387
93 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★