Rowhammer Bug:攻擊記憶體的值...

GoogleProject Zero 實做 Rowhammer Bug:「Exploiting the DRAM rowhammer bug to gain kernel privileges」。

開頭就很科幻:

“Rowhammer” is a problem with some recent DRAM devices in which repeatedly accessing a row of memory can cause bit flips in adjacent rows.

然後就提到實做了:

We tested a selection of laptops and found that a subset of them exhibited the problem. We built two working privilege escalation exploits that use this effect.

給出了 NaCl sandbox escape 與 Kernel privilege escalation 兩種方式。

這頭快炸了...

jQuery 1.11.2 與 2.1.3 修正 iOS 8 上 Safari 7.1/8 的嚴重 bug

看到 jQuery 官方放出一個特別更新,專門為了 iOS 8 + Safari 7.1/8 的修正:「jQuery 1.11.2 and 2.1.3 Released – Safari Fail-Safe Edition」。

依據「Test failure on iOS 8: child and adjacent -> p#firstp + p」的說明,死在 document.querySelectorAll("p#firstp + p") 這邊,另外以下的 selector 也都掛掉:

p#a + p
p#a ~ p
.b#a ~ [id]
[style]#a ~ p

由於這個用法太基本,讓 jQuery 官方決定在 library 放 workaround 修正這個問題...

NSA 從兩年前就知道 OpenSSL 的 Heartbleed bug...

依據 Bloomberg 的報導,NSA 兩年前就知道 OpenSSLHeartbleed bug 了:「NSA Said to Exploit Heartbleed Bug for Intelligence for Years」。

翻了 GitHub 上的 mirror 記錄,可以發現是在 2012/01/01 commit 進去的:「commit 4817504d069b4c5082161b02a22116ad75f822b1」,幾乎是一開始就知道了?

苦啊...

PostgreSQL 對 security update 的極端作法...

Hacker News 文摘上看到,PostgreSQL 決定對這次的 security update 採取最極端的作法:「Extra security measures for next week's releases」。

包括全面管制 Git repository 公開資訊:官方的 Git repository 將會在正式釋出修正前限制只有 committer 可以存取,並且暫停 GitHub 以及其他 git mirror 權限。

另外 mailing list 也受到管制,包括了 src commit log 以及 document commit log。

信件開頭就提到這次安全性漏洞足以說服 PostgreSQL 的人採取最極端的作法,避免在有修正方案前造成漏洞洩漏出來被使用:

The core committee has decided that one of the security issues due to be fixed next week is sufficiently bad that we need to take extra measures to prevent it from becoming public before packages containing the fix are available. (This is a scenario we've discussed before, but never had to actually implement.)

不過這反而讓人更關注,甚至上了 Hacker News 熱門榜...

用 JavaScript 遠端攻陷 Intel Core2Duo...

Hacker News 上看到了「Intel Core2Duo cpu cache controller bug PoC」,透過 JavaScript 遠端攻擊 Intel Core2Duo,直接突破所有 application & OS 保護機制... exploit 說明裡提到測過 Intel Core 2 Duo T5750Intel Atom N270 這兩顆 CPU。

另外,從 exploit 給的資料中,可以找到 Kris KasperskyHITB 2008 給出來的 PDF:「Remote Code Execution through Intel CPU Bugs」。

居然用 JavaScript 戳...

Update:很像是假的:「http://news.ycombinator.com/item?id=4246338」。

AMD CPU bug 問題...

去年年底時 Matthew DillonDragonFly BSD mailing list 上的說明:「Buildworld loop seg-fault update -- I believe it is hardware」,以及今年三月從 AMD 確認問題「AMD cpu bug update -- AMD confirms! (additional info)」。

可以從 mailing list 上看到他想辦法重製問題的方法 (從兩天才能重製,到小於 60 秒就能重製),讓他覺得最棘手的原因是無法引入工具:

Debugging the issue in userland (and kernelland) is extremely difficult because most debugging mechanisms caused the problem to stop occuring.

當故事看還蠻... 有趣?(當事人大概不這麼覺得)

最近出新版的 Java 7 的 bug...

在「Java 7 Ships With Severe Bug」這邊提到最近出新版的 Java 7 有 bug,在 Solr 的警告文案裡面有提到這三個 bug:

由於有幾個 bug 是在 Java 7 正式釋出的最後階段被找出來,再加上制式流程的關係,即使會爛掉 (產生 SIGSEGV),Oracle 還是無法承諾下個 Update (也就是 u1) 會更新,只能保證在 u2 會更新:「sigsegv on porter stemmer (Lucene, but also otherwise)」。

在「Don’t Use Java 7, For Anything」這篇就更直接了,直接說 Java 7 目前是個不能用的 GA Product:

Don’t use Java 7 for anything (unless maybe you know you don’t have any loops in your java code)

先繼續觀望,目前跑 Cassandra 的機器還是先不要亂動...

Ubuntu x86_64 上 Flash 畫面會閃爍的問題...

這個 bug 只有在某些站才會出現,像是 SlideShare 的投影片一定會閃,InfoQ 也有同樣情況。是 allowTransparency 產生的問題嗎?不清楚...

Ubuntu 目前系統內是使用 10.2 版,換成 10.3 (目前是 beta) 就會正常了,同樣是透過 PPA 就可以安裝:

sudo apt-add-repository ppa:sevenmachines/flash
sudo apt-get update
sudo apt-get install flashplugin64-installer

不過 10.3 對 BBO 有點感冒啊...

MySQL HandlerSocket 的情況...

前幾天 jnlinOSDC.TW 2011 上面講了「HandlerSocket – A NoSQL Plugin for MySQL」,剛好 Percona 的 Ryan Lowe 也提到了「What’s up with HandlerSocket?」,試著分析 (並猜測) HandlerSocket 為什麼沒有被廣泛使用。

除了技術的問題外,最主要在於運作:Open Source 不是把程式丟出來就覺得沒事了,要僅可能讓使用者容易使用。

比較好運作方式是在重大的 bug 修掉之後就推出 minor version release,一方面讓一些願意整合的單位有「基準」可以整合 (像是 Percona 這樣的公司),另外一方面可以讓 community 感覺是個有在動的 project...

像是文章裡提到的兩個 bug,一個在今年年初已經修正 (write invalidate),另外一個大約兩個禮拜前修正了 (insert auto-increment),只是很多人不太清楚而已。

目前這個專案的感覺跟 Facebook 丟出來的 memcached 還蠻像的:「facebook / memcached」,Facebook memcached 的情況是很明顯「老闆說要 open source,我就丟出來吧」的感覺,原來的 community 也懶的理他,看一看有沒有可以用的 code 可以整合,然後繼續發展自己的...