Потребителски вход

Запомни ме | Регистрация
Календар
«  Ноември, 2017  
ПВСЧПСН
12345
6789101112
13141516171819
20212223242526
27282930
Постинг
22.03.2007 07:02 - Методи за дълбок анализ на данни или как да прегледаме файлове, които са скрити/защитени с пароли.
Автор: killu Категория: Технологии   
Прочетен: 2304 Коментари: 4 Гласове:
0



Попаднах на тези статийки и реших да ги преведа. Оригинала е руски потребител на Дебиан - virens. Не съм пробвал описаните от него методи, но смятам в най-скоро време да го направя. И така :

 

______________________________________________________________________________________________________

Методи за дълбок анализ на данни или как да прегледаме файлове, които са скрити/защитени с пароли.

 

______________________________________________________________________________________________________

Метод 1:

 

foremost

 

Има ситуации като например: вашата флашка започва да умира, CD/DVD трудно се чете, а на него имате много важни данни или пък сте попаднали на друг тип проблем, когато искате да изкарате от даден носител информацията. В общ конспект въпроса е : Как да „изстържете” информацията от трудно достъпните носители?

Решение: има клас програми „съдебен анализ на данни” (forensic analisys), позволяващ тихомълком и без следи (и ректална имплантация на горещи поялници) да изведете данните, даже ако те са хитро записани.

 

Лирично отстъпление

Всичко започна с това, че при мен дойде потребител на Windows, гордо размахвайки флашка и твърдейки че има файл на MS Office Word с парола, който не мога да намеря на флашката. Поинтересувах се и когато вниманието му беше отвлечено от лаптопа Kororaa с XGL, тихомълком записах цялата гигабайтова флашка чрез dd... На следващия ден той много се удиви, виждайки в своята пощенска кутия, всичките свои пароли. По-долу разказвам, как ми отдаде това, използвайки Дебиан и неговите програми.

 

Какво има за това в Дебиан?

Какво ли не се намира в Дебианските хранилища! Например, много интересната програма foremost. Тя позволява да се търси файл на преносим носител/или вътре в образа създаден от dd. Може да се търси по  hex-данни, характерни заглавия и окончания. В Дебиан Sarge версията е стара но от сайта на foremost можете да свалите архив и да го компилирате. След това foremost може да бъде стартиран и да се прочете ръководството, което трябва да изведе следното:

 

    Foremost was written by Special Agent Kris Kendall and Special Agent Jesse

    Kornblum of the United States Air Force Office of Special Investigations

    starting in March 2001. This program would not be what it is today without

    help from (in no particular order): Rob Meekins, Dan Kalil, and Chet

    Maciag. This project was inspired by CarvThis, written by the Defense

    Computer Forensic Lab in 1999.

 

Надявам се, че това не се нуждае от превод.

 

Как работи?

Програмата претърсва iso файла за съвпадения с предварително определени hex-кодове, съответстващи на най-разпространените файлови формати. След което ги извлича от диска/образа и ги записва в директория, заедно с подробен отчет за тях – какво е извадено и от къде.

Ръководството към програмата е написано много подробно с възможност за добавяне на свои формати, за които програмата не е конфигурирана. Заглавията и окончанията се кодират преди използването от шестнадесетичния:

 

    Headers and footers are decoded before use. To specify a value in

    hexadecimal use x[0-f][0-f], and for octal use [1-9][1-9][1-9]. Spaces

    can be represented by s. Example: "x4F123IsCCI" decodes to "OSI CCI".

 

А ето и пример за това как изглежда за foremost файла:

 

    # extension case-sens max-size header footer (option)

    #

    # GIF and JPG files (very common)

    gif y 155000 x47x49x46x38x37x61 x00x3b

    gif y 155000 x47x49x46x38x39x61 x00x00x3b

    jpg y 200000 xffxd8xff xffxd9

 

Така, че може да се добави информация за търсене на шифровани файлове и други навеждащи на размишление данни.

 

Foremost в действие

След като програмата е инсталирана и носителя е рипнат с помощта на dd, остава да потърсим файловете.

 

Да опитаме да търсим файлове замаскирани под друг формат.

Вземаме флашката, забучваме я, но не я монтираме - пробваме да извлечем от нея файл с тип doc, един от които е преименуван в jpg (наивен юноша...), чрез командата:

 

    ./foremost -t doc -o /opt/foremost-1.3/output/ -i /dev/sdf

 

