Fałszujemy rozpoznania skanerów #2

W

pierwszej części pokazałem, jak łatwo za pomocą iptables sfałszować nasłuchujące usługi. W tym przykładzie zajmiemy się techniką zwaną banner grabbing. Proces ten powoduje, że skaner przechodzi do warstwy aplikacji i zaczyna zachowywać się, jak klient. Wysyła dopasowane żądanie do usługi i oczekuje odpowiedzi, w której ma nadzieje znaleźć jej nazwę i wersję.

Jakiś czas temu Nick Marsh wpadł na pomysł, jak można zawiesić skaner nmap próbujący wykonać rozpoznanie usługi. Na maszynie testowej odpalamy fałszywą usługę, która w rzeczywistości jest pułapką:

ncat -lkv -p 8080 --sh-exec "echo 'HTTP/1.1 200 OK\r\n'; cat /dev/urandom"

Na drugiej obserwujemy, jak zachowuje się nmap:

...
PORT     STATE SERVICE     VERSION
8080/tcp open  http-proxy?
|_http-favicon: Unknown favicon MD5: D41D8CD98F00B204E9800998ECF8427E
|_http-methods: No Allow or Public header in OPTIONS response (status code 200)
|_http-open-proxy: Proxy might be redirecting requests
|_http-title: Site doesn't have a title.
1 service unrecognized despite returning data.

oraz Nikto:

- Nikto v2.1.4
--------------
+ Target IP:       192.168.1.2
+ Target Hostname: darkstar.lan
+ Target Port:     8080
+ Start Time:      2016-01-08 23:22:36
--------------
+ Server: No banner retrieved

Oprócz tego, że skanery nie uzyskały żadnych danych to jeszcze wpadły w pułapkę, która zapętliła ich działanie i spowodowała wyczerpanie zasobów na maszynach, na których zostały uruchomione. Ten prosty przykład pokazuje, jak prosto jest przechytrzyć „narzędzia bezpieczeństwa”. Uruchamiając skanery automatyzujące wykrywanie podatności należy zdawać sobie, co się dzieje za ich kulisami. Narzędzia tego typu przeważnie nie posiadają ostatecznych stwierdzeń, a tylko pośrednie przypuszczenia. W dodatku same z siebie również mogą mieć luki i stać się celem ataków swoich potencjalnych ofiar.

 

 

source: https://nfsec.pl/security/5774

Attachments
There are no attachments for this article.
Related Articles RSS Feed
Using renice and taskset to manage process priority and CPU affinity with Linux OEL 6.4
Viewed 1569 times since Mon, Feb 17, 2020
RHEL: Enabling standard ftp/telnet
Viewed 1599 times since Sun, May 27, 2018
Set Up SSH Tunneling on a Linux / Unix / BSD Server To Bypass NAT
Viewed 10205 times since Fri, May 15, 2020
Jak ustawić LVM, jak robić snapshoty oraz automatycznie powiększać LV, czyli małe howto
Viewed 2834 times since Sun, May 20, 2018
sed Delete / Remove ^M Carriage Return (Line Feed / CRLF) on Linux or Unix
Viewed 6855 times since Thu, Feb 7, 2019
Jak wygenerować silne hasła jednorazowe w Linuksie?
Viewed 1269 times since Thu, May 24, 2018
20 Linux Command Tips and Tricks That Will Save You A Lot of Time linux
Viewed 2663 times since Thu, Apr 18, 2019
HowTo: Find Out Hard Disk Specs / Details on Linux
Viewed 1488 times since Mon, Jan 28, 2019
Yum Update: DB_RUNRECOVERY Fatal error, run database recovery
Viewed 1583 times since Fri, Jan 17, 2020
HOWTO: Use SSL/port 465 in smarthost stunnel
Viewed 1675 times since Fri, Sep 28, 2018