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, ai asterisc ascuns în spatele Mikrotik, bineînțeles nu pe portul 5060 udp, iar după câteva zile începe și căutarea parolei... da, da, știu, fail2ban este totul, dar tot trebuie să facem lucrează la el... de exemplu, l-am instalat recent pe ubuntu 18.04 și am fost surprins să descopăr că din cutie fail2ban nu conține setări curente pentru asterisc din aceeași casetă a aceleiași distribuții ubuntu... și setări rapide pe google pentru „rețetele” gata făcute nu mai funcționează, numărul de lansări crește de-a lungul anilor, iar articolele cu „rețete” pentru versiuni vechi nu mai funcționează, iar altele noi aproape că nu apar niciodată... Dar mă opresc...
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, clientul de la distanță are voie să facă doar 12 „cereri” noi către serverul RDP. O încercare de conectare este de la 1 la 4 „cereri”. La a 12-a „cerere” - blocare timp de 15 minute. În cazul meu, atacatorii nu au încetat să pirateze serverul, s-au adaptat la cronometre și acum o fac foarte încet, o astfel de viteză de selecție reduce eficiența atacului la zero. Angajații companiei nu experimentează practic niciun inconvenient la locul de muncă din cauza măsurilor luate.
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