След което отиваме в директория ../output и наблюдаваме радостна картина – файла се появява. А ето и отчет на програмата:

 

    Foremost version 1.3 by Jesse Kornblum, Kris Kendall, and Nick Mikus

    Audit File

 

    Foremost started at Sat Dec 16 21:48:07 2006

    Invocation: ./foremost -t doc -o /opt/foremost-1.3/output/ -i /dev/sdf

    Output directory: /opt/foremost-1.3/output

    Configuration file: /opt/foremost-1.3/foremost.conf

    ------------------------------------------------------------------

    File: /dev/sdf

    Start: Sat Dec 16 21:48:07 2006

    Length: 15 MB (16121856 bytes)

 

    Num (bs=512) Size Offset

 

    0: 129.jpg 155 KB 66048

    Finish: Sat Dec 16 21:48:12 2006

 

    1 FILES EXTRACTED

 

    doc:= 1

    ------------------------------------------------------------------

 

 

Името не се е съхранило, но съдържанието е тук. Нагретия поялник и ютията оставяме настрана. :-)

 

Друг пример. Нека хакера Нео иска да предаде на другаря си Морфеус диск с изображение кода на матрицата(фотография на голата Тринити). За това може да се изхитри да запише чрез cdrecord не iso-образа, а просто файл:

 

    cdrecord -v speed=0 dev=ATAPI:0,0,0 matrixcodes

 

На други край Морфеус прави:

 

    dd if=/dev/cdrom bs=2048 of=~/temp/matrix.jpg

 

Но ето идва агент Смит, награбва Нео и ласкаво го пита, какво има на диска. Хакера Нео с ясни очи говори истината естествено – нищо, диска е празен(работата е ясна този диск не се чете). Агент Смит обаче е ГНУ/Линукс хакер и знае набира в конзолката:

 

    # foremost -t all -o ~/output/ -i /dev/hda

 

И рипва от диска страшните данни: в директорията ..output/ се явява файл audit.txt със следното съдържание:

 

    Foremost version 1.3 by Jesse Kornblum, Kris Kendall, and Nick Mikus

    Audit File

 

    Foremost started at Sat Dec 16 22:15:26 2006

    Invocation: ./foremost -t all -o /opt/foremost-1.3/output/ -i /dev/hda

    Output directory: /opt/foremost-1.3/output

    Configuration file: /opt/foremost-1.3/foremost.conf

    ------------------------------------------------------------------

    File: /dev/hda

    Start: Sat Dec 16 22:15:26 2006

    Length: 604 KB (618496 bytes)

 

    Num (bs=512) Size Offset

 

    0: 0.jpg 88 KB 0

    Finish: Sat Dec 16 22:15:28 2006

 

    1 FILES EXTRACTED

 

    jpg:= 1

    ------------------------------------------------------------------

 

    Foremost finished at Sat Dec 16 22:15:28 2006

 

И поддиректория ..output/jpg/ с този файл...

 

Ситуацията може да се усложни: да се допише този файл в края на диска, след записването на други файлове, или да го запише като архив, има къде да се мечтае по въпроса.

 

Ако още си поиграете с програмата, може да се каже, че програмата без допълнителни работи може да намери графични файлове от типа tif, jpg, png, bmp, звукови файлове wav, изпълними exe-файлове за Windows, всички офисни формати (мелкоОфис и ОпънОфис), архиви rar и zip и много други. ГНУ/Линукс архиви от типа bzip2 и p7zip. От CD/DVD програмата не може да изважда информация, но за целта може да се използват други програми.

 

Заключение

Чрез прост пример показахме моща на програмата foremost, която в умели ръце и при познание за простите  UNIX-програми от типа на dd или recoverdm е способна да извлече информация, даже принудително хитро записана в нестандартни файлове.

 

Аналогични програми

Такива програми не се афишират особено много, и трудно се раздават просто така. Ако трябва даже е необходимо да се оставят паспортни данни и да се доказва че работите в полицията или в КГБ ☺. Но въпреки всичко ги има. Това са  Safeback, Encase, safecopy, dvdisaster и някои други. Особено параноични лаици, предполагат че стария dd също се явява такава програма.

 

Връзки

Има много добър каталог с описание на тези програми тук. Ето и нелошо описание на достъпните инструменти по анализ на данни, връзки има и тук, а още по добре е да попитате Google за forensic.

