Як скинути фізичну пам'ять в Linux?


22

Як можна створити дамп фізичної пам'яті (ОЗУ) в Linux?

Яке програмне забезпечення, якщо таке є для цього?

Я читав, що не слід писати на локальний диск, а надсилати дані по мережі. Хтось тут знає особливості? Чи працюватиме Ethernet для цієї мети, чи є команди, які мінімізують кількість кешування перед відправкою на диск?

WinHex в Windows має таку функціональність:

введіть тут опис зображення

Я шукаю щось подібне в Linux.

Відповіді:


22

Ось сторінка eHow про те, як скинути пам'ять Linux

Для цього Linux надає два віртуальні пристрої, " /dev/mem" і " /dev/kmem", хоча багато дистрибутивів з міркувань безпеки відключають їх за замовчуванням. ' /dev/mem' пов'язано з фізичною системною пам'яттю, тоді як ' /dev/kmem' відображається на весь простір віртуальної пам'яті, включаючи будь-який обмін. Обидва пристрої працюють як звичайні файли, і їх можна використовувати з dd або будь-яким іншим інструментом для обробки файлів.

Це призводить до сторінки ForensicsWiki в Інструментах обробки зображень пам'яті з розділом Linux / Unix ,

  1. dd У системах Unix програма dd може використовуватися для збору вмісту фізичної пам'яті за допомогою файлу пристрою (наприклад, / dev / mem та / dev / kmem). В останніх ядрах Linux / dev / kmem більше не доступний. У ще більш нових ядрах / dev / mem є додаткові обмеження. І в останньому, / dev / mem також недоступний. Протягом усієї серії ядра 2.6 тенденція полягала у зменшенні прямого доступу до пам'яті за допомогою файлів псевдопристроїв. Дивіться, наприклад, повідомлення, що супроводжує цей виправлення: http://lwn.net/Articles/267427/ . У системах Red Hat (та похідних дистрибутивах, таких як CentOS) драйвер аварійного завершення може бути завантажений для створення псевдопристрою для доступу до пам'яті ("збій modprobe").
  2. Другий вигляд Цей продукт комерційного аналізу пам’яті має можливість отримувати пам'ять із систем Linux, локально чи віддалених цілей через DMA або через мережу. Він поставляється із заздалегідь складеними модулями драйвера фізичної пам'яті (PMAD) для сотень ядер із найбільш часто використовуваних дистрибутивів Linux.
  3. Idetect (Linux)
  4. fmem (Linux)
    fmem - це модуль ядра, який створює пристрій / dev / fmem, подібний до / dev / mem, але без обмежень. Цей пристрій (фізична оперативна пам'ять) можна скопіювати за допомогою dd або іншого інструменту. Працює на 2.6 ядрах Linux. Під GNU GPL.
  5. Золота
    рибка Золота рибка - це живий криміналістичний інструмент Mac OS X для використання лише правоохоронними органами. Основна його мета - забезпечити простий у користуванні інтерфейс для скидання системної оперативної пам’яті цільової машини через з'єднання Firewire. Потім автоматично витягується поточний пароль для входу користувача та будь-які відкриті фрагменти розмови AOL Instant Messenger, які можуть бути доступні. Правоохоронні органи можуть зв’язатися з goldfish.ae для отримання інформації про завантаження.

Див. Також: Аналіз пам'яті Linux .
Існує також GDB, зазвичай доступний для більшості Linux.
І вам завжди рекомендують уникати запису над невідомою пам'яттю - це може призвести до пошкодження системи.


1
Хтось пробував це в останній системі Ubuntu?

1
no / dev / mem або / dev / kmem у моїй системі debian.
Роб

Я щойно зробив це на моєму Центрові 7.x VM.
slm

4

Здається, нестабільність працює добре і сумісна з Windows та Linux.

З їх веб-сайту:

Нестабільність підтримує скидання пам’яті з усіх основних 32- та 64-бітних версій Windows та пакетів послуг, включаючи XP, 2003 Server, Vista, Server 2008, Server 2008 R2 та Seven. Незалежно від того, чи зберігається пам’ять пам’яті в необробленому форматі, дамп із крахом Microsoft, файл сплячки або знімок віртуальної машини, Volatility здатний працювати з цим. Тепер ми також підтримуємо скиди пам’яті Linux у сирому або LiME форматі та включаємо 35+ плагінів для аналізу 32- та 64-бітних Linux ядер від 2.6.11 - 3.5.x та дистрибутивів, таких як Debian, Ubuntu, OpenSuSE, Fedora, CentOS та Мандраке. Ми підтримуємо 38 версій пам’яті пам’яті Mac OSX від 10.5 до 10.8.3 Mountain Lion, 32- та 64-розрядні. Також підтримуються телефони Android з процесорами ARM.



0

В якості підтвердження мені вдалося скинути пам'ять VM CentOS 7.x за допомогою цього методу:

$ 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......|

Враховуючи, що цей 55aah відбувається в діапазоні c0000h-effffh, ймовірно, заголовка розширення PNP:

Довідка: Специфікація завантаження BIOS

3.3 Пристрої з заголовками розширення PnP

Усі IPL-пристрої з опціональними ПЗУ повинні містити дійсний заголовок ROM з опцією, який знаходиться між адресами системної пам'яті C0000h та EFFFFh на границі 2k і починається з 55AAh. Завантаженням пристрою можна керувати, лише якщо він має заголовок розширення PnP. Заголовок розширення, адреса якого знаходиться в стандартному варіанті заголовка ROM при зміщенні + 1Ah, містить важливу інформацію, яка використовується для налаштування пристрою. Він також містить покажчики для кодування в опції ROM (BCV або BEV) пристрою, яку BIOS закликатиме до завантаження з пристрою. Дивіться додаток A до структури заголовка розширення PnP. Існує два способи завантаження пристрою IPL із заголовком розширення PnP. Він повинен містити BCV або BEV.

Список літератури

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.