2008.04_Prywatność użytkownika_[Bezpieczenstwo].pdf

(1355 KB) Pobierz
332774629 UNPDF
Bezpieczeństwo
Prywatność i bezpieczeństwo użytkownika
użytkownika
Łukasz Olender
Chyba każdy ceni sobie prywatność i bezpieczeństwo. Aby je zachować podejmujemy dodatkowe
działania na naszym komputerze – instalujemy irewalle, antywirusy czy na bieżąco aktualizujemy
oprogramowanie. Nie ma wątpliwości, że są to skuteczne metody. Czy jednak obronią nas przed
wścibskimi oczami współużytkownika domowego komputera, bądź osoby mającej konto shellowe na
tym samym serwerze co my?
całkowicie bezpiecznie. Jakie kroki należy więc
podjąć? Przede wszystkim warto zacząć od tych
najprostszych i najbardziej oczywistych, które z
niewiadomych przyczyn są pomijane nierzadko nawet przez
doświadczonych użytkowników Linuksa. Poniżej przedsta-
wiam 16 porad, które pomogą nam czuć się bezpieczniej za-
równo z punktu widzenia użytkownika jak i administratora li-
nuksowego systemu.
ensaver , kdesktop_lock dla kscreensaver oraz xscreensa-
ver-command -lock gdy korzystamy z xscreensaver ) i korzy-
stać z niego zawsze, gdy oddalamy się od komputera. Automa-
tyczne blokowanie po określonym czasie bezczynności użyt-
kownika zwykle się nie sprawdza – za krótki czas spowodu-
je, że będzie on się aktywował w momencie czytania dłuż-
szych tekstów bądź oglądania krótkich ilmów w Internecie,
natomiast za długi może nie spełnić swojej podstawowej roli
– ochrony przed osobami trzecimi.
Wygaszacz ekranu – tryb graiczny
Nie ma chyba nic bardziej irytującego niż odejście na moment
od komputera i po powrocie zobaczenie siedzącą siostrę, któ-
ra właśnie czyta otworzone przez nas wcześniej archiwum roz-
mów w Kadu. Przykładów wykorzystania maszyny pod naszą
chwilową nieobecność można by mnożyć, jednak z ich powo-
dem można łatwo sobie poradzić stosując wygaszacz ekranu.
Na chwilę obecną najpopularniejsze są trzy – gnome-screen-
saver , kscreensaver oraz xscreensaver . Aby efektywnie korzy-
stać z ich dobrodziejstw, warto podpiąć pod któryś skrót kla-
wiaturowy komendę inicjującą wygaszenie ekranu (odpowied-
nio gnome-screensaver-command --lock dla gnome-scre-
Wygaszacz ekranu – konsola
Jeżeli w danym momencie pracujemy w trybie tekstowym,
aby zabezpieczyć nasze stanowisko pracy możemy skorzy-
stać z kilku narzędzi, które pełnią funkcje wygaszaczy ekranu
pod konsolę. Pierwszym z nich jest lockvc . Jest to prosty, ma-
jący już ponad 10 lat wygaszacz ekranu, który po uruchomie-
niu wyświetla jedną z czterech dostępnych animacji ( loc-
kvc –help , jeśli chcemy zobaczyć listę i sposób zmienia-
nia ich) oraz blokuje przełączanie się na inne wirtualne kon-
sole. Po naciśnięciu dowolnego klawisza, program pyta o ha-
sło użytkownika (można również wpisać hasło roota). Jako
że używa on svgalib , nie działa on na różnego typu graicz-
58
kwiecień 2008
Prywatność
Z pewnością nie na tyle, abyśmy mogli czuć się
332774629.031.png 332774629.032.png 332774629.033.png
 
Bezpieczeństwo
Prywatność i bezpieczeństwo użytkownika
nych emulatorach terminala oraz połączeniach
wykonanych przy użyciu SSH/telnet. Domyśl-
nie lockvc nie jest instalowany, jednak znajdu-
je się w repozytoriach popularnych dystrybu-
cji. Gdyby jednak tak nie było, paczki z pro-
gramem, jak i jego źródła znajdziemy bez pro-
blemu w Internecie. Innym programem bloku-
jącym ekran jest vlock . Nie wyświetla on ani-
macji, a jedynie tekst, który mówi o tym, że
ekran jest zablokowany. Jego zaletą jest to, że
możemy za jego pomocą zablokować tylko tę
konsolę, na której pracujemy ( vlock --cur-
rent ) bądź wszystkie ( vlock --all ). Aby od-
blokować ekran, wystarczy wpisać swoje hasło
(bądź hasło roota, jeśli nasze zostało wpisane
błędnie). Na tym lista plusów programu się nie
kończy – polecam przeczytać strony manuala
dla vlock . Co jednak w sytuacji, gdy mamy uru-
chomiony jakiś program (np. aktywną rozmo-
wę w ekg), a my chcemy zablokować ekran? Z
pomocą przychodzi screen . Opis, jak go skon-
igurować, by mógł chronić komputer znajduje
się na stronie [1]. Warto również wspomnieć o
możliwości automatycznego wylogowania się
z konsoli po określonym czasie bezczynności.
Służy do tego polecenie typeset , które uży-
te z parametrem -r TMOUT pozwoli nam usta-
lić czas (w sekundach), po którym zostaniemy
wylogowani. Przykładowo, typeset -r TMO-
UT=120 spowoduje, że po 120 sekundach bez-
czynności nastąpi samoczynne wylogowa-
nie. Wpis ten warto umieścić w swoim pliku
~/.bashrc (jeżeli oczywiście używamy powło-
ki bash ), bądź w /etc/proile jeżeli jesteśmy ad-
ministratorem systemu i chcemy, aby ustawie-
nie to dotyczyło wszystkich.
nie lepiej nauczyć się i stosować zapis w systemie
ósemkowym, który jest częściej używany i przez
to popularniejszy. Uprawnienia w tej metodzie
wyraża się za pomocą trzech cyfr, z których pierw-
sza wyznacza prawa dostępu dla właściciela pli-
ku, druga dla grupy, a trzecia dla pozostałych użyt-
kowników. Cyfry te, są sumami poszczególnych
uprawnień zapisane w systemie ósemkowym
(patrz Ramka). Brzmi skomplikowanie? Wystar-
czy zapamiętać, że cyfra 4 oznacza uprawnienie
do odczytu, 2 do zapisu, a 1 do wykonania. Teraz,
by nadać odpowiednie prawa, należy podać sumy
tych cyfr. Przykładowo chmod 754 teksty.txt
nada pełne uprawnienia do pliku teksty.txt dla wła-
ściciela (pierwsza cyfra - suma 4,2 oraz 1), upraw-
nień do odczytu oraz wykonania dla grupy (dru-
ga cyfra – suma 4 i 1) oraz uprawnień tylko do od-
czytu dla pozostałych użytkowników (trzecia cy-
fra). Jest jedna bardzo przydatna opcja: -R . Powo-
duje ona, że chmod użyty na katalogu spowodu-
je rekursywne ustawienie wypisanych przez nas
uprawnień dla wszystkich plików i podkatalogów
(i ich plików i katalogów itd.) zawartych w tym
katalogu (przykład - chmod -R 700 dane ).
Umask
Z pewnością niejeden z Czytelników zasta-
nowił się teraz nad tym, czy konieczne jest
System ósemkowy i notacja symboliczna – przeliczanie
Jak już wspomniałem, wpisując ls -l możemy sprawdzić listę plików wraz z uprawnieniami.
Zapisane są jednak w notacji symbolicznej. Przykładowa linijka wygląda tak:
-rw-r--r-- 1 lukasz lukasz 25504 2007-10-23 18:08 teksty.txt
Uprawnienia są wypisane na samym początku, w tym przypadku jest to -rw-r--r-- . Jak je
odczytać? To proste. Pierwsze pole w przypadku zwykłych plików jest puste (jeżeli plik jest
łączem symbolicznym, gniazdem, katalogiem bądź potokiem FIFO w tym miejscu widnieje
odpowiednio litera l , s , d bądź p ). Następne trzy odpowiadają kolejno uprawnieniu do odczy-
tu ( r ), do zapisu ( w ) oraz wykonania ( x ) przyznane właścicielowi. Kolejne trzy pola oznacza-
ją to samo, tylko w odniesieniu do grupy, a ostatnie trzy – w odniesieniu do reszty użytkowni-
ków systemu. Jeżeli litera widnieje, oznacza to, że uprawnienie jest przyznane, jeśli zamiast
niej widnieje znak - , oznacza to, że uprawnienia nie ma. Gdyby pominąć pierwsze pole a w
miejscu następnych dawać cyfrę 1 dla uprawnienia przyznanego i 0 dla nie przyznanego, plik
teksty.txt miałby takie prawa: 110 100 100 . Liczby te są w systemie dwójkowym (binarnym), a
przekształcone do systemu ósemkowego dadzą nam 644 . W Tabeli 3. przytaczam wartości
uprawnień w systemie ósemkowym oraz ich odpowiedniki zapisane binarnie.
Chmod i uprawnienia dostępu
– podstawowe informacje
Chmod jest programem służącym do zmiany praw
dostępu do plików i katalogów. Są trzy podstawo-
we uprawnienia: do odczytu, zapisu i wykona-
nia. Przyznawane są osobno właścicielowi pliku
czy katalogu, grupie oraz reszcie użytkowników.
O ile ich znaczenie jest w przypadku plików dość
jednoznaczne, o tyle dla katalogów jest nieco inne
– prawo do odczytu umożliwia wyświetlanie za-
wartości katalogu, prawo do zapisu – zmianę tej-
że zawartości natomiast prawo do wykonania po-
zwala wejść do danego katalogu. Do wyświetla-
nia listy plików i katalogów wraz z ich prawami
dostępu używamy polecenia ls z parametrem -l .
Wyświetla ono uprawnienia w notacji symbolicz-
nej. O tym, jak je zrozumieć możemy przeczytać
w Ramce znajdującej się na następnej stronie. Naj-
prostsza składnia programu chmod wygląda nastę-
pująco: chmod [opcje] prawa_dostępu pli-
ki . Prawa dostępu mogą być podane w notacji
symbolicznej (patrz man chmod ), ale zdecydowa-
Rysunek 1. Okno koniguracji wygaszacza ekranu gnome-screensaver
www.lpmagazine.org
59
332774629.001.png 332774629.002.png 332774629.003.png 332774629.004.png 332774629.005.png 332774629.006.png 332774629.007.png 332774629.008.png 332774629.009.png
 
Bezpieczeństwo
Prywatność i bezpieczeństwo użytkownika
ręczne modyikowanie praw dostępu do każ-
dego z plików, które zamierzamy stworzyć.
Byłoby to bardzo niewygodne wpisywać za
każdym razem polecenie chmod dla nowo
utworzonego pliku czy katalogu. Ale my-
śląc logicznie, domyślnie uprawnienia choć
zwykle dość liberalne, też nie biorą się zni-
kąd. Odpowiada za nie wartość umask . Aby
ją wyświetlić, w trybie tekstowym wpisuje-
my po prostu umask . Przykładowo, w mo-
im systemie wyświetliła się liczba 022 . Co
ona oznacza? Najprościej rzecz biorąc, ozna-
cza mniej więcej tyle, jakie uprawnienia nie
zostaną przydzielone nowo tworzonym pli-
ków. Domyślnie dla systemu (nie uwzględ-
niając umask ) pliki tworzone są z prawami
666 , a katalogi z prawami 777 (oczywiście
pisane w notacji ósemkowej). Chcąc spraw-
dzić więc z jakimi prawami będą tworzone
nowe pliki i katalogi należy odjąć kolejne cy-
fry wartości umask od kolejnych cyfr warto-
ści domyślnych. Przykładowo, jeżeli umask
wynosi 022 , pliki będą tworzone z prawa-
mi dostępu 644 , a katalogi z prawami dostę-
pu 755 . Aby zmienić uprawnienia nadawane
nowo tworzonym plikom i katalogom nale-
ży zmienić swoją wartość umask . Chcąc usta-
wić tę wartość na 077 , wpisujemy umask 077 .
Warto polecenie to dodać do swoich skryp-
tów startowych (przykładowo do ~/.bashrc ),
dzięki czemu zmiana ta będzie obowiązywała
przez cały czas, nie tylko do momentu wylo-
gowania się. Jeżeli chcemy, by ustalona przez
nas wartość umask obowiązywała wszystkich
użytkowników w systemie, wpis dodajemy
do /etc/proile .
Chmod
– specjalne prawa dostępu
Oprócz wymienionych wcześniej uprawnień,
chmod pozwala zmieniać nam trzy dodatkowe
prawa dostępu. Są to tzn. bity specjalne – bit su-
id , sgid oraz sticky bit znany również pod nazwą
save text attribute . Bity te ustawiamy za pomocą
chmod pisząc je w notacji symbolicznej. Przy-
kładowo chcąc dodać programowi analizer.sh
bit suid , z konta roota wydajemy polecenie
chmod +s analizer.sh . Aby go zdjąć, wpisu-
jemy chmod -s analizer.sh . Prawda, że pro-
ste? Opisy wszystkich trzech bitów znajdują się
w Tabeli 1. Warto chwilkę poświęcić omówie-
niu dwóch pierwszych – suid i sgid . Są one wy-
korzystywane w różnego typu standardowych
programach dostępnych w linuksowych dystry-
bucjach. Screen, passwd, su są tylko przykłada-
mi programów, które posiadając bit suid wyko-
nywane są zawsze z uprawnieniami użytkowni-
ka root. Co do ich niezawodności i bezpieczeń-
stwa możemy być pewni, jednak jest wiele in-
nych programów mających bity suid , które mo-
gą być podatne na atak. Wykorzystanie luk w
takich programach może mieć straszne konse-
kwencje z uzyskaniem praw użytkownika ro-
ot włącznie! Dlatego jeżeli jesteśmy administra-
torem systemu, który nie jest przeznaczony tyl-
ko dla potrzeb domowych powinniśmy zwracać
szczególną uwagę na to, jakie programy z bitem
suid i sgid instalujemy.
Tabela 1. Chmod – specjalne prawa dostępu
Atry-
but
Nazwa Opis
s suid – Set User ID Plik wykonywalny posiadający bit suid będzie uruchamiany zawsze z
kontekstu jego właściciela, niezależnie przez kogo zostanie wywołany.
g sgid – Set Gro-
up ID
Plik wykonywalny posiadający bit suid będzie uruchamiany zawsze z
kontekstu grupy, która jest jego właścicielem, niezależnie przez członka
jakiej grupy zostanie wywołany.
t
Sticky Bit, save text
attribute
Pliki zawarte w katalogu mogą być usuwane jedynie przez ich właścicie-
li oraz przez właściciela katalogu, niezależnie od tego, jakie prawa nadał
im użytkownik. Sticky Bit jest stosowany na szeroką skalę głównie w ka-
talogu /tmp, gdzie każdy może tworzyć nowe pliki i usuwać je, nie mając
jednocześnie żadnych praw do plików innych użytkowników.
Uprawnienia katalogu domowego
Jednym z najważniejszych katalogów w linuk-
sowym systemie jest katalog domowy – prze-
chowujemy w nim swoje prywatne pliki, z niego
Tabela 2. Chattr – lista przydatnych atrybutów
Atry-
but
Opis
Tabela 3. Przykłady konwersji cyfr pomiędzy syste-
mem ósemkowym a dwójkowym (binarnym)
System ósemkowy System binarny
0
A Nie aktualizuje wartości atime pliku.
a Pozwala otwierać plik w trybie tylko do dołączania, co zapobiega usunięciu z niego istniejących
danych. Atrybut ten może być zmieniany tylko przez roota.
c Plik jest kompresowany na dysku. Odczyt tego pliku zwraca zdekompresowane dane. Zapis
powoduje kompresję danych przed zapisaniem ich na dysku. Jest to możliwe tylko, gdy jądro
umożliwia kompresje danych w ext2/ext3 – niestety, w większości przypadkach nie obejdzie się
bez nakładania łat na naszego kernela.
d Plik z tym atrybutem będzie pomijany przez program dump służący do archiwizacji.
i Plik z tym atrybutem nie może być usunięty ani w żaden sposób zmieniony. Zmieniona nie mo-
że być także jego nazwa ani nie mogą być tworzone dowiązania. Zmian w tym atrybucie mo-
że dokonać tylko root.
j Zmiany w plikach z tym atrybutem będą zapisywane do dziennika ext przed zapisaniem ich do
samego pliku. Atrybut ten działa jedynie w systemie plików ext3 zamontowanym z opcją
data=ordered bądź data=writeback.
s Powoduje bezpowrotne (choć nie tak skuteczne jak przy użyciu programu wipe) wymazanie
z dysku pliku w momencie jego usuwania – jego bloki są wyzerowane i zapisywane z powro-
tem na dysk.
S W momencie modyikowania pliku zmiany są synchronicznie zapisywane na dysk.
u
000
1
001
2
010
3
011
4
100
5
101
6
110
7
111
Zawartość pliku z tym atrybutem po usunięciu zostanie zachowana. Umożliwia to łatwe odzy-
skanie pliku.
Rysunek 2. Vlock – prośba o hasło
60
kwiecień 2008
332774629.010.png 332774629.011.png 332774629.012.png 332774629.013.png 332774629.014.png 332774629.015.png
 
Bezpieczeństwo
Prywatność i bezpieczeństwo użytkownika
odczytywane są skrypty startowe w momencie
zalogowania się czy ustawienia aplikacji z któ-
rych korzystamy. Jeżeli uprawnienia pozwalają
na czytanie jego zawartości i zawartości plików,
które się tam znajdują, potencjalny agresor mo-
że wyczytać z nich wiele interesujących infor-
macji. Jeszcze gorzej, gdy ma on dostęp do za-
pisywania nowych plików bądź edytowania bie-
żących – wystarczy, że do pliku ~/.bashrc do-
da wpis chmod 777 -R ~ by po następnym na-
szym zalogowaniu uzyskać dostęp do wszyst-
kiego, co w nim przechowujemy. Dlatego tak
ważne jest by przynajmniej sam nasz katalog
domowy miał tak restrykcyjne uprawnienia, jak
to możliwe – chmod 700 ~ jest rzeczą absolut-
nie niezbędną.
Zagrożenia programu ind
Jak sama nazwa wskazuje, program ten służy do
wyszukiwania plików w komputerze. Jednak ar-
gumentem do wyszukiwania niekoniecznie mu-
si być nazwa pliku – równie dobrze mogą to być
uprawnienia. Przy obecnej szybkości i automa-
tyzacji komputerów, przeszukanie całego syste-
mu w poszukiwaniu plików podatnych na atak
nie jest niczym trudnym ani szczególnie czaso-
chłonnym. Przykładowo, by wyświetlić listę pli-
ków znajdujących się w komputerze i posiadają-
cych bit suid lub sgid (patrz Tabela 1.) wystar-
czy wpisać ind / \( -perm -02000 -o -perm
-04000 \) -ls . Podobnie możemy ekspery-
mentować z innymi atrybutami: ind / -perm
-2 -o -perm -20 znajdzie wszystkie pliki mo-
gące zostać nadpisane przez grupę użytkownika
oraz przez osoby trzecie, a ind / -nouser -o
Prawo do zapisu w katalogu
Zwróć uwagę, że prawo do zapisu w katalogu umożliwia zmianę zawartości katalogu rów-
nież wtedy, gdy nie jesteśmy jej właścicielami. Innymi słowy będąc posiadaczem pewne-
go katalogu możemy usunąć z niego wszystkie pliki, nawet te, do których nie mamy żad-
nych praw dostępu. Stwarza to oczywiste zagrożenie usunięcia, ale również i podmiany
istotnych plików nie należących do nas. Możemy przecież usunąć pewien plik i a następ-
nie stworzyć nowy w tym samym miejscu i z taką samą nazwą ale z zawartością różniącą
się od oryginału. Brzmi groźnie? Na szczęście jest rozwiązanie – sticky bit , o którym piszę
w punkcie Chmod – specjalne prawa dostępu oraz w Tabeli 1.
Uprawnienia lost+found
Jeżeli system plików nie zostanie prawidło-
wo odmontowany, podczas następnego uru-
chomienia komputera zostanie załączony pro-
gram fsck , który będzie próbował znaleźć błę-
dy w nim a jeżeli takowe są – naprawić. Czę-
sto zdarza się, że fsck nie potrai przywrócić
poprzedniego stanu systemu plików – znajdu-
je w nim bloki danych, które nie są przypisane
do żadnego katalogu czy pliku. Odtwarza on
wtedy wpis w katalogu lost+found znajdują-
cym się w punkcie montowania każdego sys-
temu plików. Pliki te mogą mieć najróżniej-
sze uprawnienia lub ich wcale nie posiadać,
oraz różną zawartość, w tym najbardziej pouf-
ną. Warto co jakiś czas upewniać się, że kata-
log lost+found i jego zawartość są czytelne je-
dynie dla administratora systemu.
Umask – jak to działa?
W rzeczywistości wartość umask nie jest odejmowana od domyślnych uprawnień. Jest to tyl-
ko skrót myślowy, który (podobnie jak przeliczanie uprawnień w systemie ósemkowym za po-
mocą sumowania cyfr) pozwala na łatwe działania bez wgłębiania się w operatory logiczne.
Tak naprawdę operacja, która jest wykonywana to wartość_uprawnień &~ wartość_umask
powodująca obcięcie z domyślnych uprawnień bitów znajdujących się w wartości umask .
Chattr – zaawansowane atrybuty
Niekiedy standardowe prawa odczytu, zapisu
i uruchomienia nie wystarczą nam w ochronie
szczególnie poufnych czy ważnych danych. Tu-
taj z pomocą przychodzi program chattr, dyspo-
nujący gamą zaawansowanych atrybutów, któ-
re możemy nadać plikom lub katalogom. W Ta-
beli 2 przestawiam listę najbardziej przydatnych
atrybutów, które mogą być zmieniane przy uży-
ciu chattr. Niestety, działają one jedynie w sys-
temach plików ext2 i ext3 . Aby przykładowo
nadać plikowi teksty.txt atrybut zapobiegający
aktualizacji wartości atime pliku, wydajemy po-
lecenie chattr +A teksty.txt . Aby ten atry-
but usunąć – chattr -A teksty.txt . Chattr
posiada również przełącznik -R , który działa
identycznie jak -R z chmoda. Aby odczytać atry-
buty pliku teksty.txt (i oczywiście analogicznie
dowolnego innego pliku czy katalogu), wpisu-
jemy lsattr teksty.txt . Polecenie to działa
podobnie do ls – wpisane bez parametru w po-
staci nazwy pliku wyświetli atrybuty wszystkich
plików i katalogów.
Rysunek 3. Przykładowy wynik działania polecenia locate /root/
www.lpmagazine.org
61
332774629.016.png 332774629.017.png 332774629.018.png 332774629.019.png 332774629.020.png 332774629.021.png 332774629.022.png 332774629.023.png 332774629.024.png 332774629.025.png
 
Bezpieczeństwo
Prywatność i bezpieczeństwo użytkownika
-nogroup pokaże nam pliki nie należące do ni-
kogo. Praktycznej ochrony przed tego typu wy-
szukiwaniami nie ma – jedynym rozwiązaniem
jest zadbanie, by wszystkie pliki i katalogi miały
odpowiednie prawa dostępu.
nika wydamy polecenie znalezienia plików nie-
dostępnych dla danego użytkownika, np. locate
/root . Jak nietrudno się domyślić, wyświetli się
nam m.in. pełna zawartość katalogu domowego
roota. Rozwiązaniem jest uruchamianie progra-
mu updatedb w jedynie w kontekście użytkow-
nika nieuprzywilejowanego, bądź skorzystanie
z programu slocate, który jest tak napisany, by
chronić przed tego typu sytuacjami.
wa 34 takich wzorców (z czego 8 jest całkowicie
losowych), co daje nam pewność, że nikt bez po-
mocy specjalistycznych irm nie będzie w stanie
odczytać usuniętych w ten sposób plików. Jak go
używać? O tym można by napisać kolejny arty-
kuł. Zainteresowanych odsyłam do systemowe-
go manuala, z którego przytaczam tutaj kilka
przykładów użycia.
Zagrożenia programu locate
Locate jest programem w założeniu podobnym
do programu ind – jego zadaniem jest wyszu-
kiwanie plików. Podstawową różnicą jest jed-
nak to, że locate działa znacznie szybciej. Aby
z niego korzystać, musimy stworzyć bazę da-
nych, która zawierać będzie spis wszystkich pli-
ków i katalogów. Robimy to, wydając polecenie
updatedb . Zwykle uruchamiane jest ono przez
crona i indeksuje nasze pliki co jakiś czas w tle.
Następnie gdy chcemy znaleźć jakiś plik, (np.
locate ilm.avi ) program przeszukuje jedynie
tę bazę danych, co jest znacznie szybsze od szu-
kania z wykorzystaniem ind. Problem pojawia
się jednak, gdy z kontekstu zwykłego użytkow-
Bezpieczne
usuwanie plików i folderów
Czasami zdarzają się sytuacje, w których nie-
zbędne jest, aby pewne dane zostały izycznie
usunięte bez możliwości ich odzyskania. Są róż-
ne metody, jednak jedną z najskuteczniejszych a
zarazem dość prostych jest użycie programu wi-
pe. Wipe wielokrotnie nadpisuje zawartość pliku
za pomocą specjalnych wzorców korzystając ze
wywołań systemowych odwołujących się bez-
pośrednio do sprzętu. Domyślnie program uży-
wipe -rcf /home/berke/plaintext/
– usuwa katalog rekursywnie wraz z całą za-
wartością ( -r ), automatycznie nadając pra-
wa do zapisu plikom, które ich nie posiadają
( -c ) oraz bez pytania o potwierdzenie ( -f ).
wipe -kq /dev/hda3 – usunie całą zawar-
tość urządzenia /dev/hda3 w trybie szybkim,
używającym jedynie 4 zamiast 34 wzor-
ców ( -q ), nie usuwając jednak samego pliku
/dev/hda3 ( -k ).
wipe -kqD /dev/loppy – usunie zawartość
urządzenia /dev/loppy . Plik ten jednak (jeśli
istnieje) często jest dowiązaniem do właści-
wego urządzenia obsługującego dyskietki;
wipe znajdzie je ( -D ) i usunie jego zawartość
w trybie szybkim ( -q ), nie usuwając samego
pliku ( -k ).
wipe -ri > wipe.log /var/log/* – Usu-
wa rekursywnie całą zawartość /var/log ( -r ),
wyświetlając szczegółowe informacje o usu-
waniu ( -i ) oraz bez pytania o potwierdzenie
( f ) oraz zapisując wyniki do pliku wipe.log .
wipe -qk -l 1440K /dev/fd0 – Usuwa w
trybie szybkim ( -q ) zawartość /dev/fd0 o po-
danym rozmiarze – 1440kB ( -l ), nie usuwa-
jąc jednak pliku ( -k ).
Sticky Bit – znaczenie historyczne
W przeszłości Sticky Bit miał również zastosowanie w odniesieniu do plików wykonywal-
nych. Był on nadawany często używanym programom (np. ls, grep) by poinformować ją-
dro, że kod programu powinien zostać w pamięci także po zakończeniu działania. Miało
to przyśpieszyć jego ponowne uruchamianie. W obecnych czasach mamy o niebo lepsze
zarządzanie pamięcią i automatyczne buforowanie co powoduje, że prócz zastosowania
do katalogów Sticky Bit nie pełni już żadnej roli.
Trudne pojęcia
Logowanie roota – lokalnie
Jeżeli jesteśmy administratorem systemu, może-
my ograniczyć możliwość logowania się użyt-
kownikowi root. Oczywiście nie całkiem, ale
wystarczająco, by utrudnić współużytkownikom
naszego komputera próby odgadnięcia hasła ad-
ministratora. Na początek polecam edycje pli-
ku /etc/securetty . Zawiera on listę urządzeń TTY
(wirtualnych konsol), z których root może się za-
logować do systemu. Domyślnie w pliku będzie
ich dość dużo, co daje potencjalnemu agresoro-
wi zbyt wiele możliwości prób odgadnięcia je-
go hasła. Rozwiązaniem jest usunięcie z pliku
wszystkich linii oprócz tty1. Skutkiem tego jest
możliwość logowania się na konto roota jedy-
Svgalib – opensource'owa biblioteka służąca do wyświetlania graiki w trybie teksto-
wym. W większości przypadków obecnie zastąpiona przez X11.
Cron – daemon zajmujący się okresowym (np. co godzinnym) wywoływaniem innych
programów.
Atime – wartość pliku zawierająca datę ostatniego dostępu do niego.
W sieci
Rysunek 4. Wipe w trakcie działania
http://jakilinux.org/aplikacje/konsola/
screen-sztuczki/
62
kwiecień 2008
332774629.026.png 332774629.027.png 332774629.028.png 332774629.029.png 332774629.030.png
 
Zgłoś jeśli naruszono regulamin