2012-06-16 28 views
5

Tôi gặp sự cố Tôi không thể tìm thấy câu trả lời, mặc dù tôi chắc chắn rằng đó là câu trả lời. Có cách nào tôi có thể vô hiệu hóa đăng ký và truy cập tập tin cho một quá trình mới được tạo ra? Tôi đang sử dụng các đối tượng Job (http://msdn.microsoft.com/en-us/library/windows/desktop/ms682409(v=vs.85).aspx) và nó nói để thiết lập các điều khoản cho mỗi quy trình công việc mới, và trong một vài cuốn sách tôi đã đọc rằng những thứ như đăng ký và truy cập tập tin có thể được kiểm soát.Vô hiệu hóa quyền truy cập đăng ký cho quy trình cụ thể (WinAPI)

Khi tìm kiếm câu trả lời, tôi thấy rằng tôi cần thêm LUID cho những thứ như SE_BACKUP_NAME và bất kỳ thứ gì được gọi) nhưng không có hằng số đặc quyền nào phản ánh loại điều khiển tôi muốn. câu hỏi chính xác là: Làm thế nào tôi sẽ đi về việc vô hiệu hóa đăng ký/ghi tập tin truy cập cho một quá trình mới được tạo ra trong một công việc?

Tôi đang cố tạo ứng dụng hộp cát, btw. Điều này là để tôi có thể ngăn không cho nó thực hiện bất kỳ thay đổi nào đối với sổ đăng ký hoặc viết bất kỳ tệp nào trong khi nó chạy.

Bất kỳ trợ giúp sẽ được đánh giá cao!

+0

+1 cho câu hỏi hay về một chủ đề thú vị. Tôi không phải là một anh chàng Windows vì vậy tôi không có bất kỳ ý tưởng làm thế nào để trả lời nó, nhưng may mắn và chào mừng đến với SO! –

Trả lời

3

Windows truy cập nhiều tài nguyên trong khi khởi động quá trình, vì vậy nếu bạn vô hiệu hoá quyền truy cập thành công vào hệ thống tệp và đăng ký, quá trình sẽ không bắt đầu.

Lý tưởng nhất, bạn muốn truy cập bị hạn chế sau khi quá trình khởi tạo xong, nhưng Windows không có cơ chế để thực hiện việc này cho các quy trình tùy ý. Hộp cát trong trình duyệt Chrome dựa trên sự hợp tác của quá trình sandboxed.

documentation for the Chrome sandbox có tổng quan tốt đẹp về các cơ chế bảo mật khác nhau có sẵn trong Windows và giải thích cách chúng được sử dụng trong Chrome. Đó là một giải pháp tốt đẹp nếu bạn đang cố gắng để sandbox mã của riêng bạn.

+0

Lưu ý rằng phần "chặn" thư viện hộp cát Chrome có thể được áp dụng từ quá trình khởi chạy bằng cách sử dụng tính năng chèn DLL. Việc "chặn" dựa trên API hooking để hạn chế hơn nữa những gì quá trình sandboxed có thể làm. –

0

Tôi không nghĩ rằng bạn có thể vô hiệu hóa quyền truy cập ngay khi có nhiều hệ thống dựa trên nó (COM, trình bao, một số khởi tạo DLL, gỡ lỗi, v.v.) Thay thế sẽ cho phép truy cập, nhưng với một hộp cát có giới hạn được thực hiện với integrity system. Đặt nó thành low integrity sẽ chặn hầu hết quyền ghi và được sử dụng bởi chế độ được bảo vệ IE.

Các vấn đề liên quan