Silnik skryptowy NMAP (NSE) zawiera zestaw skryptów sklasyfikowanych według kategorii, a użytkownicy mogą pisać własne skrypty z niestandardowymi funkcjami.
W tym samouczku wyjaśnia podstawy NSE, w tym praktyczne przykłady pokazujące, jak korzystać z silnika skryptowego NMAP do zhakowania witryn WordPress i poświadczeń SSH lub wykonywania wielu dodatkowych kontroli bezpieczeństwa.
NSE (silnik Scripting NMAP) Kategorie i typy
Skrypty zawarte w NSE są klasyfikowane zgodnie z różnymi kryteriami w oparciu o moment wykonania, cel i metody skryptu.
Pierwsza klasyfikacja oparta głównie na momencie wykonania obejmuje 4 typy skryptów:
Druga klasyfikacja opiera się na celach i bezpieczeństwie scenariusza. Kategorie zamawiaj skrypty zgodnie z tymi kryteriami. Kategorie to:
Auth: Skrypty w tej kategorii są przydatne do radzenia sobie z uwierzytelnianiem. W tej kategorii można znaleźć skrypty do ominięcia procesów uwierzytelniania, takie jak HTTP-Method-Tamper, aby ominąć zasoby chronione hasło, wykonując manipulowanie czasownikiem HTTP. Jeśli szereg ścieżek do sprawdzania nie zostanie ustawiona, będzie się pełzać do serwera Web.
Autor kategorii nie zawiera skryptów Brute Force przechowywanych w kategorii brutalnej. Jednak w ramach Auth można znaleźć podobne funkcje jak skrypt http-default-aktounty, aby przetestować dostęp do domyślnych poświadczeń w różnych aplikacjach i urządzeniach internetowych.
Audycja: Te skrypty pozwalają na odkrycie hostów poprzez nadawanie sieci lokalnej.
Bydlę: Ta kategoria zawiera scenariusze do wykonania ataków brutalnej siły, takich jak skrypt http-wordpress-Brute do atakowania witryn WordPress lub rsync-brute, aby wykonywać ataki na protokół rsync.
Domyślny: Ta kategoria obejmuje scenariusze spełniające wymagania oparte na szybkości, użyteczności, gadatości, niezawodności, intruzyjności i prywatności. Skrypty w tej kategorii muszą się zakończyć szybko i muszą zgłosić cenne informacje na temat celu. Wyjście musi być czytelne i ograniczone do dokładnych informacji. Natomiaste skrypty, które mogą awansować do docelowego systemu lub usługi są mniej odpowiednie dla tej kategorii.
Odkrycie: Skrypty w tej kategorii próbują dowiedzieć się więcej o celu, zapytaj o źródła publiczne, urządzenia, urządzenia, katalogi i tym podobne. Skrypt http-afiliate-id-id identyfikator sieci stowarzyszonych, takich jak Google Adsense lub Analytics, Amazon itp., ze strony internetowej i może być używany do identyfikacji stron z tym samym właścicielem.
DOS: Skrypty te są przydatne do testowania celów podatności przed atakami DOS; Te skrypty są podatne na awarię wrażliwego systemu lub usługi.
Wykorzystać: Skrypty w tej kategorii są używane do wykorzystania luk na celach.
Zewnętrzny: Ta kategoria zawiera skrypty obejmujące zasoby zewnętrzne podczas procesu skanowania, takie jak żądania informacji o bazie danych w celu. Skrypty dzielące informacje o procesie skanowania z bazami danych zewnętrznych są umieszczane w tej kategorii. Na przykład IP-geoplugina-geoplugin próbuje określić fizyczną lokalizację docelową za pomocą http: // www.Geoplugin.com/.
Fuzzer: Ta kategoria zawiera skrypty do masowego wysyłania randomizowanych pól, aby odkryć luki w celu wykorzystania przepełnienia buforu, DOS (odmowa usługi), skryptowanie krzyżowe lub wstrzyknięcie SQL.
Natrętny: Skrypty w tej kategorii prawdopodobnie awansują cel, wykorzystując znaczną ilość zasobów lub zostać wykryte jako złośliwe działanie.
Złośliwe oprogramowanie: Skrypty złośliwego oprogramowania są zaprojektowane w celu wykrycia możliwej złośliwego oprogramowania lub obecności w celu celu.
Bezpieczna: W przeciwieństwie do natrętnych scenariuszy, bezpieczne skrypty mało prawdopodobne, aby rozbić cel, który nie wymaga znacznej ilości zasobów i jest mało prawdopodobne, aby wykryto tutaj złośliwe przez cel. Skrypty w tej kategorii dotyczą głównie zadań dotyczących odkrycia.
Wersja: Skrypty wersji rozszerz funkcję wersji NMAP; Przykładem jest skryptowa wersja dokera używana do wykrywania wersji Docker Service.
Vuln: Skrypty vuln są przydatne do dokładnego testowania luk na celach.
Skrypty NSE znajdują się pod adresem /usr/share/nmap/scenariusze, i każdy nowy skrypt, który chcesz dodać (e.G., Vulscan) należy tam umieścić tam.
Jak używać silnika skryptowego NMAP (NSE)
NSE jest uwzględniony w NMAP, aby zacząć instalować NMAP na wypadek, gdybyś go nie miał, działając (w dystrybucji Linux z Linux Debian i Debian):
sudo apt instal NMAPNotatka: W rozkładach Linux opartych na Redhat możesz uruchomić:
Yum Instaluj NMAPPo instalacji lub jeśli masz już zainstalowane NMAP, uruchom następujące polecenie, aby zaktualizować bazę danych silnika skryptowego NMAP:
nmap--script-updatedbNMAP umożliwia uruchomienie skanów innej składni; Poniższy przykład pokazuje skanowanie NMAP z wykrywaniem wersji, nazywając skrypt HTTP-WordPress-Brute. Jest to możliwa składnia, gdy wiesz, jaki skrypt chcesz uruchomić.
W pierwszym przykładzie pokażę, w jaki sposób NMAP NSE może zhakować witrynę WordPress z brutalną siłą za pomocą skryptu HTTP-WordPress-Brute.nse. W tym przykładzie zhakowana strona internetowa to Noticias Mercedes, który posiadam.
nmap -sv--script http-wordPress-Brute--Script-Args 'userDB = Użytkownicy.TXT, PASSDB = PASS.txt 'noticiasmercedes.comGdzie:
Nmap -sv: wywołuje NMAP i umożliwia wykrywanie wersji.
-skrypt http-wordPress-Brute: Wzywa skrypt HTTP-WordPress-Brute, aby brutalnie wymusić witryny WordPress.
-Script-Args 'UserDB = Użytkownicy.TXT, PASSDB = PASS.tekst': Określa słowniki użytkownika i hasła, w tym przypadku utworzyłem użytkowników plików.TXT i PASS.TXT zawierający manekin i prawidłowe poświadczenia, pliki zostały zlokalizowane w tym samym katalogu, w którym wykonano NMAP, możesz również określić ścieżkę: -Script-Args 'userDB =/ścieżka/do/dicionaty/użytkownicy.txt, passdb =/ścieżka/do/dicionaty/pass.tekst'
Jak widać na wyjściu, hasło zostało pomyślnie zhakowane:
W poniższym przykładzie załóżmy, że nie masz pewności co do skryptu, który chcesz uruchomić przeciwko celu, ale chcesz ograniczyć skanowanie do kontroli bezpieczeństwa. W takim przypadku możesz poinstruować NMAP, aby uruchomił wszystkie skrypty należące do kategorii bezpiecznych lub domyślnych lub oba z nich.
Poniższy przykład pokazuje, jak uruchomić wszystkie skrypty należące zarówno do kategorii domyślnych, jak i bezpiecznych z przyjazną dla użytkownika składnią:
nmap -script „domyślny i bezpieczny” noticiasmercedes.comOstatni przykład pokazuje, jak złamać poświadczenia SSH za pomocą NSE:
nmap-Script SSH-Brute.NSE LocalhostPodobnie jak w przypadku HTTP-WordPress-Brute, z tym skryptem, możesz również określić słowniki omijające argument:
--Script-Args UserDB = Użytkownicy.TXT, PASSDB = PASS.tekstGdzie użytkownicy.TXT i PASS.TXT należy zastąpić słownikami (i ścieżką w razie potrzeby),
Poniższe artykuły zawierają dodatkowe przykłady NSE:
Mam nadzieję, że ten artykuł uważasz za przydatne; Kontynuuj podążaj Linuxhint, aby uzyskać więcej wskazówek i samouczków Linux.