Vreau să împărtășesc comunității o modalitate simplă și funcțională de a folosi Mikrotik pentru a vă proteja rețeaua și serviciile „peeping out” din spatele acesteia de atacurile externe. Și anume, doar trei reguli pentru a organiza un honeypot pe Mikrotik.
Deci, să ne imaginăm că avem un birou mic, cu un IP extern în spatele căruia există un server RDP pentru ca angajații să lucreze de la distanță. Prima regulă este, desigur, să schimbați portul 3389 de pe interfața externă cu altul. Dar acest lucru nu va dura mult; după câteva zile, jurnalul de audit al serverului terminal va începe să arate mai multe autorizații eșuate pe secundă de la clienți necunoscuți.
O altă situație este că ai Asterisk ascuns în spatele Mikrotik, firește nu pe portul UDP 5060, și după câteva zile începe și spargerea parolei... da, da, știu, fail2ban e totul pentru noi, dar mai trebuie să lucrăm la asta... de exemplu, l-am configurat recent pe ubuntu 18.04 și am fost surprins să descopăr că fail2ban nu conține setările curente pentru asterisk din aceeași casetă a aceluiași ubuntu distribuție... și căutarea rapidă pe Google a setărilor pentru „rețete” gata făcute nu mai funcționează, numărul de versiuni crește de-a lungul anilor, iar articolele cu „rețete” pentru versiuni mai vechi nu mai funcționează, iar altele noi aproape niciodată nu apar... Dar m-am distras...
Deci, ce este un honeypot pe scurt - este un honeypot, în cazul nostru, orice port popular pe un IP extern, orice solicitare către acest port de la un client extern trimite adresa src la lista neagră. Toate.
/ip firewall filter
add action=add-src-to-address-list address-list="Honeypot Hacker"
address-list-timeout=30d0h0m chain=input comment="block honeypot ssh rdp winbox"
connection-state=new dst-port=22,3389,8291 in-interface=
ether4-wan protocol=tcp
add action=add-src-to-address-list address-list="Honeypot Hacker"
address-list-timeout=30d0h0m chain=input comment=
"block honeypot asterisk" connection-state=new dst-port=5060
in-interface=ether4-wan protocol=udp
/ip firewall raw
add action=drop chain=prerouting in-interface=ether4-wan src-address-list=
"Honeypot Hacker"
Prima regulă pentru porturile TCP populare 22, 3389, 8291 ale interfeței externe ether4-wan trimite IP-ul „oaspete” la lista „Honeypot Hacker” (porturile pentru ssh, rdp și winbox sunt dezactivate în avans sau schimbate cu altele). Al doilea face același lucru pe popularul UDP 5060.
A treia regulă din etapa de pre-routare elimină pachete de la „oaspeți” a căror adresă srs este inclusă în „Honeypot Hacker”.
După două săptămâni de lucru cu Mikrotik de acasă, lista „Honeypot Hacker” a inclus aproximativ o mie și jumătate de adrese IP ale celor cărora le place să „țină de uger” resursele rețelei mele (acasă există propria mea telefonie, corespondență, nextcloud, rdp) Atacurile cu forță brută au încetat, a venit fericirea.
La locul de muncă, nu totul s-a dovedit a fi atât de simplu, acolo ei continuă să spargă serverul rdp prin forțarea brutală a parolelor.
Aparent, numărul portului a fost determinat de scaner cu mult înainte ca honeypot-ul să fie pornit, iar în timpul carantinei nu este atât de ușor să reconfigurați mai mult de 100 de utilizatori, dintre care 20% au peste 65 de ani. În cazul în care portul nu poate fi schimbat, există o mică rețetă de lucru. Am văzut ceva asemănător pe Internet, dar sunt implicate câteva adăugări suplimentare și reglaje fine:
Reguli pentru configurarea Port Knocking
/ip firewall filter
add action=add-src-to-address-list address-list=rdp_blacklist
address-list-timeout=15m chain=forward comment=rdp_to_blacklist
connection-state=new dst-port=3389 protocol=tcp src-address-list=
rdp_stage12
add action=add-src-to-address-list address-list=rdp_stage12
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage11
add action=add-src-to-address-list address-list=rdp_stage11
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage10
add action=add-src-to-address-list address-list=rdp_stage10
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage9
add action=add-src-to-address-list address-list=rdp_stage9
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage8
add action=add-src-to-address-list address-list=rdp_stage8
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage4
add action=add-src-to-address-list address-list=rdp_stage7
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage6
add action=add-src-to-address-list address-list=rdp_stage6
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage5
add action=add-src-to-address-list address-list=rdp_stage5
address-list-timeout=4m chain=forward connection-state=new dst-port=
3389 protocol=tcp src-address-list=rdp_stage4
add action=add-src-to-address-list address-list=rdp_stage4
address-list-timeout=4m chain=forward connection-state=new dst-port=
3389 protocol=tcp src-address-list=rdp_stage3
add action=add-src-to-address-list address-list=rdp_stage3
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage2
add action=add-src-to-address-list address-list=rdp_stage2
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp src-address-list=rdp_stage1
add action=add-src-to-address-list address-list=rdp_stage1
address-list-timeout=4m chain=forward connection-state=new dst-port=3389
protocol=tcp
/ip firewall raw
add action=drop chain=prerouting in-interface=ether4-wan src-address-list=
rdp_blacklist
În 4 minute, un client la distanță are voie să facă doar 12 noi „cereri” către RDP. ServerO încercare de conectare implică între 1 și 4 „cereri”. La a 12-a „cerere”, are loc o blocare de 15 minute. În cazul meu, atacatorii au continuat să pirateze serverul; s-au adaptat la cronometre și acum o fac foarte lent. Această viteză de forță brută reduce eficacitatea atacului la zero. Angajații companiei nu au experimentat practic nicio întrerupere a activității lor din cauza acestor măsuri.
Un alt mic truc
Această regulă se activează conform unui program la ora 5 a.m. și se oprește la ora XNUMX a.m., când oamenii adevărați sunt cu siguranță adormiți, iar culegătorii automati continuă să fie treji.
/ip firewall filter
add action=add-src-to-address-list address-list=rdp_blacklist
address-list-timeout=1w0d0h0m chain=forward comment=
"night_rdp_blacklist" connection-state=new disabled=
yes dst-port=3389 protocol=tcp src-address-list=rdp_stage8
Deja la a 8-a conexiune, IP-ul atacatorului este pe lista neagră timp de o săptămână. Frumuseţe!
Ei bine, pe lângă cele de mai sus, voi adăuga un link către un articol Wiki cu o configurație funcțională pentru protejarea Mikrotik de scanerele de rețea.
Pe dispozitivele mele, această setare funcționează împreună cu regulile honeypot descrise mai sus, completându-le bine.
UPD: După cum se sugerează în comentarii, regula de eliminare a pachetelor a fost mutată în RAW pentru a reduce sarcina de pe router.
Sursa: www.habr.com
