Fiecare serviciu expus primește același sfat: pune fail2ban pe el. Pentru o poartă VPN acel sfat nu este nici greșit, nici suficient, și tocmai tratarea lui ca o bifă de întărire este modul în care oamenii ajung cu o închisoare (jail) care nu blochează nimic util. Fail2ban citește înregistrările de eșec către care îl îndrepți și cere unui backend de aplicare să blocheze sursele potrivite. Toată valoarea lui depinde de ce suprafață de autentificare a produs înregistrarea, dacă adresa din ea este clientul real și ce se întâmplă cu toți ceilalți din spatele acelei adrese.

Ce este fail2ban, mecanic

Un filtru potrivește linii dintr-un jurnal, o închisoare numără potrivirile pe sursă, iar o acțiune aplică o blocare printr-un backend de firewall. Trei piese mobile, iar fiecare poate fi greșită independent.

Niciuna dintre cele trei nu atinge calea de autentificare: fail2ban reacționează la dovezi după fapt și nu validează niciodată singur o acreditare. O închisoare poate deci rula curat în timp ce suprafața pe care o numește rămâne exact la fel de expusă ca înainte.

Ascultătorul tunelului nu este un formular de autentificare

Un ascultător OpenVPN protejat cu tls-auth sau tls-crypt aruncă pachetele fără protecția canalului de control înainte de a începe procesarea TLS obișnuită. Un scaner care nu are niciodată cheia nu generează nimic ce filtrul tău ar putea număra. Autentificarea prin certificat adaugă încă o poartă, pentru că nu există parolă de ghicit. Proiectul Fail2ban documentează un model general bazat pe jurnale, iar un filtru VPN generic nu transformă un pachet neautentificat într-un eveniment de eșec semnificativ.

Dacă poarta acceptă doar certificate, povestea de brute-force împotriva căreia te aperi poate să nu existe deloc pe acel port.

Deci ce suprafață protejezi?

Acel same host expune adesea trei lucruri diferite: ascultătorul tunelului, un portal de profiluri de client sau de autoservire și o pagină de administrare. Portalul și pagina de administrare au formulare de parolă și produc linii de jurnal pe care un filtru le poate număra. Tunelul poate produce doar erori de strângere de mână care înseamnă cu totul altceva. Potrivește închisoarea cu suprafața, nu cu numele produsului.

O închisoare care supraveghează jurnalul greșit este mai rea decât niciuna, pentru că creează încredere fără acoperire. Îndreaptă un filtru de autentificare spre erorile de strângere de mână ale tunelului și contorul se declanșează pe scanere care nu au avut niciodată o cheie, în timp ce un atac cu parolă asupra portalului rămâne nenumerat. Citește linia de jurnal pe care filtrul o potrivește înainte de a te încrede în numărul închisorii.

Atribuirea sursei este veriga slabă

O blocare valorează cât adresa pe care o vizează. Când serviciul stă în spatele unui proxy invers local, adresa clientului din jurnal poate fi proxy-ul, iar blocarea lui elimină pe toată lumea. Încrederea într-un antet transmis dintr-o sursă nefiabilă îi dă unui atacator capacitatea de a bloca adrese arbitrare. Pe UDP adresele de sursă pot fi falsificate, așa că numărarea lor merită mai multă grijă decât numărarea unei autentificări TCP finalizate.

Notează metoda de atribuire a sursei în README-ul închisorii, pentru că un antet transmis dintr-un hop nefiabil transformă o blocare într-o armă.

Costul colateral sunt ceilalți oameni

Mai mulți angajați din spatele unui NAT de birou partajează o adresă, așa că o singură parolă salvată și învechită poate bloca întregul birou odată ce pragul este depășit. Jurnalul arată o sursă și un cont care au eșuat, nu o cădere la nivelul întregului birou.

Blocările scurte și pragurile moderate reduc asta, iar o cale documentată de deblocare reduce încărcarea suportului când se întâmplă totuși. Adresa este un semnal grosier, nu o identitate, iar persoana care deschide tichetul va descrie căderea, nu pragul.

Când să-l adopți și când să repari altceva

Adoptă-l când există un eșec real, atribuibil și repetat de autentificare online pe o suprafață pe care o controlezi și când backendul de aplicare acoperă într-adevăr acea suprafață. Repară altceva când problema este o politică slabă de acreditări, o pagină de administrare expusă la internet sau un cont care se autentifică cu succes pentru că a fost compromis. O blocare nu poate repara niciuna dintre acestea și nu poate absorbi traficul care ți-a saturat deja uplink-ul. Acea ultimă problemă aparține în amonte, cuiva care poate filtra înainte ca pachetele să ajungă la tine.

Ține fiecare închisoare legată de o singură suprafață, revizuiește pozitivele false și măsoară munca de autentificare evitată în loc de numărul de adrese blocate.

Articole similare