2016-01-05 94 views
0

緩衝區漏洞,我讀this article,不能讓他走,因爲我無法理解的問題,實際上是什麼。它癢了我的大腦。使用WebSockets模塊

所有我能理解是:

的WS模塊有一個ping的功能。

由於內部WS平轉換到一個緩衝區實例的所有我們發送的數據,就可以分配的字節數量較大,如果緩衝區有一個數字,而不是字符串。

所以WS使用new Buffer(100);,除new Buffer('100');分配更多的字節,這是不好的,因爲我們分配(=使用,綁定,牽制)多個字節,使服務器更加努力地工作,當我們能讓他少工作。

就是這樣。關於「返回的非零緩衝區」和內存泄漏的部分對我來說都是火箭科學。

服務器和緩衝區是不是我的強項,所以我可以使用正在發生的事情在一個簡單的解釋。

回答

1

該文章披露了該漏洞,客戶端可能能夠接收包含從服務器的一些隨機存儲字節的乒乓響應。在某些情況下,該內存可能包含來自服務器的私密/祕密內容,因此被認爲是不安全的做法。這不是關於讓服務器工作更難,而是關於存儲在服務器內存中的東西的安全性。

由於nodejs分配緩衝區的方式,本文描述了在pong請求中可能被意外發送到客戶端的未初始化內存將是以前用於緩衝區分配的內存,而不是來自服務器的任何隨機內存。

的「泄漏」是指是的信息無意泄漏從服務器到外界,而不是服務器上的存儲器泄漏。

該問題似乎已經在ws模塊的1.0.1版中得到修復。

+0

@slevin - 這是回答您的問題嗎? – jfriend00