VPS : Nr 1 w Polsce
Skrót ‘VPS’ to fetysz branży IT. Nie masz? Nie istniejesz – więc możliwość nabycia usługi oferują się wszystkie „Nr 1 w Polsce” zajmujące się dostarczaniem usług hostingowych. Działy marketingu i sprzedaży przewidziały niechęć potencjalnego nabywcy do płacenia za niesprawdzone usługi i udostępniają usługi testowe. A kto ‘testuje’ najczęściej owe usługi? Patrząc po logach zarządzanych środowisk odnoszę wrażenie, że głównie sieciowa przestępczość zorganizowana czyli właściciele różnej maści botnetów oraz sporadycznie tzw. script kiddies.
Jak to rozpoznać?
Jakiś czas temu odkryłem w logach sporo odwołań do plików popularnych skryptów OpenSource. Do typowych nazw i lokalizacji tychże plików. Jako, że jestem fanem WordPress’a omówię to na jego przykładzie.
Aby zalogować się do tego popularnego CMS’a należy wywołać adres – http://nazwa.domeny/wp-login.php – proste. Zazwyczaj pojedynczą instancją skryptu administruje jedna osoba. Także proste. Tymczasem co widać w logach serwera WWW? Odwołania do skryptu z całej Polski. W szczególności zaś z klas adresowych rozmaitych numerów pierwszych sprzedających usługi VPS w naszym pięknym kraju.
Systematycznie, co kilka minut, rozmaite maszyny próbują odnaleźć plik wp-login.php w miejscu, w którym go nie ma. Wkurzony lekko stworzyłem własną wersję tego pliku:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <?php //ustalamy adres $ipaddress = $_SERVER['REMOTE_ADDR']; //robimy z tego składnię pod htacess'a $message = "Deny from $ipaddress\n"; //i bazgrzemy po pliku uzyskując święty spokój w przyszłości $File = ".htaccess"; $Open = fopen($File, "a+"); if ($Open){ fwrite($Open, "$message"); fclose ($Open); } ?> |
Spreparowany plik wrzuciłem na serwer po czym natychmiast rozpoczął się szał ciał i uprzęży, czyli od trzech do trzydziestu prób wywołania skryptu na minutę. I nie miało znaczenia, że po pierwszej próbie wywołania kolejna skutkowała dla odwiedzającego IP błędem 403, albowiem już po chwili meldował się innych host.
Gdy mój plik .htaccess spuchł do granic przyzwoitości poleciała komenda:
1 | cat .htaccess | awk '{print $3}' | sort | uniq |
- a potem już tylko whois na poszczególne grupy adresów.
Po uzyskaniu danych podjąłem próby kontaktu z abuse. Wyszło na to, że przeciętny Nr 1 na rynku usług IT utrzymuje co prawda adres ‘abuse’, ale ma głęboko w biznesowej dupie problemy techniczne zgłaszane za jego (adresu) pośrednictwem.
I tak, będąc zignorowanym przed przodowników rynku usług hostingowych, uznałem, że pora zaopatrzyć moje firewalle w następujący zestaw filtrów:
1 2 3 4 5 | ufw insert 1 deny from 62.129.192.0/18 ufw insert 2 deny from 77.55.0.0/16 ufw insert 3 deny from 79.96.0.0/16 ufw insert 4 deny from 85.128.128.0/17 ufw insert 5 deny from 89.161.128.0/17 |
Zrobiłem to bez żalu, wywołania skanerów pojawiają się nie częściej niż raz na dwie, trzy godziny, a klasy adresowe sugerują, że wrócili do mnie starzy i leniwi goście z Tajwanu ;)
Ps. Poproszono mnie o podzielenie się listą wszystkich zablokowanych w ramach przeprowadzonej akcji klas adresowych. Nie wiedzę przeszkód – lista poniżej:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | ufw status Status: active To Action From -- ------ ---- Anywhere DENY 46.4.0.0/16 Anywhere DENY 62.129.192.0/18 Anywhere DENY 62.212.64.0/19 Anywhere DENY 62.75.128.0/17 Anywhere DENY 77.55.0.0/16 Anywhere DENY 78.46.0.0/15 Anywhere DENY 79.170.40.0/21 Anywhere DENY 79.175.192.0/20 Anywhere DENY 79.96.0.0/16 Anywhere DENY 85.128.128.0/17 Anywhere DENY 85.17.0.0/16 Anywhere DENY 88.198.0.0/16 Anywhere DENY 89.161.128.0/17 Anywhere DENY 91.198.94.0/24 Anywhere DENY 91.203.132.0/22 Anywhere DENY 91.228.196.0/22 Anywhere DENY 93.157.96.0/21 Anywhere DENY 94.152.0.0/16 Anywhere DENY 109.234.104.0/21 Anywhere DENY 174.120.0.0/14 Anywhere DENY 178.63.0.0/16 Anywhere DENY 188.40.0.0/16 Anywhere DENY 195.149.224.0/21 Anywhere DENY 195.88.50.0/23 Anywhere DENY 212.106.176.0/20 Anywhere DENY 212.85.96.0/19 |
