Re: [情報] Linux之父對CPU漏洞門爆粗口:修復補丁一

看板PC_Shopping作者 (1 2 3 4 疾風炭)時間6年前 (2018/01/24 16:59), 6年前編輯推噓35(361102)
留言139則, 27人參與, 6年前最新討論串3/3 (看更多)
http://xiaoliniess.space/index.php/2018/01/07/spectre-meltdown-and -cpu-speculative-execution-issues/ 這邊有解釋Google的Retpoline機制是怎麼運作的 簡單的說 就是利用ret取代了jmp 透過對編譯器的修改 去愚弄CPU的預測載入機制 這篇也提到了 由於AMD的運作機制不一樣 一樣的code Intel展開以後的asm會比AMD的複雜 也因此AMD理論上會受到比較低的懲罰 那回到這次的問題 為什麼Intel會這麼急著推出更複雜的機制 而不是單純靠引入Retpoline機制呢? https://lwn.net/Articles/745111/ All relevant CPUs have the ability to speculate on RET using the return stack buffer (RSB)—that's what makes retpolines work in the first place. The problem with Skylake (and presumably also Kaby Lake and later) is that if the RSB is empty, it can speculate RETs using the normal branch predictor mechanisms, which are vulnerable to Spectre. Forcing an empty RSB is not trivial—it can happen on IRQs (including SMM interrupts), or if the call stack gets more than 16 entries deep (old entries get popped off on CALL, and then on the 17th RET, you've forgotten where you originally came from). The question is how to weigh the risk of such nontrivial attacks versus the cost of enabling IBRS. LWN這邊的討論給了個可能的答案: 由於Skylake (甚至是以後的CPU? 看LKML的討論沒說不過可以合理懷疑7/8代都有?) 即使套用了Retpoline機制 也會因為更"先進"的分支預測技術 跳過了Retpoline的保護 也就是說 6代(以後?)的Intel CPU單靠Retpoline依然受到威脅 現在問題就是 為了完善保護開啟IBRS機制 vs 極嚴重的性能懲罰 到底你要選哪一個 ---- 居然是更新世代的CPU漏洞更大.... -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.28.197 ※ 文章網址: https://www.ptt.cc/bbs/PC_Shopping/M.1516784398.A.724.html

01/24 17:03, 6年前 , 1F
不是更新的漏洞更大
01/24 17:03, 1F

01/24 17:03, 6年前 , 2F
這年頭要當I黑很朝,但是也要有所本
01/24 17:03, 2F

01/24 17:04, 6年前 , 3F
這篇文章是說 1) google的補丁法叫Retpoline
01/24 17:04, 3F

01/24 17:05, 6年前 , 4F
2) 但是intel沒有採用google的方法,而用了個更慢
01/24 17:05, 4F

01/24 17:05, 6年前 , 5F
的方法
01/24 17:05, 5F

01/24 17:06, 6年前 , 6F
修正內文 我是要表示更新世代的CPU漏洞更大
01/24 17:06, 6F
※ 編輯: kira925 (140.113.28.197), 01/24/2018 17:06:13

01/24 17:06, 6年前 , 7F
3) 為什麼不用Retpoline??猜測是因為skylake含以後
01/24 17:06, 7F

01/24 17:06, 6年前 , 8F
所用的分支預測太強大了,用Retpoline補不住
01/24 17:06, 8F

01/24 17:08, 6年前 , 9F
感謝指正
01/24 17:08, 9F

01/24 17:08, 6年前 , 10F
所用的分支預測太強大(X)作弊換效能的程度更大了(O)
01/24 17:08, 10F

01/24 17:13, 6年前 , 11F
為了提高IPC做得越來越激進
01/24 17:13, 11F

01/24 17:26, 6年前 , 12F
所以intel是靠偷吃步提升ipc嗎?
01/24 17:26, 12F

01/24 17:27, 6年前 , 13F
分支預測預載是大家都要作的 只是為了性能無視權限
01/24 17:27, 13F

01/24 17:27, 6年前 , 14F
得太嚴重 IPC是上升了但是漏洞又比以前更大
01/24 17:27, 14F

01/24 17:29, 6年前 , 15F
一定是的啊 不然要買AMD?
01/24 17:29, 15F

