Làm cách nào để tôi bỏ bộ nhớ vật lý trong Linux?


22

Làm thế nào một người có thể tạo ra một bãi chứa bộ nhớ vật lý (RAM) trong Linux?

Phần mềm nào nếu có sẵn cho mục đích này?

Tôi đã đọc rằng người ta không nên ghi vào đĩa cục bộ mà nên gửi dữ liệu qua mạng. Có ai biết đặc thù ở đây không? Ethernet có hoạt động cho mục đích này không, hoặc có bất kỳ lệnh nào giảm thiểu lượng bộ nhớ đệm trước khi gửi vào đĩa không?

WinHex trên Windows có chức năng như vậy:

nhập mô tả hình ảnh ở đây

Tôi đang tìm kiếm một cái gì đó tương tự trên Linux.

Câu trả lời:


22

Đây là trang eHow về Cách kết xuất bộ nhớ Linux

Linux cung cấp hai thiết bị ảo cho mục đích này, ' /dev/mem' và ' /dev/kmem', mặc dù nhiều bản phân phối vô hiệu hóa chúng theo mặc định vì lý do bảo mật. ' /dev/mem' được liên kết với bộ nhớ hệ thống vật lý, trong khi ' /dev/kmem' ánh xạ tới toàn bộ không gian bộ nhớ ảo, bao gồm mọi trao đổi. Cả hai thiết bị đều hoạt động như các tệp thông thường và có thể được sử dụng với dd hoặc bất kỳ công cụ thao tác tệp nào khác.

Điều đó dẫn đến trang ForensicsWiki trên Công cụ hình ảnh bộ nhớ với phần Linux / Unix ,

  1. dd Trên các hệ thống Unix, dd chương trình có thể được sử dụng để ghi lại nội dung của bộ nhớ vật lý bằng cách sử dụng tệp thiết bị (ví dụ / dev / mem và / dev / kmem). Trong các nhân Linux gần đây, / dev / kmem không còn khả dụng. Trong các hạt nhân gần đây hơn, / dev / mem có các hạn chế bổ sung. Và gần đây nhất, / dev / mem cũng không còn khả dụng nữa. Trong toàn bộ loạt kernel 2.6, xu hướng là giảm truy cập trực tiếp vào bộ nhớ thông qua các tệp giả thiết bị. Xem, ví dụ, thông báo kèm theo bản vá này: http://lwn.net/Articles/267427/ . Trên các hệ thống Red Hat (và các bản phát hành có nguồn gốc như CentOS), trình điều khiển sự cố có thể được tải để tạo một thiết bị giả để truy cập bộ nhớ ("sự cố modprobe").
  2. Cái nhìn thứ hai Sản phẩm phân tích bộ nhớ thương mại này có khả năng lấy bộ nhớ từ các hệ thống Linux, cục bộ hoặc từ một mục tiêu từ xa thông qua DMA hoặc qua mạng. Nó đi kèm với các mô-đun Trình điều khiển truy cập bộ nhớ vật lý (PMAD) được biên dịch sẵn cho hàng trăm hạt nhân từ các bản phân phối Linux được sử dụng phổ biến nhất.
  3. Ý tưởng (Linux)
  4. fmem (Linux)
    fmem là mô-đun hạt nhân, tạo ra thiết bị / dev / fmem, tương tự như / dev / mem nhưng không có giới hạn. Thiết bị này (RAM vật lý) có thể được sao chép bằng dd hoặc công cụ khác. Hoạt động trên 2.6 nhân Linux. Theo GPL GNU.
  5. Goldfish
    Goldfish là một công cụ pháp y trực tiếp Mac OS X chỉ được sử dụng bởi cơ quan thực thi pháp luật. Mục đích chính của nó là cung cấp một giao diện dễ sử dụng để kết xuất RAM hệ thống của máy mục tiêu thông qua kết nối Firewire. Sau đó, nó sẽ tự động trích xuất mật khẩu đăng nhập người dùng hiện tại và bất kỳ đoạn hội thoại AOL Instant Messenger đang mở nào có thể có sẵn. Thực thi pháp luật có thể liên hệ với goldfish.ae để tải thông tin.

Xem thêm: Phân tích bộ nhớ Linux .
Ngoài ra còn có GDB thường có sẵn trên hầu hết các Linux.
Và, bạn luôn được khuyên tránh viết lên bộ nhớ không xác định - nó có thể dẫn đến tham nhũng hệ thống.


1
Có ai đã thử điều này trên một hệ thống Ubuntu gần đây chưa?

1
không / dev / mem hoặc / dev / kmem trên hệ thống debian của tôi.
Cướp

Tôi vừa mới làm nó trên máy ảo CentOS 7.x của tôi.
slm

4

Tính không ổn định dường như đang hoạt động tốt và tương thích với Windows và Linux.