______________________________________________________________________________________________________

Метод 2:

 

The Sleuth Kit

 

Продължавам темата за програмния анализ на данни, като в тази статия идва реч за инструменти за съдебен анализ (forensic analys) The Sleuth Kit. В дистрибутива Debian този инструмент не влиза, но това не пречи да се изтегли ядрото от сайта на проекта и да се компилира самостоятелно.

 

Инсталация

За да използвате The Sleuth Kit, трябва ад разопаковате архива в която и да е директория и просто да напишете в конзола в нея : make. За събирането на програмата са нужни библиотеките SSL, които е необходимо предварително да доставите, както е описано в нейния файл README. В дистрибутива влизат:

 

    # apt-cache search libssl

    libssl-dev - SSL development libraries, header files and documentation

    libssl0.9.6 - SSL shared libraries (old version)

    libssl0.9.7 - SSL shared libraries

    dcmtk - The OFFIS DICOM toolkit command line utilities

    libdcmtk0 - The OFFIS DICOM toolkit runtime libraries

    libdcmtk0-dev - The OFFIS DICOM toolkit development libraries and headers

 

Това ще ви отнеме около 7МВ дисково пространство. След това пишем:

 

    # apt-get install libssl0.9.7 libssl-dev

 

След това, когато всичко е изтеглено и настроено пристъпваме към компилирането:

 

    # make

 

В резултат, трябва всичко да се компилира, а инструмента се появява в поддиректорията ../bin, която до компилирането е била празна. Сега там има много инструменти, част от които ще бъдат описани по-надолу.

 

Ако библиотеките ssl не са инсталирани ще получите следната грешка:

 

    checking for initscr in -lncurses... yes

    checking for uncompress in -lz... yes

    checking for ssl3_new in -lssl... no

    configure: error: OpenSSL developer library "libssl" not installed; cannot continue.

    make[1]: Entering directory `/home/penta4/temp/1/src/afflib/lib"

    make[1]: *** Не заданы цели и не найден make-файл. Останов.

    make[1]: Leaving directory `/home/penta4/temp/1/src/afflib/lib"

    Error: Missing lib/libafflib.a file

    make: *** [no-perl] Ошибка 1

 

Това значи, че споменатите библиотеки трябва да се инсталират.

 

Търсене и намиране на данни

След инсталацията, на ваше разположение ще се намират почти 30 инструмента, способни да дадат изчерпателна информация за това какво е записано на даден носител. Подразбира се, че тези програми прекрасно работят с raw данни, получени чрез dd или recoverdm, за които вече беше писано. Следва да се отбележи, че ако програмата foremost е предназначена повече за експресен анализ при представлява сама по себе си инструмент от вида „швейцарско ножче”, то The Sleuth Kit е набор от инструменти за дълбоко изследване на данните. Но това е по-добре да покажем в пример, който използва версия 2.07.

 

Пример

Нека имаме образ на флашката, който да е във вид 1.img, и в този образ има данни, които трябва да извлечем без монтиране. За целта в началото ще погледнем каква е структурата на данните присъстващи на диска-това се прави чрез инструмента mmls - media management lister. Той показва големината на диска в това число и празните области (unallocated spaces), а така също началото и края на дяловете.

Поддържат се следните дялове:

 

    dos (DOS-based partitions [Windows, Linux, etc.])

    mac (MAC partitions)

    bsd (BSD Disklabels [FreeBSD, OpenBSD, NetBSD])

    sun (Sun Volume Table of Contents (Solaris))

    gpt (GUID Partition Table (EFI))

 

