2
A
回答
0
到目前爲止,最簡單的方法是以很少的權限創建一個新用戶,然後以該用戶的身份運行該程序。
但是,要做到這一點的方法取決於系統,linux可以運行useradd
,而windows幾乎肯定可以通過windows api實現。
3
我不認爲這是一個必然的C問題。
一個常見的技術是在'chroot jail'中運行程序。
如果您想從C程序中自行完成,請使用系統調用chroot
(man 2 chroot)。
兩種方法都限制程序在文件系統的有限(葉或樹枝)部分運行。這將程序限制爲只要您想放入該目錄和子目錄。它不能超過它被chroot化的目錄,所以系統相對安全。
這可能需要很多照顧才能正確編程,所以我建議首先嚐試使用chroot命令。
不知道Windows是否具有類似的機制,但是* NIX和Mac可以。
如果這是'真實的'看看一些越獄引用,例如 http://www.unixwiz.net/techtips/chroot-practices.html
相關問題
- 1. cabal通過沙盒從Hackage安裝可執行文件?
- 2. 使用NSTask啓動可執行文件 - 沙盒問題?
- 3. 在沙盒環境中執行文件並進行跟蹤
- 4. 沙盒中的沙盒5.2
- 5. Objective-C中的NSBundle沙盒
- 6. NSAppleScript執行在沙盒應用
- 7. 沙盒PHP Phar文件
- 8. iPhone沙盒規則文件
- 9. 沙盒應用程序沙盒後NSSavePanel未保存文件
- 10. iphone,在沙盒中寫入csv文件
- 11. C++沙盒動態庫
- 12. 訪問沙盒外的視頻文件
- 13. C#可執行文件執行目錄
- 14. 從我的沙盒中的命令行
- 15. 沙盒排行榜空
- 16. 使用iframe進行沙盒?
- 17. sharepoint 2010創建文件夾沙盒
- 18. Mac App Store沙盒 - 寫入新文件?
- 19. 沙盒APNS環境&.mobileprovision文件
- 20. 拖動文件遇到沙盒(__ CFPasteboardIssueSandboxExtensionForPath)
- 21. xcode - 將* .ogg文件添加到沙盒
- 22. 訪問鉻沙盒文件系統
- 23. 將iCloud文件複製到沙盒
- 24. iOS,配置文件和沙盒
- 25. 執行使用Powershell執行的C#可執行文件出錯
- 26. 沙盒Web部件中的SqlClientPermission
- 27. 是否可以在瀏覽器的沙盒中運行輸入到文本框中的C++或C#代碼?
- 28. 沙盒插件架構
- 29. Xcode中的應用沙盒
- 30. 在沙盒可可應用程序中捆綁NPAPI插件
您可以使用chroot jail。我不確定是否有跨平臺的方式,但對於Mac/Linux來說,這是微不足道的。 – Blender 2012-03-25 20:36:16
您應該考慮在虛擬機中運行。 – 2012-03-25 20:36:21
你可以試試[Capsicum](http://www.cl.cam.ac.uk/research/security/capsicum/)。 – chrisaycock 2012-03-25 20:36:55