AMDが3月に公開したホワイトペーパーにおいて、Zen 3アーキテクチャのCPU(Ryzen 5000やEPYC 7003シリーズ)に新たに実装された「Predictive Store Forwarding」(PSF)機能に、分岐予測を悪用したサイドチャネル攻撃手法「Spectre」に似た潜在的な脆弱性があることが明らかにされた。
PSFはハードウェアベースによるマイクロアーキテクチャレベルの最適化機能で、ロード/ストア間の依存関係を予測し、コード実行のさいの性能を向上させられる。しかしこの予測が外れた場合、Spectre v1/v2/v4と同じようなサイドチャネル攻撃の手法が悪用できてしまう可能性があるという。
CPUは、ストア命令で最近書き込まれたアドレスに対し、ロード命令を実行するのが一般的。このため、最近の多くのプロセッサでは「Store-To-Load-Forwarding(STLF)」と呼ばれる手法を実装していて、ストア命令のデータを待機せずにロードを行なう。このさいにロードとストアの両方のアドレスを比較して一致を判断するのだが、PSFではこの関係を待たずに推測を行なう。
ほとんどの場合、PSFによる予測は正確なのだが、いくつかのケースにおいて正確ではない推測をしてしまう。1つはプログラムの実行中にストアとロードのいずれかのアドレスが変更された場合、もう1つはPSF予測の子構造に依存関係のないエイリアスがある場合だ。このため分岐予測が外れたさいに、セキュリティコントロールを回避でき、Spectreのようなサイドチャネル攻撃が行なえてしまう。
このような攻撃に対し、サンドボックスのようなソフトウェアによる保護機構では対策が不十分で、データが漏洩するおそれがある。一方でハードウェアのメカニズムを使い、アドレス空間を完全に分離させた場合、PSFの脆弱性は発生しない。
それでもソフトウェアサンドボックスの手法を使いつつ、セキュリティを確保したい場合、制御ビットを変更することでこの機能無効にできる。「MSR 48h bit 2」は投機的ストアバイパス無効(SSBD)の制御、「MSR 48h bit 7」はPSF無効(PSFD)で、値を1にすることで無効にされる。
PSFの実装は性能向上と引き換えにセキュリティにも影響するが、現在このような攻撃を行なうコードは確認されておらず、セキュリティリスクの可能性は低い。セキュリティ対策が必要な場合、アドレス空間分離などの手法を使えばよいため、AMDは引き続きPSF機能を有効にすることを推奨している。
Impress Watch 4/6(火) 10:36配信
https://headlines.yahoo.co.jp/hl?a=20210406-00000042-impress-sci
緊急事態宣言延長により特別定額給付金+15万円以上
緊急事態宣言2カ月以上からの感染再拡大
さっさと五輪中止して国民全員に一律給付金出さんかい菅
はよ国債発行せんかい麻生
遅い、遅すぎる!! いつまで待たせるんや、はよせんかい
最低限の事も出来んこいつらは必ず選挙で落としてやろう、一掃してやるわ!!
次の選挙では盛大な 自民党・公明党議員 落選祭り開幕や!! キタ━━━━━━(゚∀゚)━━━━━━ !!
非常事態下において国民を苛立たせる利権にまみれた愚策による感染拡大、現状のままでは五輪中止、政権交代 確実!!
後手後手不祥事連発 “金(カネ)に汚い 自公政権” はよせんかい
50万円 特別定額給付金 はよせえ
50万円 特別定額給付金 はよせえ
50万円 特別定額給付金 はよせえ
電波オークション はよせえ
https://news.yahoo.co.jp/articles/51e1941e40c9b6fb8933ea666a723589fe0d6941 アマゾンで激安ででてたやつだよな、これ
そんで買ったやつが歓喜してた
>>6
AMDerが必死にintel sageしてたネタがそっくりそのまま帰ってきた intelみたくパッチあててダウンスペックになるんかな〜
これは問題ないとか斜め上の擁護をするのがAMD fanboyという病気の人たち
どういうコードを書けば、この分岐予測ミスを利用してサイドチャネルアタックを作れるか思いつかない
これでRyzenに脆弱性があると言えるなら、分岐予測を実装したすべてのCPUにSpectre各種の脆弱性があると言えてしまうのでは
>>1,11
元のSpectreのほうがヤバいよ
早く対策しきってね どうやって何を起こしたら、何が可能なのかさっぱりわからん
そんなんより、RYZEN系のノートPCでのスリープバグ(スリープ中で高発熱)が
よっぽど実害あったわ
Zen2はstore to load forwardingでストアした値を持つレジスタを裏で作っておいて
直後にそのアドレスの値を使う命令があるとレジスタ経由でゼロレイテンシでオペランドが供給されるmirroringとかいう面白いことをやってたけど
Zen3はやめたのよね
これを実装したからかな
AMD Ryzen 3 3200G の俺様は無関係って事でおkだよな? 頭の良いお前ら?
>>33
お高いよね
>>30
グラボがすでに必要充分の性能でCPUが足かせになってるならCPUを変える意味はある
バランス見てボトルネック潰してくなら総合性能はキチンと上がるよ >>11
違う
インテルはアウトだがAMDのは可能性があるかな…ぐらいのレベル >>6
CPUが仕事をする時に複数のコアを使う。コアは言ってみれば仕事をするチームで、チームは流れ作業で仕事をしている。
でも現実のCPUの中では現実の会社と同様に前の段階が終わるまでも待ちとか、他のチームが終わるまでの待ちで暇してる奴が大量に発生している。
そこで、役に立つかどうかわからないけど、とりあえず先々にやるかもしれないことを先にやらしておこうという考えが出る。
これは投機的実行と呼ばれる。実際に役に立つのは十回に一回もない(amdはそのくらいあると言っているがない〕けど、逆に言えば、統計的には余ってるリソースで1割近い能力向上ができるので、使われている。
で、この時実行される作業は実際のプログラムからの指示で実行するものではないので、プログラムの指示だった場合になされる諸々のチェックが回避されることがある。
で、悪意のプログラムを分解して少しづつ投機的実行で実行すると悪意のプログラムが普通ならなされるチェックを回避して実行ができる。
理論的には可能だし、一部検証サンプルも作られている。
ただ、現実の脅威にはなっていないし、性能は上がるから次のCPUにもつけときました。嫌ならお客様の方で切ってねという話。 ON/OFFでセキリティとパフォーマンスを切り替えれるようにしてあるのか
本来、依存関係にないストア命令の結果を投機的に後続ロード命令にバイパスする。
もし投機が外れてたら当該ロード命令は無効化されるはずだけど、どういう痕跡から情報を推定するんだろう。
あと、分岐予測が外れたんじゃなくて、ロードストア間の依存予測が外れたの誤植かな。
>>40
アウト〜〜!!
お前の持ってる5600の事を
RYZEN5000シリーズって呼んでるんやでww
RYZENの5000番代のヤツ全部駄目ww よく分からんが自分は3600だから大丈夫なのか
ドンと来い
パフォーマンス上げたらだいたいこの手の脆弱性が出てくるな
暇人に先読みさせてたらえらい事になる可能性出てきたお!
ということか?
乗っ取りもやだけど、使ってる途中にハングするのは困るわ
ちっ、こんなんじゃいつまでたっても3000シリーズが安くならないじゃねえか
>>42
わかりやすい
ありがとうパソコンのおじさん インテルの投機命令が問題になったことと同じ過ちを繰り返してる
学習効果ないのか?😂
結局あれだけ騒いだintelの脆弱性でも有効に使える攻撃には繋がらなかったからな
原理がわかっていれば有効に使えるものか否かはすぐに理解できたはずなのに
馬鹿が騒ぎまくったお蔭で安くシステムを一新することができて嬉しい限りですわ
>>66
UHDBDのキーぶっこ抜かれて規格が死んだんですが Intelを叩いても何も起こらないのに
AMDを叩くとファンボーイが発狂するのはなぜ?
>>42
こういうもっともらしいデタラメ書いて何が楽しいんだろ インテルが出した新商品もゴミだったから、こっちで攻めてきた?
つか、天下のインテルで、これだけ時間たってもRyzen級の作れんモンなの?
>>57
なんでそう思った?
お前は読んでるの?
まだなら読むのは原文が良いよ。わかりやすい。 仮想通貨マイニングで相手のPCを乗っ取りが発生した
この時、使われた言語 JAVAだった
横浜地裁が無知でOSの欠陥を突いてきた問題を見落とし無罪にした経緯がある
MSが苦労してパッチを当てたが、今回の欠陥はかなり苦労しそうだ
Ryzenって明らかに日本語から来てるよな?
日本語が世界ブランドになる時代だ
>>89
すでに他社のCPUがSpectreで大穴あいてるってことになるぞ サイドチャンネル攻撃って、
バーガー買うときに一緒にポテトもどうですか?ってやつ?
まーたバグCPUを爆誕させちまったのか
いつまで経ってもバグだらけ
ユーザーが何度指摘してもイソテノレやアムドは無視してきたからなそのツケってワケ
なんかパイプラインのいろいろな工夫が問題を起こしてる感じだけど
プログラム自体がもっと並列化できればこういう工夫をしなくても
ハードウェアを効率的に使えるとかないのかな
ざまぁw
優位になったとたんにぼったくり値上げ調子に乗りやがって
信者もAMDくたばれやぁw
と、敗北者のインテル汚物たちが喚いておりますw
いつまで14nmやってんねん、昭和脳かな?
と、ブランドや企業を信仰する愚かで醜いカルト害児が喚いておりますw
サイドチャネルは可能性としてはあり得るけど実際に意味のある事できるの?的な話がねぇ
>>97
どんな会社でも10人いたら10人が全員いつも全力で働けるということが実現できたらそういうプログラムも可能かもね。
自然界ですら集団での作業では効率性が著しく落ちる。
ましてや人造物でそんなうまくいく話はない。 >>84
むしろそういう連中が一番被害に遭いやすい。
現実的な攻撃が有ればだが。 >>87
訂正が必要なほど間違いは無いと思うよ。
これで間違った解釈をするなら読み手の問題だ。 ユーザーで切れるなら問題ねえじゃん
インテルは脆弱性爆盛だから勝負になってない
>>104
わかりやすい説明と思う。
ただ、投機的実行が10回に1回というのは本当に?って思うなあ。(自分も統計は知らないけど)
同時発行命令を増やしたり、動的レジスタリネームしてるんだから、プログラム中で投機実行される命令はもっと沢山あるとは思う。
あるいは、この記事の投機的ストアフォワーディングのことを言ってるのかな? >>104
投機実行の説明としては何とも適当すぎる
サイドチャネル攻撃の説明としては完全に間違ってる
件のサイドチャネル攻撃に複数のコアは関係ない
1つのコア内での問題
「チェックを回避して実行できる」わけではない
実行されるはずがないコードが投機的に実行された結果
キャッシュメモリ上にデータがある/ないに影響が出る可能性があって
どのアドレスがキャッシュされているかはロード命令の遅延時間で測定可能だから
それによって本来読む権限のないメモリ上の値を推定するのがSpectre等のサイドチャネル攻撃だ >>107
十回に一回というのは実行タイミングの話じゃなくて実行した際に役に立つか。
日本語わかるか?
>>42
実際に役に立つのは十回に一回もない(amdはそのくらいあると言っているがない〕けど、逆に言えば、統計的には余ってるリソースで1割近い能力向上ができるので、使われている。 >>110
・陰謀だと力説する
例:謀ったな!シャア! >>108
投機的実行というのはマルチコア、深いパイプラインと高速化がなされてきた話の中での高速化手法だよ。
投機的実行説明の中にいきなり悪意のコードの説明が入っていないからと文句を言われてもね。
普通の人は投機的実行自体がわからない。
サイドチャンネル攻撃のコードが通常実行で読めない領域を読めるのは投機的実行ではリンクの規制を回避できるからだ。
つまり諸々のチェックを回避できるということだよ。
何噛み付いているんだ? BroadwellだったかHaswellだったかパッチした途端にもっさりクソ化した覚えがある
>>112
日本語というか、以下がわかりませんでした。
この文脈で、統計的には余ってるリソースってなんですか?
1割近い能力向上とは具体的にはどういうハードで何を動かした時の比較なんですか?(出典を教えてください) >>78
intel→キヤノン
AMD→ニコ爺と置き換えるとわかりやすい 重たいゲームを走らせている最中
バッファ内にクラッキングさせるプログラムを常駐させれば
仮想分岐ルーチンがクラッキングプログラムを読み込み
セキュリティホールを作るとか?
Intelで言うとこのハイパースレッディング切れば解決じゃね
論理コア減るけど
>>78
Intel本体様がAMDやAppleのFUDに夢中 3g4コアあればもう十分じゃね?
グラボも1070で後5年は戦えそうだし
>>85
バクチ回路ってのがi486からあるんよ。
YパイプとVパイプがあって、例えば繰り返し処理があった場合、片方へ直前の繰り返しを実行するんよ。 >>97
コンパイラを設計するのは人間であって、
そこには設計者のクセや思想が大きく反映される。
ホワイトスミスっていうコンパイラが事の始まり 予測の基礎ロジックに問題がある?
意図的な組み合わせで、誘導されちゃうとか?
>>1
早う低電力版SMT付ノートを出してくれや
レノボ以外で Intel使ってる奴にとってはかわいいもの
AMD5000番台で組んだ奴にとってはIntelがどうってことないらしいしどうってことない
どうせ意味判らんから読んでもないけど、対策せんと「アカン!」て事やろ?
ちょっとアメリカ様ー、
チップへの仕込みに執着するのは何か理由が?
これ原理的にはできるけど実装して特定の場所狙うのはなかなか大変そう。
Spectreほどやさしくないように見える
可能性があるというだけの話でまだ確認されてないってのがな
>>117
出典ときたよ、何かよほどへっぽこ君をイライラさせるようなことがあったようだ。
間抜け、他の連中はそれで納得してるんだ、お前か。アホウでわからないなら聞き方があるだろうが。
間抜けはその歳になっても難癖つけてごねることしか知らないか?
アホが。