01/24 17:34, 6年前 , 16F
路過打卡,等intel倒了再叫我...
01/24 17:34, 16F

01/24 17:37, 6年前 , 17F
抄捷徑超太大被抓包GG
01/24 17:37, 17F

01/24 17:38, 6年前 , 18F
F1比喻的話大概像是 切西瓜以後賽事裁罰得來速
01/24 17:38, 18F

01/24 17:38, 6年前 , 19F
結果發現這傢伙切西瓜得太過火 還要罰進pit重新出來
01/24 17:38, 19F

01/24 17:40, 6年前 , 20F
往好處想Intel如果舊型的分支預測洞補的起來 牙膏縮
01/24 17:40, 20F

01/24 17:40, 6年前 , 21F
一下還有救
01/24 17:40, 21F

01/24 17:40, 6年前 , 22F
如果是牙膏的分支預測全死的話....
01/24 17:40, 22F

01/24 17:41, 6年前 , 23F
所以IPC的進步是切西瓜來的嗎
01/24 17:41, 23F

01/24 17:41, 6年前 , 24F
大家都是切西瓜 只是i家程度更嚴重
01/24 17:41, 24F

01/24 17:42, 6年前 , 25F
我覺得問題是會不會性能黃金交叉
01/24 17:42, 25F

01/24 17:42, 6年前 , 26F
至少五代以前 目前看來還能靠Retpoline
01/24 17:42, 26F

01/24 17:42, 6年前 , 27F
分支預測本身就算西瓜吧
01/24 17:42, 27F

01/24 17:42, 6年前 , 28F
不過一樣的Retpoline AMD大概是歸還位置這種感覺
01/24 17:42, 28F

01/24 17:43, 6年前 , 29F
Intel就是得來速甚至是進PIT了...
01/24 17:43, 29F

01/24 17:43, 6年前 , 30F
只是牙膏的西瓜刀切太歪(?)
01/24 17:43, 30F

01/24 17:45, 6年前 , 31F
不過之前紙大師的說法 Ryzen不需要用到Retpoline
01/24 17:45, 31F

01/24 17:45, 6年前 , 32F
不是啦 F1的切西瓜不是那意思XD
01/24 17:45, 32F

01/24 17:46, 6年前 , 33F
F1那切西瓜的意思是抄捷徑XD
01/24 17:46, 33F

01/24 17:47, 6年前 , 34F
RyZen也是要Retpoline吧 後來看討論還是要上
01/24 17:47, 34F

01/24 17:47, 6年前 , 35F
但是沒有Meltdown 然後Retpoline的深度也比較淺
01/24 17:47, 35F

01/24 17:47, 6年前 , 36F
我知道F1的切西瓜w
01/24 17:47, 36F

01/24 17:48, 6年前 , 37F
啊 重看了一下 他後來改口了
01/24 17:48, 37F

01/24 17:48, 6年前 , 38F
01/24 17:48, 38F
還有 61 則推文
還有 1 段內文
01/25 02:08, 6年前 , 100F
intel分支預測很aggressive
01/25 02:08, 100F

01/25 02:44, 6年前 , 101F
我覺得我看不懂 先推一下提昇文字理解力
01/25 02:44, 101F

01/25 12:13, 6年前 , 102F
分支預測很aggressive 翻譯: 偷吃步更誇張
01/25 12:13, 102F

01/25 17:12, 6年前 , 103F
inyel branch prediction 可以去問台大賴飛羆 他以
01/25 17:12, 103F

01/25 17:12, 6年前 , 104F
前说台大资工一位葉學長在intel 出力甚多 哪來的偷
01/25 17:12, 104F

01/25 17:12, 6年前 , 105F
做弊 不懂別乱說
01/25 17:12, 105F

01/25 17:20, 6年前 , 106F
Tse Yu Yeh 也算是台灣之光
01/25 17:20, 106F

01/25 19:52, 6年前 , 107F
用簡體字在講112的事情超沒說服力的你知道嗎...
01/25 19:52, 107F

01/25 19:54, 6年前 , 108F
我覺得meltdown可以稱作偷吃步,但Spectre的部份該
01/25 19:54, 108F

