NFsec Logo

KASAN – odkrywa nową podatność w jądrze od 2.6 do 4.20

20/02/2019 w Bezpieczeństwo Możliwość komentowania KASAN – odkrywa nową podatność w jądrze od 2.6 do 4.20 została wyłączona

K

ASAN (The Kernel Address Sanitizer) – wykrywający błędy pamięci dynamicznej w kodzie jądra Linuksa właśnie odkrył nową lukę typu: use-after-free (użycia po zwolnieniu pamięci), która pojawiła się od wczesnych wersji jądra Linux 2.6. KASAN (wraz z innymi środkami do sanityzacji) okazał się dość cenny w wykrywaniu różnych błędów w programowaniu zanim zostaną wykorzystane w rzeczywistym świecie. Tym razem padło na odkrycie: CVE-2019-8912. W kodzie podsystemu sieciowego sockfs wykrył podatność use-after-free, która może doprowadzić do wykonania dowolnego kodu (ang. arbitrary code execution). Problem został zgłoszony w zeszłym tygodniu przez inżyniera Huawei i wkrótce po tym został naprawiony. Wydanie jądra Linuksa w wersji 4.20.11 nie wydaje się jeszcze posiadać tej poprawki, ale wkrótce powinna pojawić się w różnych stabilnych / długoterminowych gałęziach.
[ czytaj całość… ]

Błędy w weryfikatorze BPF pozwalają na wykonanie dowolnego kodu w jądrze

22/12/2017 w Bezpieczeństwo Możliwość komentowania Błędy w weryfikatorze BPF pozwalają na wykonanie dowolnego kodu w jądrze została wyłączona

J

ądro Linuksa zbudowane ze wsparciem wywołania systemowego bpf(2) (CONFIG_BPF_SYSCALL) podatne jest na uzyskanie dostępu do odczytu i zapisu przestrzeni adresowej jądra. Do błędu może dojść, gdy użytkownik systemu uruchomi szkodliwy program BPF powodujący błędy obliczeń w module weryfikatora (funkcja check_alu_op) Berkeley Packet Filter. Tym samym nieuprawniony użytkownik może wykorzystać tę lukę do eskalacji swoich uprawnień w systemie. Podatne są wersje jądra od 4.9 do 4.14.8. Ograniczenie luki jest możliwe poprzez ustawienie opcji w sysctl:

echo 1 > /proc/sys/kernel/unprivileged_bpf_disabled

lub

sysctl -w kernel.unprivileged_bpf_disabled=1
echo kernel.unprivileged_bpf_disabled=1 | \
tee /etc/sysctl.d/90-CVE-2017-16995-CVE-2017-16996.conf

Spowoduje ona zablokowanie dostępu do wywołania bpf() dla nieuprawnionych użytkowników (ponowne jej wyłączenie wymagać będzie restartu systemu).

Więcej informacji: Unprivileged bpf(), Debian, RedHat/CentOS, Ubuntu

SMBLoris

04/08/2017 w Bezpieczeństwo Możliwość komentowania SMBLoris została wyłączona

Podczas studiowania eksploita EternalBlue badacze Sean Dillon oraz Jenna Magius w czerwcu 2017 r. odkryli 20’sto letnią lukę w protokole SMB (ang. Server Message Block), która umożliwia przeprowadzenie ataku odmowy usługi (DoS) poprzez wyczerpanie zasobów pamięci wybranego komputera. Podatne są wszystkie wersje protokołu SMB (1,2 i 3) oraz systemy Windows 10 aż do wersji 2000 (patrząc wstecz od najnowszej wersji).
[ czytaj całość… ]

Kernel Address Space Layout Randomization

18/07/2017 w Bezpieczeństwo Możliwość komentowania Kernel Address Space Layout Randomization została wyłączona

J

ak zostało to wspomniane we wcześniejszym wpisie – w wersji Linuksa v3.14 został wprowadzony mechanizm Kernel Address Space Layout Randomization. Wiele dystrybucji od jakiegoś czasu i tak zdecydowało o włączeniu KASLR dlatego od wersji v4.12 jądra Ingo Molnar podjął decyzję o jego aktywacji w standardowej konfiguracji. Oznacza to, że kod jądra będzie losowo umieszczany w pamięci RAM przy każdym starcie systemu:

# 1'wsze uruchomienie
root@darkstar:~# cat /proc/kallsyms | grep ' commit_creds\| prepare_kernel'
ffffffff8109eb60 T commit_creds
ffffffff8109ee40 T prepare_kernel_cred
# 2'gie uruchomienie
root@darkstar:~# cat /proc/kallsyms | grep ' commit_creds\| prepare_kernel'
ffffffffaa0a3bd0 T commit_creds
ffffffffaa0a3fc0 T prepare_kernel_cred

Na temat efektywności tego rozwiązania wypowiedział się Brad Spengler z PaX Team. Warto również zapoznać się z prezentacją Black Hat – „Breaking Kernel Address Space Layout Randomization (KASLR) With Intel TSX”. Dlatego rozwiązanie to należy traktować jako jedną z wielu warstw do ochrony systemu.

Więcej informacji: Kernel address space layout randomization

mimipenguin

03/04/2017 w Hacks & Scripts Możliwość komentowania mimipenguin została wyłączona

H

unter Gregal napisał proste narządzie do zrzucania haseł użytych w sesji logowania bieżącego użytkownika na stacji roboczej Linuksa. Skrypt był wzorowany na podstawie popularnego narzędzia dla systemu Windows o nazwie mimikatz. Wykorzystuje on zapisane czystym tekstem dane uwierzytelniające, które są zrzucane razem z pamięcią procesu. Plik z zawartością pamięci jest później przeszukiwany pod kątem linii, które mają wysokie prawdopodobieństwo przechowywania haseł.

Więcej informacji: mimipenguin

Odczytywanie stanu pamięci w systemie

21/07/2016 w Administracja 1 komentarz.

W

większości przypadków systemy Linuksowe dobrze radzą sobie z obsługą pamięci. Istnieje zawsze ryzyko, że niektóre programy wymkną się spod kontroli i przydzielą sobie więcej pamięci niż jest normalnie możliwe i wejdą w strefę pliku wymiany. W takich sytuacjach można zaobserwować znaczne spowolnienie systemu (chyba, że używamy dysków SSD dla swap), a sprawdzenie dostępnej pamięci będzie prawdopodobnie pierwszą rzeczą jakiej należy się przyjrzeć.
[ czytaj całość… ]