Pentesting Methodology
Last updated
Last updated
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)
Jeśli jesteś zainteresowany karierą w hacking i hackowaniem tego, co nie do hackowania - zatrudniamy! (wymagana biegła znajomość polskiego w mowie i piśmie).
Loga Hacktricks zaprojektowane przez @ppiernacho.
Czy masz fizyczny dostęp do maszyny, którą chcesz zaatakować? Powinieneś przeczytać kilka sztuczek dotyczących ataków fizycznych i innych dotyczących ucieczki z aplikacji GUI.
W zależności od tego, czy test, który wykonujesz, jest testem wewnętrznym czy zewnętrznym, możesz być zainteresowany znalezieniem hostów w sieci firmy (test wewnętrzny) lub znalezieniem zasobów firmy w internecie (test zewnętrzny).
Zauważ, że jeśli wykonujesz test zewnętrzny, po uzyskaniu dostępu do wewnętrznej sieci firmy powinieneś ponownie rozpocząć ten przewodnik.
Ta sekcja dotyczy tylko testów wewnętrznych. Zanim zaatakujesz hosta, może wolisz ukraść jakieś dane logowania z sieci lub podsłuchiwać jakieś dane, aby dowiedzieć się pasywnie/aktywnie (MitM), co możesz znaleźć w sieci. Możesz przeczytać Pentesting Network.
Pierwszą rzeczą do zrobienia, gdy szukasz luk w hoście, jest poznanie, które usługi działają na jakich portach. Zobaczmy podstawowe narzędzia do skanowania portów hostów.
Gdy już wiesz, które usługi działają, a może ich wersje, musisz szukać znanych luk. Może masz szczęście i istnieje exploit, który da ci powłokę...
Jeśli nie ma żadnego fajnego exploita dla żadnej działającej usługi, powinieneś poszukać częstych błędów konfiguracyjnych w każdej działającej usłudze.
W tej książce znajdziesz przewodnik po pentestingu najczęstszych usług (i innych, które nie są tak powszechne). Proszę, przeszukaj lewy indeks w sekcji PENTESTING (usługi są uporządkowane według ich domyślnych portów).
Chcę szczególnie wspomnieć o części Pentesting Web (ponieważ jest najbardziej rozbudowana). Również mały przewodnik na temat znajdowania znanych luk w oprogramowaniu można znaleźć tutaj.
Jeśli twoja usługa nie znajduje się w indeksie, poszukaj w Google innych samouczków i daj mi znać, jeśli chcesz, żebym to dodał. Jeśli nie możesz nic znaleźć w Google, przeprowadź własny ślepy pentesting, możesz zacząć od połączenia się z usługą, fuzzowania jej i czytania odpowiedzi (jeśli jakieś są).
Istnieje również kilka narzędzi, które mogą przeprowadzać automatyczne oceny luk. Zalecałbym spróbować Legion, które jest narzędziem, które stworzyłem i opiera się na notatkach dotyczących pentestingu usług, które możesz znaleźć w tej książce.
W niektórych scenariuszach Brute-Force może być przydatny do kompromitacji usługi. Znajdź tutaj CheatSheet różnych usług do bruteforce.
Jeśli w tym momencie nie znalazłeś żadnej interesującej luki, możesz potrzebować spróbować phishingu, aby dostać się do sieci. Możesz przeczytać moją metodologię phishingu tutaj:
W jakiś sposób powinieneś znaleźć jakąś metodę wykonania kodu na ofierze. Następnie lista możliwych narzędzi w systemie, które możesz użyć do uzyskania powłoki zwrotnej, byłaby bardzo przydatna.
Szczególnie w systemie Windows możesz potrzebować pomocy, aby unikać programów antywirusowych: Sprawdź tę stronę.\
Jeśli masz problemy z powłoką, możesz tutaj znaleźć małą kompilację najbardziej przydatnych poleceń dla pentesterów:
Prawdopodobnie będziesz musiał wyciągnąć jakieś dane z ofiary lub nawet wprowadzić coś (jak skrypty do eskalacji uprawnień). Tutaj masz post o wspólnych narzędziach, które możesz użyć do tych celów.
Jeśli nie jesteś rootem/Administratorem w systemie, powinieneś znaleźć sposób na eskalację uprawnień. Tutaj znajdziesz przewodnik po eskalacji uprawnień lokalnie w Linuxie i w Windowsie. Powinieneś również sprawdzić te strony dotyczące tego, jak działa Windows:
Jak działa NTLM
Jak ukraść dane logowania w Windowsie
Kilka sztuczek dotyczących Active Directory
Nie zapomnij sprawdzić najlepszych narzędzi do enumeracji lokalnych ścieżek eskalacji uprawnień w Windowsie i Linuxie: Suite PEAS
Tutaj znajdziesz metodologię wyjaśniającą najczęstsze działania w celu enumeracji, eskalacji uprawnień i utrzymania się w Active Directory. Nawet jeśli jest to tylko podsekcja sekcji, ten proces może być ekstremalnie delikatny w zadaniu Pentesting/Red Team.
Sprawdź, czy możesz znaleźć więcej haseł wewnątrz hosta lub czy masz dostęp do innych maszyn z uprawnieniami swojego użytkownika. Znajdź tutaj różne sposoby zrzucania haseł w Windowsie.
Użyj 2 lub 3 różnych typów mechanizmów utrzymywania, aby nie musieć ponownie eksploatować systemu. Tutaj znajdziesz kilka sztuczek dotyczących utrzymywania w Active Directory.
TODO: Uzupełnij post o utrzymywaniu w Windowsie i Linuxie
Dzięki zebranym danym logowania możesz uzyskać dostęp do innych maszyn, lub może musisz odkryć i zeskanować nowe hosty (rozpocznij metodologię pentestingu od nowa) w nowych sieciach, w których jest połączona twoja ofiara. W takim przypadku tunelowanie może być konieczne. Tutaj znajdziesz post mówiący o tunelowaniu. Zdecydowanie powinieneś również sprawdzić post o metodologii pentestingu Active Directory. Znajdziesz tam fajne sztuczki do poruszania się lateralnie, eskalacji uprawnień i zrzucania danych logowania. Sprawdź również stronę o NTLM, może być bardzo przydatna do pivotowania w środowiskach Windows.
Jeśli jesteś zainteresowany karierą w hacking i hackowaniem tego, co nie do hackowania - zatrudniamy! (wymagana biegła znajomość polskiego w mowie i piśmie).
Ucz się i ćwicz Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE) Ucz się i ćwicz Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)