Така изпълняваме mml за 1.img за да разберем разположението и типа на дяловете:

 

    $ mmls 1.img

    DOS Partition Table

    Offset Sector: 0

    Units are in 512-byte sectors

 

    Slot Start End Length Description

    00: ----- 0000000000 0000000000 0000000001 Primary Table (#0)

    01: ----- 0000000001 0000000031 0000000031 Unallocated

    02: 00:00 0000000032 0000031359 0000031328 DOS FAT12 (0x01)

    03: ----- 0000031360 0000031487 0000000128 Unallocated

 

Всичко е вярно, досовска файлова система. Сега трябва да разберем от къде започва и до къде свършва -  информация необходима за работа на другите инструменти.

 

Сега ние знам типа на файловата система и къде се разполага. Да видим колко много данни има и какво може да се вземе – за целта използваме инструмента fsstat. Извикваме го и му съобщаваме сведенията получени от mmls:

 

    penta4@penta4rce:~/temp$ fsstat -f fat -o 0000000032 1.img

    FILE SYSTEM INFORMATION

    --------------------------------------------

    File System Type: FAT12

 

    OEM Name: +/J8LIHC

    Volume ID: 0x913

    Volume Label (Boot Sector): SANVOL

    Volume Label (Root Directory):

    File System Type Label: FAT12

 

    Sectors before file system: 32

 

    File System Layout (in sectors)

    Total Range: 0 - 31327

    * Reserved: 0 - 0

    ** Boot Sector: 0

    * FAT 0: 1 - 12

    * FAT 1: 13 - 24

    * Data Area: 25 - 31327

    ** Root Directory: 25 - 56

    ** Cluster Area: 57 - 31320

    ** Non-clustered: 31321 - 31327

 

    METADATA INFORMATION

    --------------------------------------------

    Range: 2 - 500226

    Root Directory: 2

 

    CONTENT INFORMATION

    --------------------------------------------

    Sector Size: 512

    Cluster Size: 4096

    Total Cluster Range: 2 - 3909

 

    FAT CONTENTS (in sectors)

    --------------------------------------------

    57-64 (8) -> EOF

    65-80 (16) -> EOF

    81-88 (8) -> EOF

    89-96 (8) -> EOF

    97-408 (312) -> EOF

    409-688 (280) -> EOF

    689-696 (8) -> EOF

    697-1000 (304) -> EOF

 

Отлично, сега знаем, колко файла са записани и къде са разположени. В този момент можем да погледнем на структурата на директориите и файловете, започвайки с кореновата директория. За това трябва да използваме fls, която показва не само записаните но и изтритите файлове. Да видим какво има на кореновата директория:

 

    $ fls -f fat -o 0000000032 1.img

    d/d 3: DCIM

    d/d 4: SCENE

    r/r * 6: raw1.bz2

    r/r 8: cdpocket.pdf

    r/r 10: raw1

 

Чудесно, знаем не само имената на файловете, ни и техните разширения, които ще ни трябват да прочетем файла. Звездата означава че файлът е изтрит, но може да се опитаме да го възстановим, ако след изтриването не се е наложило интензивно записване на файлове. Ако има много файлове, или пък те са в директории и трябва да се намери даден файл се използва инструмента ifind.

 

    $ ifind -a -n cdpocket.pdf -f fat -i raw -o 0000000032 1.img

    8

 

Резултата се явява като смесен файл, който е необходим за извличането. Въпреки това в нашите ръце е всичката информация за файловете – остава да ги извлечем. Да погледнем, например файла cdpocket.pdf, за извличането на който използваме инструмента icat:

 

    $ icat -f fat -i raw -o 0000000032 1.img 8 > cdpocket.pdf

 

В текущата директория след изпълнението на тази команда се появява файл cdpocket.pdf – четящ се и разглеждащ се със съответната програма.

 

Заключение

Комплекта The Sleuth Kit дава на потребителя на *nix-системи огромни възможности по възстановяване на повредените или скрити данни, и в приведения по-горе пример се осъществява чрез няколко малки програмки. Повече информация за съдебен анализ на данни може да се намери в прекрасните документации идващи с инструмента и на сайта на авторите.

 

 



Тагове:   анализ,   как,   методи,   данни,


Гласувай:
0
0



Следващ постинг
Предишен постинг

1. shamanhfel - Благодаря
22.03.2007 19:33
Страхотна статия си превел. Винаги е по-добре да четеш нещо на български, отколкото да го четеш на друг език пък бил той и руски.
цитирай
2. анонимен - Спасибо за ссылку и перевод моей ...
22.03.2007 21:44
Спасибо за ссылку и перевод моей статьи - надеюсь, она кому-нибудь пригодилась.
цитирай
3. killu -
22.03.2007 23:29
Пробвах foremost наистина извади доста стари doc файлове. Не съм опитал с някое супер криптиране защото не ми е ясно как точно се криптират файлове.
цитирай
4. zari - БРАВО!!!!
05.05.2007 09:09
Много полезно и важно!
цитирай
Търсене

За този блог
Автор: killu
Категория: Други
Прочетен: 2218717
Постинги: 105
Коментари: 795
Гласове: 1869
Архив