mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/generic-methodologies-and-resources/basic-forensic-meth
This commit is contained in:
parent
190d390a7f
commit
dcd22bcda9
@ -5,94 +5,145 @@
|
|||||||
|
|
||||||
## Απόκτηση
|
## Απόκτηση
|
||||||
|
|
||||||
|
> Πάντα να αποκτάτε **μόνο για ανάγνωση** και **να υπολογίζετε το hash ενώ αντιγράφετε**. Διατηρήστε τη συσκευή πρωτοτύπου **κλειδωμένη για εγγραφή** και εργάζεστε μόνο σε επαληθευμένα αντίγραφα.
|
||||||
|
|
||||||
### DD
|
### DD
|
||||||
```bash
|
```bash
|
||||||
#This will generate a raw copy of the disk
|
# Generate a raw, bit-by-bit image (no on-the-fly hashing)
|
||||||
dd if=/dev/sdb of=disk.img
|
dd if=/dev/sdb of=disk.img bs=4M status=progress conv=noerror,sync
|
||||||
|
# Verify integrity afterwards
|
||||||
|
sha256sum disk.img > disk.img.sha256
|
||||||
```
|
```
|
||||||
### dcfldd
|
### dc3dd / dcfldd
|
||||||
```bash
|
|
||||||
#Raw copy with hashes along the way (more secur as it checks hashes while it's copying the data)
|
|
||||||
dcfldd if=<subject device> of=<image file> bs=512 hash=<algorithm> hashwindow=<chunk size> hashlog=<hash file>
|
|
||||||
dcfldd if=/dev/sdc of=/media/usb/pc.image hash=sha256 hashwindow=1M hashlog=/media/usb/pc.hashes
|
|
||||||
```
|
|
||||||
### FTK Imager
|
|
||||||
|
|
||||||
Μπορείτε να [**κατεβάσετε το FTK imager από εδώ**](https://accessdata.com/product-download/debian-and-ubuntu-x64-3-1-1).
|
`dc3dd` είναι το ενεργά συντηρούμενο παρακλάδι του dcfldd (DoD Computer Forensics Lab dd).
|
||||||
```bash
|
```bash
|
||||||
ftkimager /dev/sdb evidence --e01 --case-number 1 --evidence-number 1 --description 'A description' --examiner 'Your name'
|
# Create an image and calculate multiple hashes at acquisition time
|
||||||
|
sudo dc3dd if=/dev/sdc of=/forensics/pc.img hash=sha256,sha1 hashlog=/forensics/pc.hashes log=/forensics/pc.log bs=1M
|
||||||
```
|
```
|
||||||
### EWF
|
### Guymager
|
||||||
|
Γραφικό, πολυνηματικό εργαλείο εικόνας που υποστηρίζει **raw (dd)**, **EWF (E01/EWFX)** και **AFF4** εξόδους με παράλληλη επαλήθευση. Διαθέσιμο σε πολλές αποθήκες Linux (`apt install guymager`).
|
||||||
Μπορείτε να δημιουργήσετε μια εικόνα δίσκου χρησιμοποιώντας τα [**ewf tools**](https://github.com/libyal/libewf).
|
|
||||||
```bash
|
```bash
|
||||||
ewfacquire /dev/sdb
|
# Start in GUI mode
|
||||||
#Name: evidence
|
sudo guymager
|
||||||
#Case number: 1
|
# Or acquire from CLI (since v0.9.5)
|
||||||
#Description: A description for the case
|
sudo guymager --simulate --input /dev/sdb --format EWF --hash sha256 --output /evidence/drive.e01
|
||||||
#Evidence number: 1
|
|
||||||
#Examiner Name: Your name
|
|
||||||
#Media type: fixed
|
|
||||||
#Media characteristics: physical
|
|
||||||
#File format: encase6
|
|
||||||
#Compression method: deflate
|
|
||||||
#Compression level: fast
|
|
||||||
|
|
||||||
#Then use default values
|
|
||||||
#It will generate the disk image in the current directory
|
|
||||||
```
|
```
|
||||||
|
### AFF4 (Advanced Forensics Format 4)
|
||||||
|
|
||||||
|
AFF4 είναι η σύγχρονη μορφή εικόνας της Google που έχει σχεδιαστεί για *πολύ* μεγάλα αποδεικτικά στοιχεία (σπάνια, επαναλαμβανόμενα, cloud-native).
|
||||||
|
```bash
|
||||||
|
# Acquire to AFF4 using the reference tool
|
||||||
|
pipx install aff4imager
|
||||||
|
sudo aff4imager acquire /dev/nvme0n1 /evidence/nvme.aff4 --hash sha256
|
||||||
|
|
||||||
|
# Velociraptor can also acquire AFF4 images remotely
|
||||||
|
velociraptor --config server.yaml frontend collect --artifact Windows.Disk.Acquire --args device="\\.\\PhysicalDrive0" format=AFF4
|
||||||
|
```
|
||||||
|
### FTK Imager (Windows & Linux)
|
||||||
|
|
||||||
|
Μπορείτε να [κατεβάσετε το FTK Imager](https://accessdata.com/product-download) και να δημιουργήσετε **raw, E01 ή AFF4** εικόνες:
|
||||||
|
```bash
|
||||||
|
ftkimager /dev/sdb evidence --e01 --case-number 1 --evidence-number 1 \
|
||||||
|
--description 'Laptop seizure 2025-07-22' --examiner 'AnalystName' --compress 6
|
||||||
|
```
|
||||||
|
### EWF εργαλεία (libewf)
|
||||||
|
```bash
|
||||||
|
sudo ewfacquire /dev/sdb -u evidence -c 1 -d "Seizure 2025-07-22" -e 1 -X examiner --format encase6 --compression best
|
||||||
|
```
|
||||||
|
### Imaging Cloud Disks
|
||||||
|
|
||||||
|
*AWS* – δημιουργήστε ένα **forensic snapshot** χωρίς να κλείσετε την παρουσίαση:
|
||||||
|
```bash
|
||||||
|
aws ec2 create-snapshot --volume-id vol-01234567 --description "IR-case-1234 web-server 2025-07-22"
|
||||||
|
# Copy the snapshot to S3 and download with aws cli / aws snowball
|
||||||
|
```
|
||||||
|
*Azure* – χρησιμοποιήστε `az snapshot create` και εξάγετε σε ένα SAS URL. Δείτε τη σελίδα HackTricks {{#ref}}
|
||||||
|
../../cloud/azure/azure-forensics.md
|
||||||
|
{{#endref}}
|
||||||
|
|
||||||
|
|
||||||
## Mount
|
## Mount
|
||||||
|
|
||||||
### Several types
|
### Επιλέγοντας τη σωστή προσέγγιση
|
||||||
|
|
||||||
Στο **Windows** μπορείτε να δοκιμάσετε να χρησιμοποιήσετε την δωρεάν έκδοση του Arsenal Image Mounter ([https://arsenalrecon.com/downloads/](https://arsenalrecon.com/downloads/)) για να **mount the forensics image**.
|
1. Τοποθετήστε το **ολόκληρο δίσκο** όταν θέλετε τον αρχικό πίνακα κατατμήσεων (MBR/GPT).
|
||||||
|
2. Τοποθετήστε ένα **αρχείο μίας κατατμήσεως** όταν χρειάζεστε μόνο έναν τόμο.
|
||||||
|
3. Πάντα τοποθετήστε **μόνο για ανάγνωση** (`-o ro,norecovery`) και εργάζεστε σε **αντίγραφα**.
|
||||||
|
|
||||||
### Raw
|
### Ακατέργαστες εικόνες (dd, AFF4-extracted)
|
||||||
```bash
|
|
||||||
#Get file type
|
|
||||||
file evidence.img
|
|
||||||
evidence.img: Linux rev 1.0 ext4 filesystem data, UUID=1031571c-f398-4bfb-a414-b82b280cf299 (extents) (64bit) (large files) (huge files)
|
|
||||||
|
|
||||||
#Mount it
|
|
||||||
mount evidence.img /mnt
|
|
||||||
```
|
|
||||||
### EWF
|
|
||||||
```bash
|
|
||||||
#Get file type
|
|
||||||
file evidence.E01
|
|
||||||
evidence.E01: EWF/Expert Witness/EnCase image file format
|
|
||||||
|
|
||||||
#Transform to raw
|
|
||||||
mkdir output
|
|
||||||
ewfmount evidence.E01 output/
|
|
||||||
file output/ewf1
|
|
||||||
output/ewf1: Linux rev 1.0 ext4 filesystem data, UUID=05acca66-d042-4ab2-9e9c-be813be09b24 (needs journal recovery) (extents) (64bit) (large files) (huge files)
|
|
||||||
|
|
||||||
#Mount
|
|
||||||
mount output/ewf1 -o ro,norecovery /mnt
|
|
||||||
```
|
|
||||||
### ArsenalImageMounter
|
|
||||||
|
|
||||||
Είναι μια εφαρμογή Windows για την τοποθέτηση τόμων. Μπορείτε να την κατεβάσετε εδώ [https://arsenalrecon.com/downloads/](https://arsenalrecon.com/downloads/)
|
|
||||||
|
|
||||||
### Σφάλματα
|
|
||||||
|
|
||||||
- **`cannot mount /dev/loop0 read-only`** σε αυτή την περίπτωση πρέπει να χρησιμοποιήσετε τις σημαίες **`-o ro,norecovery`**
|
|
||||||
- **`wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error.`** σε αυτή την περίπτωση η τοποθέτηση απέτυχε λόγω του ότι η μετατόπιση του συστήματος αρχείων είναι διαφορετική από αυτή της εικόνας δίσκου. Πρέπει να βρείτε το μέγεθος τομέα και τον αρχικό τομέα:
|
|
||||||
```bash
|
```bash
|
||||||
|
# Identify partitions
|
||||||
fdisk -l disk.img
|
fdisk -l disk.img
|
||||||
Disk disk.img: 102 MiB, 106954648 bytes, 208896 sectors
|
|
||||||
Units: sectors of 1 * 512 = 512 bytes
|
|
||||||
Sector size (logical/physical): 512 bytes / 512 bytes
|
|
||||||
I/O size (minimum/optimal): 512 bytes / 512 bytes
|
|
||||||
Disklabel type: dos
|
|
||||||
Disk identifier: 0x00495395
|
|
||||||
|
|
||||||
Device Boot Start End Sectors Size Id Type
|
# Attach the image to a network block device (does not modify the file)
|
||||||
disk.img1 2048 208895 206848 101M 1 FAT12
|
sudo modprobe nbd max_part=16
|
||||||
|
sudo qemu-nbd --connect=/dev/nbd0 --read-only disk.img
|
||||||
|
|
||||||
|
# Inspect partitions
|
||||||
|
lsblk /dev/nbd0 -o NAME,SIZE,TYPE,FSTYPE,LABEL,UUID
|
||||||
|
|
||||||
|
# Mount a partition (e.g. /dev/nbd0p2)
|
||||||
|
sudo mount -o ro,uid=$(id -u) /dev/nbd0p2 /mnt
|
||||||
```
|
```
|
||||||
Σημειώστε ότι το μέγεθος τομέα είναι **512** και η αρχή είναι **2048**. Στη συνέχεια, τοποθετήστε την εικόνα όπως αυτό:
|
Αποσυνδέστε όταν τελειώσετε:
|
||||||
```bash
|
```bash
|
||||||
mount disk.img /mnt -o ro,offset=$((2048*512))
|
sudo umount /mnt && sudo qemu-nbd --disconnect /dev/nbd0
|
||||||
```
|
```
|
||||||
|
### EWF (E01/EWFX)
|
||||||
|
```bash
|
||||||
|
# 1. Mount the EWF container
|
||||||
|
mkdir /mnt/ewf
|
||||||
|
ewfmount evidence.E01 /mnt/ewf
|
||||||
|
|
||||||
|
# 2. Attach the exposed raw file via qemu-nbd (safer than loop)
|
||||||
|
sudo qemu-nbd --connect=/dev/nbd1 --read-only /mnt/ewf/ewf1
|
||||||
|
|
||||||
|
# 3. Mount the desired partition
|
||||||
|
sudo mount -o ro,norecovery /dev/nbd1p1 /mnt/evidence
|
||||||
|
```
|
||||||
|
Εναλλακτικά, μετατρέψτε δυναμικά με **xmount**:
|
||||||
|
```bash
|
||||||
|
xmount --in ewf evidence.E01 --out raw /tmp/raw_mount
|
||||||
|
mount -o ro /tmp/raw_mount/image.dd /mnt
|
||||||
|
```
|
||||||
|
### LVM / BitLocker / VeraCrypt volumes
|
||||||
|
|
||||||
|
Μετά την προσάρτηση της συσκευής μπλοκ (loop ή nbd):
|
||||||
|
```bash
|
||||||
|
# LVM
|
||||||
|
sudo vgchange -ay # activate logical volumes
|
||||||
|
sudo lvscan | grep "/dev/nbd0"
|
||||||
|
|
||||||
|
# BitLocker (dislocker)
|
||||||
|
sudo dislocker -V /dev/nbd0p3 -u -- /mnt/bitlocker
|
||||||
|
sudo mount -o ro /mnt/bitlocker/dislocker-file /mnt/evidence
|
||||||
|
```
|
||||||
|
### kpartx helpers
|
||||||
|
|
||||||
|
`kpartx` χαρτογραφεί τις κατατμήσεις από μια εικόνα στο `/dev/mapper/` αυτόματα:
|
||||||
|
```bash
|
||||||
|
sudo kpartx -av disk.img # creates /dev/mapper/loop0p1, loop0p2 …
|
||||||
|
mount -o ro /dev/mapper/loop0p2 /mnt
|
||||||
|
```
|
||||||
|
### Κοινά σφάλματα και διορθώσεις κατά την τοποθέτηση
|
||||||
|
|
||||||
|
| Σφάλμα | Τυπική Αιτία | Διόρθωση |
|
||||||
|
|-------|---------------|-----|
|
||||||
|
| `cannot mount /dev/loop0 read-only` | Το Journaled FS (ext4) δεν έχει αποσυνδεθεί καθαρά | χρησιμοποιήστε `-o ro,norecovery` |
|
||||||
|
| `bad superblock …` | Λάθος offset ή κατεστραμμένο FS | υπολογίστε το offset (`sector*size`) ή εκτελέστε `fsck -n` σε ένα αντίγραφο |
|
||||||
|
| `mount: unknown filesystem type 'LVM2_member'` | Δοχείο LVM | ενεργοποιήστε την ομάδα όγκων με `vgchange -ay` |
|
||||||
|
|
||||||
|
### Καθαρισμός
|
||||||
|
|
||||||
|
Θυμηθείτε να **umount** και **αποσυνδέσετε** τις συσκευές loop/nbd για να αποφύγετε την παραμονή κρεμασμένων χαρτογραφήσεων που μπορεί να διαφθείρουν περαιτέρω εργασία:
|
||||||
|
```bash
|
||||||
|
umount -Rl /mnt/evidence
|
||||||
|
kpartx -dv /dev/loop0 # or qemu-nbd --disconnect /dev/nbd0
|
||||||
|
```
|
||||||
|
## Αναφορές
|
||||||
|
|
||||||
|
- AFF4 imaging tool announcement & specification: https://github.com/aff4/aff4
|
||||||
|
- qemu-nbd manual page (mounting disk images safely): https://manpages.debian.org/qemu-system-common/qemu-nbd.1.en.html
|
||||||
|
|
||||||
{{#include ../../banners/hacktricks-training.md}}
|
{{#include ../../banners/hacktricks-training.md}}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user