Dostęp do sytemu plików ext2/ext3 z pominięciem jądra systemu

Myliłby się ten kto uważa, że aby przejrzeć zawartość dysku, skopiować dane a nawet je zmodyfikować należy mieć podmountowany system plików. W przypadku systemu plików ext2/ext3 „wystarczy” mieć prawa roota i zestaw narzędzi e2tools (dla Debiana dostępne są one w postaci gotowego pakietu).

Przypuśćmy ze mamy prawa root’a ale nie chcemy mountować partycji lub zmieniać czasów dostępu i modyfikacji plików (np. aby nie przekazywać do zdalnego systemu monitorowania informacji o dostępie do tego zasobu). Co robimy? Wykorzystujemy programy etools. Na pierwszy ogień niech pójdzie e2ls i katalog /etc:

terminal-3-67:~# mount
/dev/hda1 on / type ext3 (rw,errors=remount-ro,usrquota,grpquota)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
/dev/hda3 on /data1 type ext3 (rw)
/var/run/mysqld on /var/spool/postfix/var/run/mysqld type none (rw,bind)
/var/run/saslauthd on /var/spool/postfix/var/run/saslauthd type none (rw,bind)
/dev/hda6 on /data2 type reiserfs (rw)

terminal-3-67:~# e2ls /dev/hda7:/
hasla_dostepowe.zip
lost+found
terminal-3-67:~#

Rozważmy inny przypadek, chcemy dostać się do pilnie strzeżonego pliku bez podnoszenia alarmu. W tym celu wykorzystamy program e2cp (jeżeli jako drugi parametr podamy – plik zostanie przesłany na standardowe wyjście czyli ekran):

terminal-3-67:~# date && ls -l --full-time --time=access /etc/shadow
Sun Apr 24 08:08:54 CEST 2005
-rw-r-----  1 root shadow 1876 2005-04-24 07:26:13.000000000 +0200 /etc/shadow

terminal-3-67:~# date && e2cp /dev/hda1:/etc/shadow -
Sun Apr 24 08:09:21 CEST 2005
root:$1$F3assP5vC6$behjDWyWvd1DWXuqKdXEv0:12658:0:99999:7:::
daemon:*:12643:0:99999:7:::
bin:*:12643:0:99999:7:::

terminal-3-67:~# date && ls -l --full-time --time=access /etc/shadow
Sun Apr 24 08:09:28 CEST 2005
-rw-r-----  1 root shadow 1876 2005-04-24 07:26:13.000000000 +0200 /etc/shadow

Dla porównania standardowe przeglądanie pliku:

terminal-3-67:~# date && cat /etc/shadow
Sun Apr 24 08:09:56 CEST 2005
root:$1$F3sP5vC6$behjDWyWvd1DWXuqKdXEv0:12658:0:99999:7:::
daemon:*:12643:0:99999:7:::
bin:*:12643:0:99999:7:::

terminal-3-67:~# date && ls -l --full-time --time=access /etc/shadow
Sun Apr 24 08:09:59 CEST 2005
-rw-r-----  1 root shadow 1876 2005-04-24 08:09:56.226255870 +0200 /etc/shadow

Oraz kopiowanie pliku:

terminal-3-67:~# date && ls -l --full-time --time=access /etc/shadow
Sun Apr 24 08:14:37 CEST 2005
-rw-r-----  1 root shadow 1876 2005-04-24 08:14:33.282805108 +0200 /etc/shadow
terminal-3-67:~# date && cp /etc/shadow ~
Sun Apr 24 08:14:45 CEST 2005
terminal-3-67:~# date && ls -l --full-time --time=access /etc/shadow
Sun Apr 24 08:14:49 CEST 2005
-rw-r-----  1 root shadow 1876 2005-04-24 08:14:45.208982715 +0200 /etc/shadow

Jak widać obie operacje zostawiają ślad w systemie…

Pakiet e2progs zawiera jeszcze kilka innych narzędzi: e2ln, e2mv i e2tail służących odpowiednio do: tworzenia linków symbolicznych, przemieszczania plików oraz wyświetlania ich zawartości. Programy te mogą być przydatne w pracy administratora ale również bardzo niebezpieczne w rękach doświadczonego włamywacza.

Dodaj komentarz