01/25 19:54, 6年前 , 109F
算是歷史共業
01/25 19:54, 109F

01/25 19:57, 6年前 , 110F
就實作來說 還是有差距的
01/25 19:57, 110F

01/25 19:57, 6年前 , 111F
本來Speculative Prediction就是在偷吃步
01/25 19:57, 111F

01/25 19:58, 6年前 , 112F
差距只是 有些東西你可以拿 有些不能拿 今天是大家
01/25 19:58, 112F

01/25 19:58, 6年前 , 113F
都拿了不該拿的東西 情節輕重有差而已
01/25 19:58, 113F

01/25 19:59, 6年前 , 114F
想想也是,如果都沒有偷吃步的成份,就不會拿到不該
01/25 19:59, 114F

01/25 19:59, 6年前 , 115F
拿的東西了
01/25 19:59, 115F

01/25 19:59, 6年前 , 116F
這個只能說是現代電腦系統太複雜了,做了最佳化反而
01/25 19:59, 116F

01/25 19:59, 6年前 , 117F
至於說什麼 某某名人出力多少 也可以反過來看
01/25 19:59, 117F

01/25 19:59, 6年前 , 118F
沒有去注意到設計的安全性保護的問題
01/25 19:59, 118F

01/25 19:59, 6年前 , 119F
當年如果更小心點 畢生心血就不會沾上汙點
01/25 19:59, 119F

01/25 20:00, 6年前 , 120F
但這不代表他們設計的分支預測機制是壞的
01/25 20:00, 120F

01/25 20:00, 6年前 , 121F
而是不夠完善 實作沒有考慮安全問題
01/25 20:00, 121F

01/25 20:02, 6年前 , 122F
最近在跟做compiler的朋友聊天,他說底層轉asm有很
01/25 20:02, 122F

01/25 20:02, 6年前 , 123F
多搞不清楚為什麼這麼轉換的部份,實際去查就是一篇
01/25 20:02, 123F

01/25 20:03, 6年前 , 124F
篇不同的最佳化論文疊起來的結果。但是改成人類直觀
01/25 20:03, 124F

01/25 20:03, 6年前 , 125F
的轉換方式效能也不會差多少的感覺。問題來了,如果
01/25 20:03, 125F

01/25 20:04, 6年前 , 126F
背後的依據不是最佳化的論文,而是安全性的論文,是
01/25 20:04, 126F

01/25 20:04, 6年前 , 127F
不是一改就馬上造成漏洞了呢?
01/25 20:04, 127F

01/25 20:04, 6年前 , 128F
就像Google發表的Retpoline,十年後會不會有工程師
01/25 20:04, 128F

01/25 20:05, 6年前 , 129F
覺得這麼做太沒效率了,然後又把Spectre解封XD
01/25 20:05, 129F

01/25 20:06, 6年前 , 130F
其實現在如果能弄出個兼顧效率與權限的新分支預測
01/25 20:06, 130F

01/25 20:06, 6年前 , 131F
就又是一大票論文可以發表了
01/25 20:06, 131F

01/25 20:07, 6年前 , 132F
retpoline很有趣的是 直接教育分支預測器怎麼走
01/25 20:07, 132F

01/25 20:08, 6年前 , 133F
這樣解決Spectre真的很漂亮 只是沒人想到Skylake
01/25 20:08, 133F

01/25 20:08, 6年前 , 134F
最佳化作得太好...
01/25 20:08, 134F

01/25 21:58, 6年前 , 135F
我說稱之為更激進
01/25 21:58, 135F

01/25 22:11, 6年前 , 136F
我覺得如果他有檢查權限的話 確實是更先進阿…如果
01/25 22:11, 136F

01/25 22:20, 6年前 , 137F
檢查權限在meltdown就知道問題了吧...
01/25 22:20, 137F

01/25 22:21, 6年前 , 138F
然後分支預測跑更遠姑且不論安全性 我認為稱之激進
01/25 22:21, 138F

01/25 22:21, 6年前 , 139F
應該沒什麼問題
01/25 22:21, 139F
文章代碼(AID): #1QQ4iESa (PC_Shopping)
文章代碼(AID): #1QQ4iESa (PC_Shopping)