290 likes | 440 Views
Linux vs. Hacker. Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008. NO-ONE FUCKS WITH TUX. LINUX. THE OS FOR THE TRULY HARDCORE. Pete Black, 1999. Porównanie dwu systemów. „Żeby zepsuć system Linuks trzeba nad tym popracować; Żeby zepsuć system Windows wystarczy popracować na nim”
E N D
Linux vs. Hacker Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 NO-ONE FUCKS WITH TUX. LINUX. THE OS FOR THE TRULY HARDCORE. Pete Black, 1999 Rendez Vous z Pingwinkiem
Porównanie dwu systemów „Żeby zepsuć system Linuks trzeba nad tym popracować; Żeby zepsuć system Windows wystarczy popracować na nim” Scott Granneman, SecurityFocus.com • konta administratora systemu • częstotliwość aktualizacji • niezależność modułów systemu • podatność na wirusy, spyware itp… • początkowe wyposażenie systemu • dostęp do kodu źródłowego Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Statystyki obu systemów • Potencjalne zagrożenie wirusami: Windows: Powstaje około 100 wirusów dziennie, epidemie Linuks: istnieje około 100 wirusów, brak epidemii • Potencjalne zagrożenie spyware: Windows: kilkanaście tysięcy nowych rocznie Linuks: odkryto poniżej 1000 sztuk • Czas reakcji na lukę w systemie: Windows: miesiąc czasu Linuks: kilka godzin • Częstotliwość ataków na serwery: Windows: stosunkowo mała Linuks: stosunkowo duża Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Pozyskiwanie danych …składa się z: • Podsłuchiwania • Skanowania Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Podsłuchiwanie w sieci • Przestawienie karty sieciowej w tryb promiscuousmode powoduje otrzymywanie pakietów zaadresowanych do dowolnego komputera w danej podsieci Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 • WIRESHARK (www.wireshark.org) • Graficzny analizator ruchu sieciowego • Wykorzystuje program tcpdump • Posiada możliwość filtrowania danych • TCPDUMP (www.tcpdump.org) • Jest programem tekstowym służącym do zbierania pakietów w trybiepromiscious mode Rendez Vous z Pingwinkiem
tcpdump/libcap Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Powyższy screen pokazuje zrzut 10 pakietów TCP pochodzących z portów 79-81, na interfejsie eth0 w trybie głośnym (verbose mode) libpcap jest biblioteką odpowiedzialną za przechwytywanie pakietów przez program Rendez Vous z Pingwinkiem
Wireshark • Posiada zaawansowane opcje filtrowania po dowolnym polu w nagłówku TCP/ IP/UDP • Pokazuje zebrane dane w przejrzystym interfejsie • Posiada podstawowe opcje statystyczne pozwalające w wygodny sposób analizować ruch sieciowy • Potencjalny haker-podsłuchiwacz może w ten sposób podsłuchać login czy hasło przesyłane siecią Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Zrzut ekranowy okna programu Wireshark Rendez Vous z Pingwinkiem
Wireshark – hasło jawnym tekstem Podczas łączenia się z serwerem telnetu przesyłamy login ‘u’ jawnym tekstem Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Także hasło ‘h’ zostało przesłane jawnym tekstem. Haker w trybie promiscious modepodłączony do naszej sieci może podsłuchać takie hasło. Logowanie szyfrowanym protokołem SSH skutecznie utrudnia przechwycenie hasła. Rendez Vous z Pingwinkiem
Skanowanie • Skanowanie portów jest kolejną metodą pozyskiwania danych o zdalnym komputerze… • Wykorzystywane oprogramowanie to przedewszystkim nmap, ale także p0f czy xProbe2 • Poprzez skanowanie jesteśmy w stanie pozyskać informacje na temat tego, jaki system jest zainstalowany na danej maszynie, jakie usługi są uruchomione publicznie oraz częściowo także określić ich wersję • Skanowanie może dotyczyć jednegokomputera, lub może być skierowane przeciwkomputerom z podanego zakresu, które udostępniają określoną usługę • Skanowanie portów bez zgody właściciela serwera jest zabronione prawem polskim: art. 267 § 1, §2 Kodeksu Karnego Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
insecure.org - nmap • Program pozwalający na wykonanie wielu rodzajów skanowania zdalnego systemu, m.in. SYN, CON, ACK, FIN, XMass. • Jeden z najczęściej używanych skanerów aktywnych. • Podstawowe narzędzie do wykonywania najprostszego audytu bezpieczeństwa sieciowego. • Prostotę używania gwarantują nakładki, takie jak nmapfe czy Zenmap Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
dione.cc – p0f • Pasywny skaner napisany przez Michała Zalewskiego (www.dione.cc) • Umożliwia wykrywanie określonych modułów sieci, takich jak load ballancing czy NATu. Podaje także informacje o uptime. Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Ataki • spoofing • pharming • phishing • DoS / DDoS / DRDoS • backdoor/ trojan / RAT • exploity … i wiele, wiele innych ataków (lokalnych jak i zdalnych) Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
spoofing • Podszywanie się • Atakujący zamienia w nagłówkach swoich pakietów adres źródłowy bądź docelowy w celu podszycia się pod inną maszynę (ofiarę ataku). Odmiany tego ataku to: ARP spoofing – zamiana adresu MAC w pakietach ARP. a) spoofing bramy – powoduje przechwycenie ruchu przeznaczonego dla ofiary ataku. b) spoofing hosta – powoduje przechwycenie ruchu wysyłanego przez ofiarę. IP spoofing – zamiana źródłowego adresu IP w celu zamaskowania atakującego w sieci, np. podczas wykonywania ataku DOS. Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
DoS / DDoS / DRDoS DoS : • Atak polegający na przeciążeniu usługi działającej na komputerze ofiary. • W tej odmianie atak przeprowadzany jest z jednego komputera i wycelowany jest w określoną usługę, powodując przepełnienie określonego bufora, np. miejsca na dysku w serwerze FTP lub ilości wolnych gniazd w serwerze SSH. • Ponieważ atakujący podpisuje się zawsze tym samym adresem, łatwo zabezpieczyć się przed takim atakiem, blokując jego adres. Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 DDoS : • Jest atakiem typu DoS, jednakże przeprowadzonym z wielu komputerów jednocześnie. Często w celu wykonaniu ataku DDoS wykorzystywany jest wcześniej przygotowany BotNet (sieć komputerów zombie) DRDoS : • Jest odmianą ataku DoS, w której maszyna atakowana po skutecznym ataku na nią, jest zdolna do przeprowadzania ataku na inne komputery. Staje się komputerem zombie. Rendez Vous z Pingwinkiem
phishing i pharming phishing : • Atakujący podszywa się pod kogoś kim nie jest w celu pozyskania poufnych danych. pharming : • Atakujący powoduje zmianę wpisu w serwerach DNS ( atak DNS cache poissoning ) w taki sposób, aby podmieniona nazwa hosta wskazywała na wcześniej spreparowaną stronę WWW. • Najczęściej podmienianymi stronami są strony banków, serwisów aukcyjnych czy sklepów internetowych. • Pharming uznawany jest za bardziej wyrafinowany rodzaj phishingu. Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Backdoor / trojan / RAT backdoor : • Umyślnie instalowana bez wiedzy ofiaryluka w zabezpieczeniach, np. ukryty serwer dostępowy, pozwalający na zdalne przejęcie kontroli nad systemem. trojan : • Aplikacja, która podczas instalowania oprogramowania na komputerze ofiary, instaluje także kod pozwalający na przejęcie kontroli nad komputerem. RAT ( Remote Access Tool ) : • Aplikacja, pozwalająca na legalny dostęp i wykorzystywanie zasobów odległego komputera. Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 RAT ( Remote Access Trojan ) : • Aplikacja, pozwalająca na kontrolę nad ofiarą, często wykorzystując do tego celu backdoor RootKit : • Funkcjonalność pozwalająca na ukrycie działalności szkodliwego oprogramowania w systemie (np. na liście procesów) Rendez Vous z Pingwinkiem
Podatność – PoC - exploit • Błędy programistyczne są potencjalnymi podatnościami (vulnerabilities) • Po wykryciu takiego błędu mówimy o istnieniu określonej podatności na atak • PoC (ang. Proof of Concept) jest dowodem na to, że dana podatność istnieje. PoC wykorzystywany jest w celach informacyjnych, nie przynosi szkód i zazwyczaj jest dokładnym opisem, jak daną podatność można wykorzystać. • Exploit program napisany na podstawie PoC, wykorzystujący podatność w złośliwy sposób. • Najczęściej wykorzystywane podatności to BufferOverflow, Heap overflow, IntegerOverflow, SQL Injection, code injection.. Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Exploity – wyszukiwarki • Istnieją strony zajmujące się udostępnianiem swoich ciągle poszerzanych baz exploitów, PoC oraz informacji o nowych podatnościach. • Niektóre z nich umożliwiają wyszukiwanie podatnego oprogramowania, także poprzez podanie jego producenta oraz nazwy i wersji oprogramowania. • Przykładowymi wyszukiwarkami exploitów są: milw0rm.com packetstormsecurity.org securityfocus.com secureroot.com Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Zabezpieczamy się… • użytkownicy i grupy • chmod, chown, chgrp • SELinux • polityki haseł • kopie zapasowe • logi systemowe • aktualizacje oprogramowania • bezpieczeństwo i funkcjonalność Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Użytkownicy i grupy • Do dodawania użytkowników w systemie Linuks służy polecenie adduser • System Linuks posiada kilka(naście) domyślnych użytkowników wykorzystywanych przez określone usługi systemowe • Dodatkowo system zawierać może określoną ilość kont użytkowników • Poprawna polityka dostępu do komputera zakłada maksymalne ograniczenie ilości użytkowników, przez co zmiejszamy potencjalne zagrożenie włamania do systemu • Poprawna polityka zakłada również zmianę haseł domyślnych lub w ogóle usuwanie możliwości logowania się użytkowników systemowych Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 • Do dodawania grup w systemie Linuks służy polecenie addgroup • System Linuks posiada możliwość tworzenia grup systemowych i przypisywania do nich użytkowników ( /etc/passwd ; /etc/shadow ) • Zasoby na podstawie informacji o grupie do której przynależą, mogą oferować różne poziomy dostępu • Poprawna polityka zarządzania grupami zakłada tworzenie jak największej ilości wyspecjalizowanych zbiorów użytkowników i odpowiedni przydział poziomów dostępu do zasobów Rendez Vous z Pingwinkiem
chmod, chown, chgrp • Polecenie chmod służy do zarządzania prawami dostępu do zasobów • chmod działa na następującej zasadzie: Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 • polecenia chown i chgrp służą do zmiany właściciela zasobu lub grupy do której przynależy dany zasób Sposoby wywołania powyższych poleceń: chmod UGO <zasób> chown <user> <zasób> chgrp <grupa> <zasób> Rendez Vous z Pingwinkiem
SELinux • Łatka na jądro systemowe zwiększająca bezpieczeństwo systemu poprzez implementację polityk dostępu do zasobów opratych o model MAC ( Mandatory Access Control ) • System zaprojektowany został na potrzeby wojska USA • W latach 90’ został udostępnionym na zasadach otwartego źródła dla użytku publicznego • Posiada dodatkowe rozgraniczenia dostępu do zasobów oparate na politykach w makrojęzyku m4 Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
polityka haseł • Zestaw reguł do zapewnienia bezpiecznego procesu autoryzacji w systemie • Proste hasła • Hasła standardowe • Użycie zewnętrznych urządzeń: czytnik linii papilarnych token klucze USB • Tworzenie haseł na podstawie zdań, wplatanie cyfr, znaków specjalnych Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Kopie zapasowe • Poprawna polityka kopii zapasowych powinna zakładać wykonywanie kopii najważniejszych dokumentów co pewien określony interwał czasowy, w zależności od priorytetu przechowywanych informacji i oszacowanego ryzyka utraty danych (włamania, sprawność sprzętu) • Kopie zapasowe tworzymy na TRWAŁYCH nośnikach • Kopie zapasowe dzielimy na całkowite i różnicowe (przyrostowe) • Przy tworzeniu kopii zapasowych należy zwrócić uwagę na to, w jaki sposób możemy ODTWORZYĆ dane ze sporządzonej kopii (najczęściej spotykany błąd polityki backupu) Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Logi systemowe • Logi systemowe przechowywane są w odpowiednich kategoriach (plikach) w katalogu /var/log • Konfiguracja daemona logów systemowych pozwala m.in. zmieniać poziom logowanych zdarzeń oraz ustalać kategorie logowania (pochodzenie zdarzeń) • Dwa najpopularniejsze programy to syslogd i klogd Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Aktualizacje • Większość dystrybucji Linuksowych posiada zintegrowaną aplikację lub system aplikacji zarządzający instalacją nowego oprogramowania czy też aktualizacjami systemowymi. • Przykładowymi systemami realizującymi takie zadania są: apt-get (Debian) urpmi (Mandriva) emerge (Gentoo) • Aktualizacje pobrane za pomocą takich narzędzi, pobierane są z repozytoriów oferujących poprawnie funkcjonujące oprogramowanie. • Użytkownik podczas konfiguracji menadżera pakietów sam wybiera repozytoria z pośród tych, oferujących wersje stabilne oraz testowe oprogramowania Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Bezpieczeństwo i funkcjonalność • Podczas instalowania oprogramowania musimy liczyć się z potencjalnymi błędami programistycznymi popełnionymi podczas pisania aplikacji, nawet jeśli używamy repozytoriów STABILNYCH • Oznacza to, że zawsze należy stosować zasadę ograniczonego zaufania • Oznacza to również, że na bezpieczeństwo naszego systemu pośrednio wpływ może mieć ilość zainstalowanego na nim oprogramowania Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem
Pytania Michał Krzemieniewski, Hubert Pruszyński, Łódź 2008 Rendez Vous z Pingwinkiem