from: http://seclists.org/fulldisclosure/2009/Jul/0388.html
Jeśli najlepiej to rozumiem na podstawie postów z: http://news.ycombinator.com/item?id=723798 chłopaki Matasano pozostawili dostęp do sshd internet dostępny - jakieś proponowane rozwiązania (z punktu widzenia programowania)?
security
vulnerabilities
hacking
użytkownik14898
źródło
źródło
Odpowiedzi:
Jak zhakowano Matasano?
Nie da się odpowiedzieć z informacji zawartych w poście na pełne ujawnienie. Jednak zawsze interesujące jest spekulowanie, ponieważ dają one trochę informacji -
Działają binarnie
th3_f1n41_s01ut10n
na serwerze Matasano, który łączy się z portem ssh. Znajduje prawidłowego użytkownika innego niż root za pomocą nieznanych środków, a reszta danych wyjściowych jest redagowana.Plik binarny jest uruchamiany ponownie przy użyciu znalezionej nazwy użytkownika, która loguje się i łączy z serwerem na porcie 3338 (mam nadzieję, że nie jest zarejestrowana w ich nazwie ...).
Mogą sugerować, że mają 0 dni na to jądro, co jest dość stare, jeśli wziąć pod uwagę akcje tej firmy.
Ups - nagle użytkownik jest teraz rootem. Mają exploita eskalacji uprawnień lokalnych w / tmp, który może być 0-dniem, o którym mówili.
Istnieją więc co najmniej dwa exploity - exploit OpenSSH, aby uzyskać prawidłowego użytkownika innego niż root w systemie i zalogować się jako ten użytkownik, a następnie eskalację uprawnień lokalnych.
Biorąc pod uwagę, że OpenSSH ma kilka znanych problemów bezpieczeństwa od wersji 4.5:
Ze strony bezpieczeństwa OpenSSH :
~/.ssh/rc
przypadku sesji, których komenda została zastąpiona przez dyrektywę ForceShommand sshd_config (5). Było to udokumentowane, ale niebezpieczne zachowanie (opisane w uwagach do wydania OpenSSH 4.9).Wydaje mi się, że to starsze jądro Linuksa i starszy demon SSH zrobili dla nich. Ponadto działał na ich serwerze www, który jest dostępny w Internecie, co moim zdaniem jest dość pewne. Ludzie, którzy się włamali, najwyraźniej chcieli ich zawstydzić.
Jak zapobiec tym atakom?
Można temu zapobiec poprzez proaktywną administrację - upewnienie się, że wszystkie usługi internetowe są załatane, i ograniczenie liczby osób, które mogą się połączyć, zamiast pozwalania ludziom na połączenie z dowolnego miejsca. Ten odcinek potwierdza lekcję, że bezpieczna administracja systemem jest trudna i wymaga poświęcenia ze strony biznesu, aby dać czas IT na utrzymanie łatki - w rzeczywistości nie jest to coś, co dzieje się łatwo, przynajmniej w mniejszych firmach.
Najlepszym rozwiązaniem jest stosowanie metody pasów i nawiasów klamrowych - uwierzytelnianie za pomocą klucza publicznego, biała lista w demonie ssh, uwierzytelnianie dwuskładnikowe, ograniczenia adresów IP i / lub umieszczanie wszystkiego za VPN są możliwymi drogami do jego zablokowania.
Chyba wiem, co jutro będę robił w pracy. :)
źródło
Ludzie uwielbiają tworzyć FUD w oparciu o to, ale wygląda na to, że wiedzieli, że użytkownik Adam już tam był i znał również jego hasło (może za pomocą brutalnej siły lub innych metod). Jednak chcą wyglądać fajnie i tworzyć zamieszanie.
Inną ciekawą rzeczą do odnotowania jest to, że użytkownik Adam nie logował się w tym polu przez ponad rok:
(wynik Lastlog)
Prawdopodobnie więc zatrzymał to hasło (być może złe) przez jakiś czas.
* Gdyby naprawdę mieli narzędzie do wyszukiwania nazw użytkowników za pośrednictwem SSH, mogliby użyć wszystkich innych użytkowników w celu uzyskania zdalnego dostępu, ale użyli najczęściej używanej nazwy użytkownika w tym polu (łatwo zgadnąć).
źródło
Dlaczego miałbyś spróbować rozwiązać to z programistycznego punktu widzenia?
Zamiast tego powinieneś rozwiązać go z punktu widzenia inteligentnego serwera-administratora. W komentarzach do opublikowanych linków znajduje się kilka świetnych sugestii, na przykład użycie białej listy.
Chciałbym również to dodać, ponieważ tutaj pytasz, najprawdopodobniej nie jesteś ekspertem w dziedzinie bezpieczeństwa, a wszystko, co możesz napisać, spowoduje tylko więcej dziur. To naprawdę nie jest pytanie programistyczne.
źródło
Chroń swoje oprogramowanie przed atakami 0-dniowymi ... co jest niemożliwe.
Być może dobrym rozwiązaniem jest twierdzenie, że oprogramowania nie da się zhakować, co doprowadzi białych kapeluszy do wypróbowania go i pełnego ujawnienia wszystkiego, pozostawiając mniej dziur. Oracle 10 miał takie roszczenie, a następnego dnia znaleziono 9 nowych dziur. Teraz jest całkiem bezpieczny.
Najprawdopodobniej haker nadużył konfiguracji idealnie dobrego oprogramowania
źródło
zastanawia mnie, że mieli tak wielu użytkowników z powłokami na tym komputerze. tak na pewno stały się własnością, wszystko inne to czerwony śledź, który ma rozproszyć uwagę. jeden z nich najprawdopodobniej zrobił kopię zapasową swojego klienta ssh na innej maszynie powłoki, a potem gra się skończyła. udostępnianie wszystkim kont powłoki i udostępnianie sshd world jest po prostu leniwe i głupie.
źródło