Рис. 14.13. Внешний вид устройства Intel NetStructure 7110 e-Commerce Accelerator
Поиск файловой системы
То, что файловая система была полностью размещена на 32-мегабайтной плате CompactFlash, упростило исследование. Из-за небольшого размера постоянной запоминающей флэш-памяти устройства (по сравнению с жесткими дисками размером в 20 Гб и больше для типичных серверов) скопировать ее оказалось просто. На этом этапе цель исследований заключалась в успешном дублировании файловой системы, нахождении двоичного образа любой интересующей исследователя информации и попытке смонтировать диск для дальнейшего анализа.
Сначала плата CompactFlash была отсоединена от устройства NetStructure и вставлена в адаптер PCMCIA CompactFlash, который может быть подключен к портативному или настольному компьютеру (рис. 14.14).
Рис. 14.14. Установка платы CompactFlash в PCMCIA адаптор CompactFlash
Платы CompactFlash совместимы со спецификацией ATA/IDE для жесткого диска, поэтому большинство операционных систем обнаружит их автоматически, не требуя для этого установки дополнительных драйверов. Плата была автоматически обнаружена портативным компьютером типа лаптоп с установленной операционной системой OpenBSD 3.0:
wdc2 at pcmcia1 function 0 “CL ATA FLASH CARD LEXAR ,
TIDALWV, V.17B” port 0xa000/16
wd1 at wdc2 channel 0 drive 0:
wd1: 1-sector PIO, LBA, 31MB, 1004 cyl, 2 head, 32 sec,
64256 sectors
wd1(wdc2:0:0): using BIOS timings
После этого воспользовались командой ddдля создания точного образа платы CompactFlash. В качестве входного файла был определен /dev/wda1(который на самом деле является платой CompactFlash), а в качестве выходного – fs.bin.Кроме того, было указано, что размер блока равен 1 байту (минимально возможный размер блока):
# dd if=/dev/wd1a of=fs.bin bs=1
30081024+0 records in
30081024+0 records out
30081024 bytes transferred in 379.838 secs (79194 bytes/sec)
После этого в файл fs.binбыл переписан точный образ платы CompactFlash устройства NetStructure 7110. Теперь можно было приступить к извлечению строк любых печатных ASCII-символов и поиску любых интересных текстовых частей, сохраненных на плате:
strings fs.bin > fs.strings
Просматривая строки выводного текстового файла (в этом примере fs.strings),можно обнаружить отдельные команды сетевой конфигурации (ifconfig, route add)и некоторые жестко запрограммированные IP-адреса. Наибольшее значение имеет следующая строка, которая непосредственно идентифицирует записанные на плате CompactFlash данные. В данном случае плата является файловой системой операционной системы BSD, одной из разновидностей UNIX:
@(#) Copyright (c) 1990, 1993
The Regents of the University of California. All rights
reserved.
@(#)boot.c 8.1 (Berkeley) 6/11/93
/bsd
Зная, что на плате постоянной запоминающей памяти записана операционная система BSD, можно попытаться «смонтировать» плату к каталогу /mnt/fs (с указанием опции только для чтения, чтобы предотвратить случайную перезапись оригинальных данных платы). В результате может быть получен доступ к файловой системе.
# mount –r –a /dev/wd1a /mnt/fs
Если это удастся осуществить, с помощью команды ls – la /mnt/fsбудет выведена следующая информация:
total 4290
drwxr-xr-x 5 root 100 512 Jan 2 1998 .
drwxr-xr-x 3 root wheel 512 Dec 24 08:23 ..
-rwxr-xr-x 1 root 100 64705 Sep 23 1999 boot
-rw-rw-r– 1 root 100 501972 Sep 24 1999 bsd.gz
-rw-rw-rw– 1 root 100 1253 Jan 2 1998 config.pgz
-rw-rw-rw– 1 root 100 1248 Jan 1 1998 configold.pgz
-rwxr-xr-x 1 root 100 292 Sep 24 1999 debug
drwxr-xr-x 2 root 100 512 Sep 24 1999 etc
-rw-rw-r– 1 root 100 3791468 Sep 24 1999 filesys.gz
drwxrwxr-x 2 root 100 512 May 16 1998 logs
drwxrwxr-x 2 root 100 512 Sep 24 1999 service
На плате файловая система записана в архивированном виде в файлах bsd.gz и filesys.gz. С помощью утилиты gunzipфайловую систему можно будет разархивировать и приступить к подготовке монтирования образа следующим способом:
# vnconfig –cv /dev/vnd0c filesys
Использование команды vnconfigпозволит подготовить файл образа к использованию его в виде файловой системы. В результате станет возможным обращаться к файлу образа как к диску. Введя команду disklabel vnd0,можно получить следующее:
# /dev/rvnd0c:
type: ST506
disk:
label:
flags:
bytes/sector: 512
sectors/track: 2048
tracks/cylinder: 1
sectors/cylinder: 2048
cylinders: 16
total sectors: 32768
rpm: 3600
interleave: 1
trackskew: 0
cylinderskew: 0
headswitch: 0 # microseconds
track-to-track seek: 0 # microseconds
drivedata: 0
8 partitions:
# size offset fstype [fsize bsize cpg]
a: 32768 0 4.2BSD 1024 8192 32 # (Cyl. 0–15)
c: 32768 0 unused 0 0 # (Cyl. 0–15)
Наконец, будет смонтировано неотформатированное устройство /dev/ vnd0c,созданное командой vnconfig:
# mount –r –a /dev/vnd0c /mnt/filesys
После успешной монтировки команда ls – la /mnt/filesysвыведет следующее:
total 11
drwxr-xr-x 10 root 100 512 Sep 24 1999 .
drwxr-xr-x 7 root wheel 512 Dec 24 14:23 ..
-r-xr-xr-x 1 root 100 206 Sep 23 1999 .profile
drwxr-xr-x 2 root 100 1024 Sep 24 1999 bin
Читать дальше
Конец ознакомительного отрывка
Купить книгу