Napisał: Patryk Krawaczyński
20/03/2023 w Bezpieczeństwo
P
ocząwszy od wersji 4.19 jądra systemu Linux możliwe jest uniemożliwienie otwierania FIFO lub zwykłych plików niebędących własnością użytkownika w globalnie zapisywalnych katalogach z ustawionym sticky bit (np. /tmp
). Ochronę tę można stosować osobno dla FIFO, zwykłych plików, symlinków / hardlinków poprzez odpowiednie ustawienia z poziomu sysctl
. Ustawienia te oparte są na łatce HARDEN_FIFO, która znajdowała się w projekcie Openwall Solar Designera, a ich celem jest utrudnienie ataków polegających na spoofingu danych. Poniżej znajduje się krótka lista starych luk, którym można było zapobiec dzięki tej funkcji (niektóre z nich pozwalają nawet na eskalację uprawnień):
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
19/06/2019 w Ataki Internetowe, Bezpieczeństwo
W pierwszym biuletynie bezpieczeństwa za 2019 rok firma Netflix ostrzega przed opartymi o protokół TCP zdalnymi atakami typu DoS, które dotyczą zarówno systemu Linux, jak i FreeBSD. Ich poziom jest określany jako “krytyczny”. Luki odkryte przez Jonathana Looneya dotyczą w szczególności maksymalnego rozmiaru segmentu (ang. Maximum Segment Size (MSS)) oraz potwierdzeń selektywnych (ang. Selective Acknowledgments (SACK)). Najpoważniejszą jest luka “SACK Panic”, które pozwala na zdalne wywołanie paniki jądra systemu Linux.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
22/07/2015 w Bezpieczeństwo
P
odstawowy problem skalowalności protokołu TCP w jądrze Linuksa jest związany z liczbą nowych połączeń, jakie mogą być tworzone na sekundę. Odnosi się to bezpośrednio do obsługi gniazd powstających w trybie nasłuchu, które są blokowane. Blokady powodowane są nie tylko przez pakiety z flagą SYN, ale także SYN-ACK oraz ACK (ostatni w potrójnym uścisku dłoni). Podczas ataków DoS / DDoS za pomocą tego rodzaju pakietów atakujący ma na celu wysłanie, jak największej ilości spreparowanych pakietów, które mają na celu osiągnąć i spowodować problem z blokowaniem gniazd w trybie nasłuchu. Jedną z metod jest podniesienie bardzo niskiego limitu dla tego typu gniazd oraz kolejki oczekujących połączeń w systemie:
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
28/06/2015 w Bezpieczeństwo
O
d wersji 2.6.31 Linux daje nam namiastkę funkcjonalności jądra monolitycznego, czyli możliwość blokady ładowania nowych modułów. Wykorzystanie tej opcji podnosi poziom ochrony systemu przed załadowaniem szkodliwych modułów oraz ograniczenia działania niektórych rootkitów.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
13/04/2014 w Bezpieczeństwo
O
d wersji jądra 2.6.12 (w innych dystrybucjach jak np. CentOS poszczególne patche mogą być aplikowane do niższych wersji) włączony jest mechanizm ASLR – Address Space Layout Randomization, czyli Losowe Ułożenie Przestrzeni Adresowej, który umożliwia wprowadzenie losowości do schematu adresowania danych procesu, które ładowane są do pamięci. Oznacza to, że ASLR może ulokować położenie kodu wykonalnego, bibliotek, sterty oraz stosu w losowych pozycjach przestrzeni adresowej procesu. Utrudnia to przewidywanie przez atakujący program adresu następnych instrukcji i zabezpieczenie systemu przed atakami typu ret2libc.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
02/09/2010 w Administracja, Debug
Jednym ze stanów połączenia protokołu TCP jest TIME_WAIT. Jest to stan, w którym następuje oczekiwanie w celu upewnienia się, że druga strona otrzymała potwierdzenie rozłączenia. Zgodnie z dokumentem RFC 793 połączenie w takim stanie może być najdłużej przez 4 minuty. W systemie Linux standardową wartością dla tego stanu jest 60 sekund. Podczas oczekiwania w stanie TIME_WAIT ponowne nawiązanie połączenia z klientem (retransmisja) kosztuje znacznie mniej niż nawiązanie nowego połączenia. Jednak utrzymywanie bardzo wielu połączeń w tym stanie wpływa niekorzystnie na wydajność serwera.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
29/05/2010 w Administracja, Bezpieczeństwo
J
eśli pracujemy na developerskiej maszynie nad rozwojem jądra systemu lub sterowników urządzeń wspieranych przez jądro, lub nawet uruchamiamy testowy kod, który prawdopodobnie spowoduje tzw. błąd kernel panic – możemy wykorzystać poniżej przedstawione rozwiązanie, które przydaje się w przypadkach kiedy nasza maszyna z jakieś przyczyny zawiesza się, zamieniając się w nagromadzony stos części komputerowych (sposób ten jest bezużyteczny, gdy jądro zupełnie zamknie się na świat, pozostaje wówczas tylko twardy reset). Poprzez kombinację odpowiednich klawiszy możemy przeprowadzić synchronizację systemu plików oraz przemontować go w tryb tylko do odczytu. W ten sposób poprzez restart komputera unikniemy utraty danych oraz sesji programu fsck.
[ czytaj całość… ]
Napisał: Patryk Krawaczyński
12/06/2009 w Bezpieczeństwo
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ść… ]
Ostatni komentarz :