2010-03-05 71 views
1

通常我們定義iis網站,它允許匿名身份驗證在具有非常有限權限的IUSR_ComputerName帳戶下運行。例如,我們可能會決定它無法訪問文件系統。這是如何使我們的網站更安全?無論如何,用戶無法運行代碼 - 只有我們的網站代碼運行,並確保它不會造成任何傷害。爲什麼網站在權限較低的用戶帳戶(IUSR_ComputerName)下運行?

編輯:我明白爲什麼在安全方面很好(例如iis exploit)。我的問題是,如果有任何直接的原因。例如,如果我永遠不會在SQL Server上給予訪客帳戶完整的權限,因爲它會立即讓他完全控制我的服務器。這似乎並不是iis的情況。

回答

2

,我們要確保它不會造成任何傷害

你可以永遠肯定它不會造成任何傷害。有一天,它可能會被利用,可能是特權較低的用戶會保存你的數據。沒有冒犯,但沒有人寫完美的代碼,因此沒有代碼是沒有漏洞的。

1

如果您有任何網絡服務,您應該假定互聯網上的一些隨機人員在您的機器上有一個命令提示符,作爲該服務的所有者運行。

現在問一下用戶的好處是什麼樣的?

+0

但是這個socket與一個只允許運行我寫的代碼的web服務器通信。 – 2010-03-05 22:13:50

+0

套接字採用任意數據並將其寫入內存 - 如果您是好的(或幸運的)它不會執行該數據! (如果你真的不相信這個,查找緩衝區溢出) – 2010-03-05 23:25:12

0

通常情況下,您可能需要以一種比安全性更低的方式運行您的網站,比如域服務器或交換機。例如,您可能需要允許FTP訪問。顯然,互聯網網站需要從互聯網上訪問,所以你不能簡單地阻止所有訪問你的防火牆。

由於存在較高的漏洞,因此謹慎使用權限有限的帳戶運行服務。在惡意用戶成功複製自己的程序以在服務器上運行的情況下,這些程序對於他們可以做什麼會有嚴格的限制。

0

您可以在服務器上運行代碼,例如,如果未設置權限,則可以刪除目錄中的文件。

+0

這怎麼能用POST和GET命令完成? – 2010-03-05 22:18:40