表示暫時(shí)沒(méi)有nodejs的領(lǐng)域,而nodejs在國(guó)內(nèi)我也就在阿里云上見(jiàn)過(guò)一次,所以發(fā)到這來(lái)。
poc在這:https://gist.github.com/2628868
官方公告在這:http://blog.nodejs.org/2012/05/07/http-server-security-vulnerability-please-upgrade-to-0-6-17/
簡(jiǎn)單翻譯一下,由于StringPtr里Updae方法存在錯(cuò)誤,(如何觸發(fā)?可以在任意一個(gè)http request中,發(fā)送一個(gè)value長(zhǎng)度為0的header,這樣在node http_parse的時(shí)候就會(huì)觸發(fā)。否則平時(shí)直接走到StringPtr:save方法,就無(wú)法利用了),當(dāng)攻擊者發(fā)送一些特定設(shè)置好的payload時(shí)(具體看poc),由于server的解析錯(cuò)誤,會(huì)導(dǎo)致將另一個(gè)socket請(qǐng)求中的內(nèi)容錯(cuò)誤的保存為此header的value,導(dǎo)致他人信息泄露。
btw,說(shuō)起來(lái)很繞,聽(tīng)起來(lái)很好玩,但鄙人琢磨,這個(gè)漏洞估計(jì)也就只有些研究?jī)r(jià)值了。。。。