2010-01-01 27 views
23

Tôi nghĩ rằng một quy trình không thể đọc được bộ nhớ của một quá trình khác. Nhưng tôi bị sốc khi thấy một ứng dụng có tên "WinHex" có "Ram Editor" và nó có thể truy cập toàn bộ bộ nhớ. của tất cả các quy trình.Làm cách nào để truy cập bộ nhớ của các quá trình khác?

Làm cách nào có thể? Và nó thậm chí có thể thay đổi bộ nhớ của các quá trình khác. Điều này có trở nên độc hại không?

+5

Nếu bạn có các đặc quyền phù hợp, bạn có thể đọc và viết bất cứ điều gì. –

+3

Bạn có thể thực hiện tương tự với hầu hết mọi trình gỡ rối ... một lần nữa, miễn là bạn có các quyền cần thiết. – itowlson

+0

Xem http://www.codeproject.com/KB/threads/MDumpAll.aspx –

Trả lời

0

Nếu bạn đang chạy với tư cách Quản trị viên, bạn có thể nhận được các đặc quyền để đọc tất cả bộ nhớ; có vẻ như WinHex đang làm điều này thay cho bạn.

Bạn đã thử điều này trên một tài khoản bị hạn chế hơn?

1

Vâng, đó là một trong những điều một quá trình với những đặc quyền đúng, do hệ điều hành, có thể làm. Các quy trình không thể truy cập bộ nhớ của các quy trình khác theo nguyên tắc. Trong thực tế, hệ điều hành bên dưới thường cung cấp cơ chế này cho các quy trình đặc quyền.

21

Trong mọi khả năng, công cụ sử dụng ReadProcessMemory hoặc một số biến thể, yêu cầu quyền truy cập PROCESS_VM_READ.

Đối với nhận xét "độc hại" của bạn, hãy nhớ rằng bạn (hoặc quá trình gọi API này, có khả năng cần quyền ở cấp Quản trị viên) đã có toàn quyền kiểm soát máy. Trò chơi bảo mật đã bị mất vào thời điểm này.

+9

OMG !! Tôi không bao giờ biết điều này. Tôi nên ngay lập tức thay đổi mức độ ít ưu tiên của tôi. Tôi đoán đây là lý do tại sao họ thêm tùy chọn xác nhận người dùng trong vista & windows 7. – Alice

2

Truy cập bộ nhớ của quá trình khác là một miếng bánh.
Bạn thậm chí có thể sử dụng Windows Driver Kit để truy cập và sửa đổi mọi thứ.

Kiểm tra ví dụ rootkits để xem cách mong manh là hệ điều hành khi bạn không giới hạn đặc quyền của chương trình.

+0

'ReadProcessMemory hoặc một số biến thể, yêu cầu quyền truy cập PROCESS_VM_READ'.1. Điều này sẽ đến dưới Windows Driver Kit? 2. Các chương trình này có đang chạy ở chế độ hạt nhân để nạp toàn bộ bộ nhớ không? – Alice

+0

@Alice, WDK là một API bổ sung. Với nó, bạn có quyền truy cập vào các đối tượng/chế độ hạt nhân. Nếu bạn thực sự muốn hiểu và đi sâu vào các hoạt động bên trong của hệ điều hành, tôi khuyên bạn nên sử dụng 3 cuốn sách mà tôi có: http://www.amazon.com/Microsoft-Windows-Internals-4th-Server/dp/B002DMJTXM/ref=sr_1_2? tức là = UTF8 & s = sách & qid = 1262422127 & sr = 1-2 http://www.amazon.com/Reversing-Secrets-Engineering-Eldad-Eilam/dp/0764574817/ref=sr_1_1?ie=UTF8&s=books&qid=1262422077&sr=8-1 http://www.amazon.com/Rootkits-Subverting-Windows-Greg-Hoglund/dp/0321294319/ref=sr_1_1?ie=UTF8&s=books&qid=1262422162&sr=1-1 –

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