Windows

Windows 下 NTFS 上的“noexec”選項?

  • October 7, 2011

Windows 上是否有等效的文件系統選項,例如 Linux 上的“noexec”掛載選項?如果我設置“讀取”權限,但在根目錄(整個驅動器)上取消設置“讀取和執行”權限,是否相同?對於本地使用者,也適用於訪問 Windows Server 機器上共享目錄的 LAN 使用者。

我想知道我是否可以禁用從數據驅動器/分區執行程序的任何類型或可能性,包括不能創建它自己的子目錄並對其設置執行權限。因此使用者必須能夠讀寫,但不能執行任何程序,包括 BAT。當然,這是關於惡意軟體的安全性。有可能嗎?

對於 Windows 中的文件系統,沒有類似的“noexec”掛載。Microsoft 對簡單“讀取”權限的概念包括執行權(因為執行實際上只是載入程序將圖像讀入記憶體)。

您可以修改“高級”版本的權限以刪除(或拒絕)“遍歷文件夾/執行文件”權限。這將防止 .EXE 文件的點兩下或命令行執行。.BAT 和 .CMD 文件不會通過在資源管理器中點兩下來執行,但它們仍將通過命令提示符或使用“開始/執行”中的語法“CMD /c”來執行。

更改權限會破壞“noexec”掛載的“類比”,因為“noexec”不需要對掛載卷的權限進行任何修改。

您最好將軟體限制策略視為完成您正在尋找的東西的一種方式。此工具更改用於執行程序的 API 的行為,以限制可以執行程序的路徑(或通過數字簽名或加密雜湊)。假設您的本地使用者沒有“管理員”權限,則此功能在某種程度上是有效的。

但是,最終,如果電腦上有任何文件系統位置允許使用者寫入文件和執行,則使用者可以將程序從受限執行路徑複製到該位置並從那裡執行程序。您需要非常努力地確保沒有這樣的位置。

或者,可以在“預設拒絕”模式下使用軟體限制策略,其中只有指定的路徑(或數字簽名或加密雜湊)將允許執行。這也很難設置,因為您需要測試所有應用程序以確保它們的執行成功。

您沒有提及您正在談論的Windows版本。對於 Windows 7 和 Windows Server 2008 R2,軟體限制策略是AppLocker的一部分,功能相似。

引用自:https://serverfault.com/questions/90135