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
RHEL: Multipathing basics
Viewed 1422 times since Sat, Jun 2, 2018
RHEL: Displaying system info (firmware, serial numbers... )
Viewed 1469 times since Sun, May 27, 2018
SSL HowTo: Decode CSR
Viewed 619 times since Mon, Feb 18, 2019
ZPOOL: Remove an existing zpool
Viewed 710 times since Sun, Jun 3, 2018
Sample logrotate configuration and troubleshooting part 2
Viewed 573 times since Fri, Nov 30, 2018
Monitoring bezpieczeństwa Linux: integracja auditd + OSSEC cz. I
Viewed 830 times since Fri, Apr 5, 2019
6 easy steps to setup offline two factor authentication in Linux
Viewed 377 times since Mon, Apr 6, 2020
Deskshare TLS over Stunnel
Viewed 612 times since Fri, Sep 28, 2018
A tcpdump Tutorial and Primer with Examples
Viewed 1670 times since Sun, Jun 17, 2018
How to run command or code in parallel in bash shell under Linux or Unix
Viewed 773 times since Tue, Aug 6, 2019