NFsec Logo

Bash fork() bomb – rozwidlanie procesów

17/06/2009 w Bezpieczeństwo 1 komentarz.

F

ork – bomba (ang. fork bomb) jest swego rodzaju atakiem Denial of Service prowadzącym do całkowitego wykorzystania zasobów systemowych. Metoda ta opiera się na szybkim stworzeniu wielu kopii programu, które unieruchomią system. Ponieważ w wieloprocesowym systemie tylko określona ilość procesów może być efektywnie wykonywana naraz, stworzenie odpowiednio dużej liczby procesów może unieruchomić system. Wykorzystując funkcję fork(), która służy do tworzenia nowych procesów, możemy zapełnić tablicę procesów systemu operacyjnego.
[ czytaj całość… ]

Ograniczenia z poziomu powłoki

16/06/2009 w Bezpieczeństwo Możliwość komentowania Ograniczenia z poziomu powłoki została wyłączona

P

owłoka zapewnia interfejs pomiędzy jądrem, a użytkownikiem. Można ją opisać jako interpreter. Interpretuje ona polecenia wprowadzane przez użytkownika i przekazuje je do jądra systemu. Interfejs powłoki jest bardzo prosty. Zwykle składa się z monitu, po którym wprowadza się polecenie i następnie potwierdzenie klawiszem [Enter]. Polecenia wpisujemy w wierszu, który jest często nazywany wierszem poleceń. Po dłuższym użytkowaniu Linuksa można przekonać się, że polecenia wprowadzane w wierszu mogą być bardzo skomplikowane, a jej interpretacyjne zdolności dają możliwość stosowania wielu wymyślnych sztuczek.
[ czytaj całość… ]

Przenoszenie dużej ilości plików

16/06/2009 w Administracja Możliwość komentowania Przenoszenie dużej ilości plików została wyłączona

O

d czasu do czasu zdarzy się potrzeba przeniesienia kilku plików w systemie. Oczywiście nie ma z tym większego problemu, wystarczy użyć polecenia: “mv katalog1/* katalog2/”. Problem pojawia się w momencie, gdy specjalny znak gwiazdki (ang. asterisk) przy bardzo dużej liczbie plików powoduje, że każdy plik w katalogu źródłowym zostaje dodany jako parametr linii poleceń komendy mv. Spowodować może to przepełnienie buforu linii poleceń i zakończenie programu z błędem: "Too many arguments" (Zbyt wiele argumentów).
[ czytaj całość… ]

Przynależność użytkowników do grupy

14/06/2009 w Hacks & Scripts Możliwość komentowania Przynależność użytkowników do grupy została wyłączona

S

earchgroupuser jest skryptem służącym do wyświetlania użytkowników należących do wybranej grupy systemowej. Autorem skryptu jest użytkownik drunna, z forum Linux Questions. Prezentuje on po kolei: 0) nazwę grupy, 1) id grupy, 2) użytkowników odczytanych z /etc/group, 3) użytkowników odczytanych z /etc/passwd:
[ czytaj całość… ]

mod_spamhaus

13/06/2009 w Bezpieczeństwo Możliwość komentowania mod_spamhaus została wyłączona

M

od_spamhaus jest modułem dla serwera WWW Apache 2, który korzysta z list SBL ang. Spamhaus Block List) oraz XBL (ang. Exploits Block List) serwisu Spamhaus w celu blokady dostępu do wybranej strony WWW wszystkich komputerów, które odpowiedzialne są za rozsyłanie wiadomości SPAM w Internecie lub zainfekowane są szkodliwym oprogramowaniem (robakami, końmi trojańskimi, wirusami, wbudowanymi mechanizmami do rozsyłania spamu).
[ czytaj całość… ]

Parametry jądra i protokołów sieciowych

12/06/2009 w Bezpieczeństwo Możliwość komentowania Parametry jądra i protokołów sieciowych została wyłączona

J

ądro systemu Linux pozwala na wyłączanie oraz włączanie konkretnych usług sieciowych tuż po starcie systemu za pomocą przekazania odpowiednich wartości do pseudo-systemu plików /proc/sys. W ten sposób jesteśmy w stanie dokonać zmian w systemie bez wymogu rekompilacji jego jądra. Dokonane zmiany umożliwiają nam protekcję przed takimi atakami jak Man In the Middle, SYN Cookies, Ping Flood, Source Routing Scans czy IP Spoofing. Dają również możliwość uaktywnienia rozszerzonych funkcjonalności systemu pod postacią logowania różnych zdarzeń czy zachowania się względem zrzutu pamięci. Dane wartości możemy odczytać / ustawić bezpośrednio za pomocą systemu pliku /proc lub za pomocą użycia programu sysctl.
[ czytaj całość… ]

Podszywanie ARP i adresy sprzętowe

11/06/2009 w Bezpieczeństwo Możliwość komentowania Podszywanie ARP i adresy sprzętowe została wyłączona

K

ażdy interfejs sieciowy (na przykład karta sieciowa) w komputerze lub innym urządzeniu posiada unikalny sprzętowy adres zaimplementowany przez producenta. ARP (Adress Resolution Protocol) – jest protokołem rozróżniania tych adresów. Jego zadaniem jest przetłumaczyć abstrakcyjny adres IP na bardzo konkretny adres sprzętowy urządzenia sieciowego. Kiedy host zamierza rozpocząć sesję, wysyła komunikat ARP z adresem IP komputera docelowego.
[ czytaj całość… ]

Obrona przed atakami DDoS w Linuksie

10/06/2009 w Magazyny Możliwość komentowania Obrona przed atakami DDoS w Linuksie została wyłączona

N

ie ma w pełni skutecznych metod zapobiegania atakom Denial of Service. Gdy strumień wrogich pakietów dotrze do celu, pozostaje tylko przeczekać atak. Jedynym sposobem zminimalizowania zagrożeń jest zatrzymanie niechcianego ruchu jak najbliżej miejsca, w którym powstaje.
[ czytaj całość… ]

Rozkładanie obciążenia za pomocą serwera DNS

09/06/2009 w Hacks & Scripts Możliwość komentowania Rozkładanie obciążenia za pomocą serwera DNS została wyłączona

P

rzedstawiony hack jest tłumaczeniem “Distributing Server Load with Round-Robin DNS” z książki “Linux Servers Hacks” autorstwa Rob’a Flickenger’a udostępnionym on-line (Hack #79) na stronie http://hacks.oreilly.com. Do tłumaczenia zostało dodane także parę informacji od tłumacza.
[ czytaj całość… ]

Parted – tworzenie partycji większej niż 2 TB

09/06/2009 w Administracja Możliwość komentowania Parted – tworzenie partycji większej niż 2 TB została wyłączona

U

żywanie Linuksa na zwykłych stacjach roboczych generalnie wymaga dysków o małej pojemności, podzielonych na jeszcze mniejsze partycje. Jednak w przypadku serwerów wymagane są partycje o bardzo dużych pojemnościach. Dla przykładu: nie jesteśmy w stanie stworzyć partycji o wielkości 4 TB (Terabajtów) opartej na nadmiarowej macierzy niezależnych dysków (ang. RAID), za pomocą zwykłego polecenia fdisk (pozwala ono tylko na utworzenie partycji do 2 TB). W celu rozwiązania tego problemu można użyć programu GNU parted z obsługą Intelowskiej tablicy partycji GPT (ang. GUID Partition Table).
[ czytaj całość… ]