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
ZPOOL: Grow a zpool by adding new device(s)
Viewed 6081 times since Sun, Jun 3, 2018
OpenSSL: Find Out SSL Key Length – Linux Command Line
Viewed 6922 times since Mon, Feb 18, 2019
RHEL: udev rules basics
Viewed 8711 times since Sat, Jun 2, 2018
Linux Audit The Linux security blog about Auditing, Hardening, and Compliance lynis
Viewed 2109 times since Thu, Jan 16, 2020
RHEL: Extending a multipath LUN
Viewed 5036 times since Sun, May 27, 2018
linux ssh Remotely Initiated Reverse SSH Tunnel
Viewed 3147 times since Wed, Apr 22, 2020
Linux 20 Netstat Commands for Linux Network Management
Viewed 9660 times since Mon, Sep 21, 2020
RHEL: Back-up/Replicate a partition table
Viewed 3434 times since Sun, May 27, 2018
Watchdog script to keep an application running
Viewed 18635 times since Tue, Jul 31, 2018
Linux Chage Command to Set Password Aging for User
Viewed 2427 times since Tue, Sep 11, 2018