2013-10-21 197 views
0

運行腳本的NodeJS以root身份時,我已經建立了,它會監聽端口上node.js的一個HTTP服務器Whar是安全concenrs。但是,傳統上小於1024的端口需要提升權限。因此,我不得不使用sudo來執行我的服務器:在Linux操作系統Ubuntu

sudo nodejs httpserver.js 

人說運行的服務器作爲根是一個很大的不,不here,我應該使用1024以上其它端口和重定向到80,而不是讓我不要必須是root才能執行腳本。但爲什麼?什麼是安全漏洞,有哪些擔憂?

回答

4

如果您的httpserver.js腳本中存在漏洞,攻擊者可以使node.js進程運行任意代碼,那麼該任意代碼將以root身份運行。你必須假設這樣的漏洞確實存在。

+0

另外,你不必以root身份運行,有很多選擇。 'setuid',使用'nginx'代理,無論如何。以root身份運行**任何內容都可以從外面訪問...... – TC1

相關問題