Từ trang web của họ:

Tính biến động hỗ trợ kết xuất bộ nhớ từ tất cả các phiên bản và gói dịch vụ Windows 32 và 64 bit chính bao gồm XP, 2003 Server, Vista, Server 2008, Server 2008 R2 và Seven. Cho dù kết xuất bộ nhớ của bạn ở định dạng thô, kết xuất sự cố của Microsoft, tệp ngủ đông hoặc ảnh chụp nhanh máy ảo, Volatility đều có thể hoạt động với nó. Hiện tại chúng tôi cũng hỗ trợ các bộ nhớ Linux ở định dạng thô hoặc LiME và bao gồm hơn 35 plugin để phân tích các hạt nhân Linux 32 và 64 bit từ 2.6.11 - 3.5.x và các bản phân phối như Debian, Ubuntu, OpenSuSE, Fedora, CentOS và Mandrake. Chúng tôi hỗ trợ 38 phiên bản của bộ nhớ Mac OSX từ 10,5 đến 10,8,3 Mountain Lion, cả 32 và 64 bit. Điện thoại Android với bộ xử lý ARM cũng được hỗ trợ.



0

Như đã xác nhận, tôi đã có thể kết xuất bộ nhớ máy ảo CentOS 7.x của mình bằng phương pháp này:

$ head /dev/mem | hexdump -C
00000000  53 ff 00 f0 53 ff 00 f0  53 ff 00 f0 53 ff 00 f0  |S...S...S...S...|
00000010  53 ff 00 f0 53 ff 00 f0  cc e9 00 f0 53 ff 00 f0  |S...S.......S...|
00000020  a5 fe 00 f0 87 e9 00 f0  53 ff 00 f0 46 e7 00 f0  |........S...F...|
00000030  46 e7 00 f0 46 e7 00 f0  57 ef 00 f0 53 ff 00 f0  |F...F...W...S...|
00000040  22 00 00 c0 4d f8 00 f0  41 f8 00 f0 fe e3 00 f0  |"...M...A.......|
00000050  39 e7 00 f0 59 f8 00 f0  2e e8 00 f0 d4 ef 00 f0  |9...Y...........|
00000060  a4 f0 00 f0 f2 e6 00 f0  6e fe 00 f0 53 ff 00 f0  |........n...S...|
00000070  ed ef 00 f0 53 ff 00 f0  c7 ef 00 f0 ed 57 00 c0  |....S........W..|
00000080  53 ff 00 f0 53 ff 00 f0  53 ff 00 f0 53 ff 00 f0  |S...S...S...S...|
*
00000100  59 ec 00 f0 3d 00 c0 9f  53 ff 00 f0 ed 69 00 c0  |Y...=...S....i..|
00000110  53 ff 00 f0 53 ff 00 f0  53 ff 00 f0 53 ff 00 f0  |S...S...S...S...|
*
00000180  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
000afea0  00 00 00 00 00 00 00 00  aa aa aa 00 aa aa aa 00  |................|
000afeb0  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
...
...
000b0000  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
*
000c0000  55 aa 40 e9 62 0a 00 00  00 00 00 00 00 00 00 00  |U.@.b...........|
000c0010  00 00 00 00 00 00 00 00  00 00 00 00 00 00 49 42  |..............IB|
000c0020  4d 00 9c 80 fc 0f 75 06  e8 4f 01 e9 bc 00 80 fc  |M.....u..O......|

Với 55aah này xảy ra trong phạm vi c0000h-effffh, có khả năng Tiêu đề mở rộng PNP:

Tham khảo: Thông số kỹ thuật khởi động BIOS

3.3 Thiết bị có Tiêu đề Mở rộng PnP

Tất cả các thiết bị IPL có ROM tùy chọn phải chứa tiêu đề ROM tùy chọn hợp lệ nằm giữa các địa chỉ bộ nhớ hệ thống C0000h và EFFFFh trên ranh giới 2k và bắt đầu bằng 55AAH. Việc khởi động thiết bị chỉ có thể được kiểm soát nếu thiết bị có Tiêu đề mở rộng PnP. Tiêu đề mở rộng, có địa chỉ nằm trong tiêu đề ROM tùy chọn tiêu chuẩn ở offset + 1Ah, chứa thông tin quan trọng được sử dụng để định cấu hình thiết bị. Nó cũng chứa các con trỏ tới mã trong ROM tùy chọn của thiết bị (BCV hoặc BEV) mà BIOS sẽ gọi để khởi động từ thiết bị. Xem Phụ lục A để biết cấu trúc của Tiêu đề mở rộng PnP. Có hai cách để thiết bị IPL có Tiêu đề mở rộng PnP có thể được khởi động. Nó phải chứa BCV hoặc BEV.

Tài liệu tham khảo

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.