Inundarea este cea mai simplă și cea mai comună modalitate de a efectua atacuri DDoS. Inundarea este cea mai simplă și cea mai comună modalitate de a efectua atacuri DDoS. Există mai multe tipuri de atacuri DDoS folosind inundații, principalele sunt enumerate mai jos

Acasă / Avarii

Conceptele fundamentale ale securității cibernetice sunt disponibilitatea, integritatea și confidențialitatea. Atacurile Refuzarea serviciului (DoS) afectează disponibilitatea resurselor informaţionale. O refuz de serviciu este considerată reușită dacă duce la indisponibilitatea unei resurse de informații. Diferența dintre succesul unui atac și impactul asupra resurselor țintă este că impactul provoacă daune victimei. De exemplu, dacă un magazin online este atacat, atunci o refuzare prelungită a serviciului poate cauza pierderi financiare companiei. În fiecare caz specific, activitatea DoS poate fie să provoace un prejudiciu direct, fie să creeze o amenințare și un potențial risc de pierdere.

Primul D V DDoS mijloace distribuite: atac distribuit de denial of service. În acest caz, vorbim despre o masă uriașă de solicitări rău intenționate care ajung la serverul victimei din multe locuri diferite. De obicei, astfel de atacuri sunt organizate prin rețele bot.

În acest articol, vom arunca o privire mai atentă la ce tipuri de trafic DDoS și ce tipuri de atacuri DDoS există. Pentru fiecare tip de atac, vor fi furnizate scurte recomandări pentru prevenirea și restabilirea funcționalității.

Tipuri de trafic DDoS

Cel mai simplu tip de trafic sunt cererile HTTP. Cu ajutorul unor astfel de solicitări, de exemplu, orice vizitator comunică cu site-ul dvs. prin intermediul unui browser. Baza solicitării este antetul HTTP.

Antet HTTP. Anteturile HTTP sunt câmpuri care descriu ce tip de resursă este solicitată, cum ar fi o adresă URL sau un formular sau un JPEG. Anteturile HTTP informează, de asemenea, serverul web ce tip de browser este utilizat. Cele mai comune antete HTTP sunt ACCEPT, LANGUAGE și USER AGENT.

Solicitantul poate folosi câte antete dorește, oferindu-le proprietățile dorite. Atacatorii DDoS pot modifica acestea și multe alte anteturi HTTP, făcându-le dificil de detectat. În plus, anteturile HTTP pot fi scrise astfel încât să controleze stocarea în cache și serviciile proxy. De exemplu, puteți indica serverului proxy să nu memoreze informațiile în cache.

HTTP GET

  • Solicitarea HTTP(S) GET este o metodă care solicită informații de la server. Această solicitare poate cere serverului să treacă un fișier, imagine, pagină sau script pentru a le afișa în browser.
  • Metoda de inundare HTTP(S) GET Atacurile DDoSși stratul de aplicație (7) al modelului OSI, în care atacatorul trimite un flux puternic de cereri către server pentru a-și depăși resursele. Drept urmare, serverul nu poate răspunde nu numai la solicitările hackerilor, ci și la solicitările clienților reali.

HTTP POST

  • Solicitarea HTTP(S) POST este o metodă prin care datele sunt plasate în corpul cererii pentru procesarea ulterioară pe server. O solicitare HTTP POST codifică informațiile transmise și le plasează într-un formular, apoi trimite acest conținut către server. Această metodă utilizat atunci când este necesar să transferați cantități mari de informații sau fișiere.
  • HTTP(S) POST flood este un tip de atac DDoS în care numărul de solicitări POST copleșește serverul până la punctul în care serverul nu poate răspunde la toate solicitările. Acest lucru poate duce la o utilizare excepțional de mare resurse de sistem, și, ulterior, la o oprire de urgență a serverului.

Fiecare dintre solicitările HTTP descrise mai sus poate fi transmisă printr-un protocol securizat HTTPS. În acest caz, toate datele trimise între client (atacator) și server sunt criptate. Se pare că aici „securitatea” joacă în mâinile atacatorilor: pentru a identifica o solicitare rău intenționată, serverul trebuie mai întâi să o decripteze. Aceste. Trebuie să decriptați întregul flux de solicitări, dintre care există multe în timpul unui atac DDoS. Acest lucru creează încărcare suplimentară pe serverul victimei.

SYN inundație(TCP/SYN) stabilește conexiuni pe jumătate deschise cu gazda. Când victima primește un pachet SYN prin portul deschis, trebuie să răspundă cu un pachet SYN-ACK și să stabilească o conexiune. După aceasta, inițiatorul trimite un răspuns cu un pachet ACK destinatarului. Acest proces numită convențional strângere de mână. Cu toate acestea, în timpul unui atac de inundații SYN, strângerea de mână nu poate fi finalizată deoarece atacatorul nu răspunde la SYN-ACK-ul serverului victimei. Astfel de conexiuni rămân întredeschise până când expiră timpul de expirare, coada de conexiuni devine plină și clienții noi nu se pot conecta la server.

Inundație UDP sunt cel mai adesea folosite pentru atacurile DDoS în bandă largă datorită naturii lor fără sesiune, precum și ușurinței de a crea mesaje Protocol 17 (UDP) în diferite limbaje de programare.

Inundație ICMP. Internet Control Message Protocol (ICMP) este utilizat în principal pentru mesajele de eroare și nu este utilizat pentru transmiterea de date. Pachetele ICMP pot însoți pachetele TCP atunci când se conectează la un server. inundație ICMP - metoda DDoS atacuri la nivelul 3 al modelului OSI, care utilizează mesaje ICMP pentru a supraîncărca canalul de rețea al persoanei atacate.

Inundația MAC- un tip rar de atac în care atacatorul trimite mai multe cadre Ethernet goale cu adrese MAC diferite. Switch-urile de rețea iau în considerare fiecare adresă MAC separat și, prin urmare, rezervă resurse pentru fiecare dintre ele. Când toată memoria de pe comutator este utilizată, acesta fie nu mai răspunde, fie se oprește. Pe unele tipuri de routere, un atac de inundație MAC poate duce la ștergerea întregilor tabele de rutare, perturbând astfel întreaga rețea.

Clasificarea și obiectivele atacurilor DDoS în funcție de nivelurile OSI

utilizări Internet Modelul OSI. În total, în model există 7 niveluri, care acoperă toate mediile de comunicare: începând de la mediul fizic (nivelul 1) și terminând cu nivelul aplicației (nivelul 7), la care programele „comună” între ele.

Atacurile DDoS sunt posibile la fiecare dintre cele șapte niveluri. Să le aruncăm o privire mai atentă.

OSI Layer 7: Aplicat

Ce trebuie făcut: Monitorizarea aplicațiilor - monitorizarea sistematică a software-ului care utilizează un set specific de algoritmi, tehnologii și abordări (în funcție de platforma pe care este utilizat software-ul) pentru a identifica vulnerabilitățile aplicațiilor de 0-day (atacuri de nivel 7). Prin identificarea unor astfel de atacuri, acestea pot fi oprite o dată pentru totdeauna și sursa lor poate fi urmărită. Acest lucru se face cel mai simplu pe acest strat.

Stratul 6 OSI: Executiv

Ce trebuie să faceți: pentru a reduce daunele, luați în considerare măsuri precum distribuirea infrastructurii de criptare SSL (adică găzduirea SSL pe un server excelent, dacă este posibil) și inspectarea traficului aplicației pentru atacuri sau încălcări ale politicii pe platforma aplicației. O platformă bună va asigura că traficul este criptat și trimis înapoi la infrastructura de origine, cu conținutul decriptat rezidând în memoria securizată a nodului bastion securizat.

Stratul 5 OSI: Sesiune

Ce trebuie să faceți: Suport firmware hardware actualizat pentru a reduce riscul unei amenințări.

Stratul 4 OSI: Transport

Ce trebuie să faceți: filtrarea traficului DDoS, cunoscută sub denumirea de blackholing, este o metodă adesea folosită de furnizori pentru a proteja clienții (folosim noi înșine această metodă). Cu toate acestea, această abordare face site-ul clientului inaccesibil atât pentru traficul rău intenționat, cât și pentru traficul legitim al utilizatorilor. Cu toate acestea, blocarea accesului este folosită de furnizori pentru a combate atacurile DDoS pentru a proteja clienții de amenințări, cum ar fi încetinirile echipamentelor de rețea și defecțiunile serviciilor.

Stratul 3 OSI: Reţea

Ce trebuie să faceți: Limitați numărul de solicitări ICMP procesate și reduceți posibilul impact al acestui trafic asupra vitezei Firewall-ului și a lățimii de bandă a Internetului.

Stratul 2 OSI: Conductă

Ce trebuie făcut: Multe switch-uri moderne pot fi configurate în așa fel încât numărul de adrese MAC să fie limitat la cele de încredere care trec verificări de autentificare, autorizare și contabilitate pe server (protocol AAA) și ulterior filtrate.

Stratul 1 OSI: Fizic

Ce trebuie să faceți: utilizați o abordare sistematică pentru monitorizarea performanței echipamentelor fizice de rețea.

Atenuarea atacurilor DoS/DDoS la scară largă

Deși un atac este posibil la orice nivel, atacurile la straturile 3-4 și 7 ale modelului OSI sunt deosebit de populare.

  • Atacurile DDoS la nivelul 3 și 4 - atacuri de infrastructură - tipuri de atacuri bazate pe utilizarea unui volum mare, flux de date puternic (flood) la nivel de infrastructură de rețea și la nivel de transport pentru a încetini serverul web și a „umple” canalul și, în cele din urmă, împiedică alți utilizatori să acceseze resursa. Aceste tipuri de atacuri includ de obicei inundații ICMP, SYN și UDP.
  • Atacul DDoS la nivelul 7 este un atac care presupune supraîncărcarea unor elemente specifice ale infrastructurii serverului de aplicații. Atacurile de nivel 7 sunt deosebit de sofisticate, ascunse și greu de detectat datorită asemănării lor cu traficul web util. Chiar și cele mai simple atacuri Layer 7, cum ar fi încercarea de a vă conecta cu un nume de utilizator și o parolă arbitrare sau repetarea căutărilor arbitrare pe pagini web dinamice, pot încărca critic CPU și bazele de date. Atacatorii DDoS pot, de asemenea, schimba în mod repetat semnăturile atacurilor Layer 7, făcându-le și mai greu de recunoscut și eliminat.

Câteva acțiuni și echipamente pentru atenuarea atacurilor:

  • Firewall-uri cu inspecție dinamică a pachetelor
  • Mecanisme proxy SYN dinamice
  • Limitarea numărului de SYN-uri pe secundă pentru fiecare adresă IP
  • Limitați numărul de SYN-uri pe secundă pentru fiecare adresă IP de la distanță
  • Instalarea ecranelor de inundație ICMP pe un firewall
  • Instalarea ecranelor de inundație UDP pe un firewall
  • Limitarea vitezei routerelor adiacente firewall-urilor și rețelelor

11.11.2012

Sub potop Aceasta înseamnă un flux imens de date sub formă de mesaje, care sunt trimise pentru postare pe diverse forumuri și chat-uri. Dacă te uiți la asta din punct de vedere tehnic, potop- acesta este unul dintre cele mai comune tipuri de atacuri informatice, iar scopul său este de a trimite un astfel de număr de solicitări pe care hardware-ul serverului va fi forțat să le efectueze refuzul serviciului servicii pentru utilizatori. Dacă atac asupra tehnologie informatică efectuate de la un număr mare de computere, atunci aveți de-a face cu .

Există mai multe tipuri de atacuri de inundații DDoS, principalele sunt enumerate mai jos:

  • SYN-ACK inundație
  • Flux HTTP
  • Inundație ICMP
  • Inundație UDP

SYN-ACK inundație

SYN-ACK inundație- unul dintre tipuri atacuri de rețea, care se bazează pe trimiterea unui număr mare de solicitări SYN pe unitatea de timp. Rezultatul va fi dezactivarea serviciului, a cărui funcționare s-a bazat pe protocolul TCP. În primul rând, clientul trimite un pachet către server care conține un steag SYN, a cărui prezență indică dorința clientului de a stabili o conexiune. Serverul, la rândul său, trimite un pachet de răspuns. Pe lângă flag-ul SYN, acesta conține și un flag ACK, care atrage atenția clientului asupra faptului că cererea a fost acceptată și se așteaptă confirmarea conexiunii de la client. Răspunde cu un pachet cu un steag ACK care indică o conexiune reușită. Serverul stochează toate solicitările de „conectare” de la clienți într-o coadă de o anumită dimensiune. Solicitările sunt păstrate într-o coadă până când indicatorul ACK este returnat de la client. Un atac SYN se bazează pe trimiterea de pachete către server dintr-o sursă inexistentă, numărul de pachete depășind dimensiunea cozii. Serverul pur și simplu nu va putea răspunde la pachet la adresa fictive. Coada nu va scădea și serviciul va înceta să mai funcționeze.

Flux HTTP

Flux HTTP- se aplică atunci când serviciul funcționează cu baza de date. Atacul vizează fie server web, sau la un script care lucrează cu baza de date. Un număr mare de cereri GET sunt trimise către portul 80, astfel încât serverul web nu poate acorda atenția cuvenită solicitărilor de alte tipuri. Fișierele jurnal cresc în dimensiune și lucrul cu baza de date devine imposibil.

Inundație ICMP

Inundație ICMP- mod simplu reducerea debituluiŞi încărcături crescânde pe stivă folosind mijloace de trimitere a cererilor ICMP PING similare. Este periculos dacă se acordă puțină atenție firewall-urilor, deoarece un server care răspunde la cereri ECHO nesfârșite este condamnat. Deci, în cazul aceleiași cantități de intrare și trafic de ieșire scrie doar regulile iptables.

Inundație UDP

Inundație UDP- alt mod dezordinea lățimii de bandă, bazat pe un protocol care nu necesită sincronizare înainte de a trimite date. Atacul se reduce la simpla trimitere a unui pachet către portul UDP al serverului. După primirea pachetului, serverul începe să-l proceseze intens. Clientul trimite apoi pachete Udp cu conținut incorect unul după altul. Ca urmare, porturile nu vor mai funcționa și sistemul se va prăbuși.

Practic, pentru a determina tip de atac DDoS Adesea nu este necesar să petreceți mult timp. Este suficient să cunoști câteva semne. Dacă în mod semnificativ Dimensiunea fișierelor jurnal a crescut— Ai de-a face Flux HTTP. Dacă accesul la serviciu este limitat ca urmare a depășirii numărului de conexiuni permise - aceasta este SYN-ACK inundație. În cazul în care traficul de ieșire și de intrare sunt aproximativ egale— Ai de-a face Inundație ICMP. Principalul lucru este să nu uităm de întreținere securitatea serverului dvs de la DDoS și acordați-i atenția cuvenită. Cel mai bun lucru este să ai grijă

Dimineața începe cu citirea rapoartelor de erori și analizarea jurnalelor. Tu zilnic
actualizați software-ul și actualizați regulile firewall din oră. Snortul este cel mai bun al tău
prieten, iar Zabbix este un asistent invizibil. Ai construit un adevărat bastion căruia
nu se poate ajunge din nicio parte. Dar! Ești complet lipsit de apărare împotriva ta
Cel mai insidios și mai ascuns atac din lume este DDoS.

Este dificil de spus când a apărut pentru prima dată termenul de atac DoS. Experții spun
în jurul anului 1996, sugerând simultan că acest tip de atac „a ajuns” la publicul larg doar în
1999, când unul după altul site-urile Amazon, Yahoo, CNN și eBay au fost lovite.
Chiar și mai devreme, efectul DoS a fost folosit pentru a testa stabilitatea sistemelor și
canale de comunicare. Dar dacă săpați mai adânc și folosiți termenul DoS pentru
desemnarea fenomenului, devine clar că acesta a existat dintotdeauna, încă din vremea respectivă
primele mainframe. Gândește-te doar la asta ca la un mijloc de intimidare
început mult mai târziu.

În termeni simpli, atacurile DoS sunt un fel de rău intenționat
activităţi care vizează aducerea sistemului informatic la astfel de
stat unde nu va putea deservi utilizatorii legitimi sau
să îndeplinească corect funcțiile care îi sunt atribuite. La starea de „refuz în
întreținere” rezultă de obicei din erori în software sau încărcare excesivă a rețelei
canal sau sistem în ansamblu. Ca rezultat, software-ul sau întregul sistem de operare
mașină, „cade” sau se găsește într-o stare „în buclă”. Și asta amenință
nefuncţionare, pierderi de vizitatori/clienţi şi pierderi.

Anatomia atacurilor DoS

Atacurile DoS sunt împărțite în locale și la distanță. Cele locale includ
diverse exploit-uri, bombe furcă și programe care deschid un milion de fișiere sau
rulează un fel de algoritm ciclic care consumă memoria și CPU
resurse. Nu ne vom opri asupra tuturor acestor lucruri. Dar atacuri DoS la distanță
Să aruncăm o privire mai atentă. Ele sunt împărțite în două tipuri:

  1. Exploatarea de la distanță a erorilor din software pentru a-l face inoperant
    stat.
  2. Flood - trimiterea unei cantități uriașe de fără sens (mai puțin frecvent
    – semnificative) pachete. Scopul inundațiilor poate fi un canal de comunicare sau resurse
    mașini. În primul caz, fluxul de pachete ocupă întregul canal de lățime de bandă și nu
    oferă mașinii atacate capacitatea de a procesa cereri legitime. În al doilea
    - resursele mașinii sunt captate prin repetate și foarte frecvente
    accesarea oricărui serviciu care funcționează complex, consumatoare de resurse
    operare. Acesta ar putea fi, de exemplu, un apel lung către unul dintre
    componentele active (script) ale serverului web. Serverul irosește toate resursele mașinii
    pentru a procesa cererile atacatorului, iar utilizatorii trebuie să aștepte.

În versiunea tradițională (un atacator - o victimă) rămâne acum
Doar primul tip de atac este eficient. Inundațiile clasice sunt inutile. Doar pentru că
asta cu lățimea canalului serverului de astăzi, nivelul de putere de calcul și
utilizarea pe scară largă a diferitelor tehnici anti-DoS în software (de exemplu, întârziere
când aceleași acțiuni sunt efectuate în mod repetat de către același client), atacatorul
se transformă într-un țânțar enervant, incapabil să provoace niciunul
deteriora. Dar dacă există sute, mii sau chiar sute de mii de acești țânțari, ei
va pune cu ușurință serverul pe umăr. Mulțimea este o forță teribilă nu numai în viață, ci și în
lumea computerelor. Atacul Distributed Denial of Service (DDoS).
de obicei efectuate folosind multe gazde zombificate, poate
tăiat din lumea exterioară chiar și cel mai persistent server și singurul eficient
protectie – organizare sistem distribuit servere (dar este departe de a fi accesibil
nu tuturor, salut Google).

Metode de luptă

Pericolul majorității atacurilor DDoS constă în transparența lor absolută și
„normalitate”. La urma urmei, dacă o eroare în software poate fi întotdeauna corectată, atunci completează
Înghițirea resurselor este un eveniment aproape obișnuit. Mulți oameni le întâlnesc
administratori, când resursele mașinii (lățimea canalului) devin insuficiente,
sau site-ul web este supus unui efect slashdot (twitter.com a devenit indisponibil după
la câteva minute după prima veste despre moartea lui Michael Jackson). Și dacă tăiați
trafic și resurse pentru toată lumea, vei fi salvat de DDoS, dar vei pierde bine
jumătate dintre clienți.

Practic nu există nicio cale de ieșire din această situație, dar consecințele atacurilor DDoS și ale acestora
eficienta poate fi redusa semnificativ printr-un reglaj adecvat
router, firewall și analiză continuă a anomaliilor în trafic de rețea. ÎN
În următoarea parte a articolului vom lua în considerare secvenţial:

  • metode de recunoaștere a unui atac DDoS incipient;
  • metode de combatere a unor tipuri specifice de atacuri DDoS;
  • sfaturi universale care vă vor ajuta să vă pregătiți pentru un atac DoS și
    reduce eficacitatea acestuia.

La final, va fi dat răspunsul la întrebare: ce să faci când
Atacul DDoS.

Combaterea atacurilor de inundații

Deci, există două tipuri de atacuri DoS/DDoS, iar cel mai comun este
se bazează pe ideea de inundare, adică copleșirea victimei cu un număr mare de pachete.
Există diferite inundații: ICMP flood, SYN flood, UDP flood și HTTP flood. Modern
Boții DoS pot folosi toate aceste tipuri de atacuri simultan, așa că ar trebui
aveți grijă în prealabil de o protecție adecvată împotriva fiecăruia dintre ele.

1. Inundație ICMP.

O metodă foarte primitivă de a înfunda lățimea de bandă și de a crea încărcături
stiva de rețea prin trimiterea monotonă a cererilor ICMP ECHO (ping). Uşor
detectat prin analiza fluxurilor de trafic în ambele sensuri: în timpul unui atac
precum inundațiile ICMP, sunt aproape identice. O modalitate aproape nedureroasă de a
protecția se bazează pe dezactivarea răspunsurilor la solicitările ICMP ECHO:

# sysctl net.ipv4.icmp_echo_ignore_all=1

Sau folosind un firewall:

# iptables -A INPUT -p icmp -j DROP --icmp-type 8

2. SYN inundație.

Una dintre modalitățile comune de a înfunda nu numai un canal de comunicare, ci și de a introduce
stiva de rețea sistem de operareîntr-o stare în care nu mai poate
accepta noi cereri de conectare. Bazat pe încercarea de inițializare
un număr mare de conexiuni TCP simultane prin trimiterea unui pachet SYN cu
adresă de retur inexistentă. După mai multe încercări de a trimite un răspuns
Pachetul ACK la o adresă inaccesibilă, majoritatea sistemelor de operare instalează un pachet nespecificat
conexiune la coadă. Și numai după a n-a încercare conexiunea este închisă. Deoarece
fluxul de pachete ACK este foarte mare, în curând coada devine plină, iar nucleul
refuză încercările de a deschide o nouă conexiune. Cei mai inteligenți roboți DoS sunt, de asemenea
analizați sistemul înainte de a lansa un atac pentru a trimite cereri doar de deschidere
porturi vitale. Este ușor de identificat un astfel de atac: doar
încercați să vă conectați la unul dintre servicii. Măsurile defensive sunt de obicei
include:

Creșterea cozii de conexiuni TCP „pe jumătate deschise”:

# sysctl -w net.ipv4.tcp_max_syn_backlog=1024

Reducerea timpului de menținere a conexiunilor „pe jumătate deschise”:

# sysctl -w net.ipv4.tcp_synack_retries=1

Activarea mecanismului TCP syncookies:

# sysctl -w net.ipv4.tcp_syncookies=1

Limitarea numărului maxim de conexiuni „pe jumătate deschise” de la un IP la
port specific:

# iptables -I INPUT -p tcp --syn --dport 80 -m iplimit --iplimit-above
10 -j CĂDURA

3. Viitură UDP.

O metodă tipică de mărire a lățimii de bandă. Bazat pe o premisă infinită
Pachete UDP către porturile diferitelor servicii UDP. Se indeparteaza usor prin taiere
astfel de servicii din lumea exterioară și stabilirea unei limite a numărului de conexiuni în
unitate de timp către serverul DNS din partea gateway-ului:

# iptables -I INPUT -p udp --dport 53 -j DROP -m iplimit --iplimit-above 1

4. HTTP flood.

Una dintre cele mai comune metode de inundare astăzi. Bazat pe
trimiterea la nesfârșit mesaje HTTP GET la portul 80 pentru a putea descărca
server web, astfel încât să nu poată procesa totul
alte cereri. Adesea, ținta unei inundații nu este rădăcina serverului web, ci una dintre ele
scripturi care efectuează sarcini mari consumatoare de resurse sau lucrează cu o bază de date. În orice
În acest caz, o creștere anormal de rapidă a buștenilor va servi ca un indicator al începutului unui atac.
server web.

Metodele de combatere a inundațiilor HTTP includ reglarea serverului web și a bazei de date
pentru a reduce efectul atacului, precum și pentru a elimina roboții DoS
diverse tehnici. În primul rând, ar trebui să măriți numărul maxim de conexiuni la
baza de date în același timp. În al doilea rând, instalarea în fața serverului web Apache este ușoară
și nginx productiv - va stoca cererile în cache și va servi date statice. Acest
soluție din lista „must have”, care nu numai că va reduce efectul atacurilor DoS, ci și
va permite serverului să reziste la sarcini uriașe. Un mic exemplu:

# vi /etc/nginx/nginx.conf
# Creșteți numărul maxim de fișiere utilizate
worker_rlimit_nofile 80000;
evenimente (
# Creșteți numărul maxim de conexiuni
conexiuni_muncitor 65536;
# Utilizați metoda eficientă epoll pentru a gestiona conexiunile
utilizați epoll;
}
http(
gzip off;
# Dezactivați timeout pentru închiderea conexiunilor de menținere în viață
keepalive_timeout 0;
# Nu da versiunea nginx în antetul răspunsului
server_tokens dezactivat;
# Resetați conexiunea din cauza expirării timpului
reset_timedout_connection activat;
}
# Setări standard pentru a lucra ca proxy
server (
asculta 111.111.111.111 implicit amânat;
nume_server gazdă.com www.gazdă.com;
IP format_log $adresă_la distanță;
locaţie/(
proxy_pass http://127.0.0.1/;
}
locație ~* \.(jpeg|jpg|gif|png|css|js|pdf|txt|tar)$ (
root /home/www/host.com/httpdocs;
}
}

Dacă este necesar, puteți utiliza modulul nginx
ngx_http_limit_req_module, care limitează numărul de conexiuni simultane cu
o adresă (http://sysoev.ru/nginx/docs/http/ngx_http_limit_req_module.html).
Scripturile care consumă mult resurse pot fi protejate de roboți folosind întârzieri, butoane „Click”.
eu”, setarea cookie-urilor și alte tehnici care vizează verificarea
„umanitate”.

Pentru a evita intrarea într-o situație fără speranță în timpul unei furtuni DDoS
sisteme, este necesar să le pregătiți cu atenție pentru o astfel de situație:

  1. Toate serverele cu acces direct la rețeaua externă trebuie să fie
    pregătit pentru o repornire simplă și rapidă de la distanță (sshd îl va salva pe tatăl meu
    democrația rusă). Să ai un al doilea va fi un mare plus,
    administrativ, interfață de rețea prin care puteți accesa
    la server dacă canalul principal este înfundat.
  2. Software-ul folosit pe server trebuie să fie întotdeauna actualizat
    stare. Toate găurile sunt corectate, actualizările sunt instalate (la fel de simplu ca
    boot, sfat pe care mulți nu îl urmează). Acest lucru vă va proteja de atacurile DoS,
    exploatarea erorilor din servicii.
  3. Toate serviciile de rețea de ascultare destinate administrativ
    utilizarea trebuie să fie ascunsă în spatele unui firewall de oricine nu ar trebui
    au acces la ele. Atunci atacatorul nu le va putea folosi pentru a efectua
    Atacurile DoS sau forța brută.
  4. Pe abordările către server (cel mai apropiat router) trebuie instalat
    sistem de analiză a traficului (NetFlow pentru a ajuta), care va permite în timp util
    aflați despre un atac care vine și luați măsuri în timp util pentru a-l preveni.

Adăugați următoarele linii la /etc/sysctl.conf:

# vi /etc/sysctl.conf
# Protecție anti-spoofing
net.ipv4.conf.default.rp_filter = 1
# Verificați conexiunea TCP la fiecare minut. Dacă pe de altă parte - legal
aparat, ea va răspunde imediat. Valoarea implicită este de 2 ore.
net.ipv4.tcp_keepalive_time = 60
# Încercați din nou după zece secunde
net.ipv4.tcp_keepalive_intvl = 10
# Numărul de verificări înainte de a închide conexiunea
net.ipv4.tcp_keepalive_probes = 5

Trebuie remarcat faptul că toate tehnicile prezentate în secțiunile anterioare și în aceasta
au ca scop reducerea eficacității atacurilor DDoS vizate
utilizați resursele mașinii. Protejați-vă de inundațiile care blochează canalul cu gunoi
practic imposibil și singurul corect, dar nu întotdeauna fezabil
modalitatea de a lupta este de a „priva atacul de sens”. Dacă ai în
ai la dispozitie un canal cu adevarat larg care va trece usor de trafic
botnet mic, consideră că serverul tău este protejat de 90% din atacuri. Sunt mai multe
metodă sofisticată de protecție. Se bazează pe o organizație distribuită
rețea de calculatoare, care include multe servere redundante care
conectat la diferite canale principale. La calculul puterii sau
capacitatea canalului se epuizează, toți clienții noi sunt redirecționați
către un alt server (sau sunt „împrăștiate” treptat pe servere conform principiului
round-robin). Aceasta este o structură incredibil de costisitoare, dar foarte stabilă, umpleți
ceea ce este aproape imposibil.

Altele mai mult sau mai putin solutie eficienta consta in achizitionarea scumpa
sisteme hardware Cisco Traffic Anomaly Detector și Cisco Guard. Lucrând în
grămadă, ele pot suprima un atac primit, dar ca majoritatea celorlalți
deciziile bazate pe învățare și analiza stării eșuează. Prin urmare ar trebui
gândește-te bine înainte de a stoarce zeci de mii de la șefii tăi
dolari pentru o astfel de protecție.

Se pare că a început. Ce să fac?

Înainte de începerea imediată a atacului, roboții „se încălzesc”, treptat
creșterea fluxului de pachete către mașina atacată. Este important să profitați de momentul și să începeți
actiuni active. Monitorizarea constantă a routerului va ajuta în acest sens,
conectat la o rețea externă (analiza graficelor NetFlow). Pe serverul victimei
Puteți determina începutul unui atac folosind mijloace improvizate.

Prezența inundației SYN este ușor de stabilit - prin numărarea numărului de „semi-deschise”
Conexiuni TCP:

# netstat -na | grep ":80\" | grep SYN_RCVD

Într-o situație normală, nu ar trebui să existe deloc (sau o cantitate foarte mică:
maxim 1-3). Dacă nu este cazul, sunteți atacat, continuați imediat să aruncați
atacatori.

Inundarea HTTP este puțin mai complicată. Mai întâi trebuie să numărați numărul
Procesele Apache și numărul de conexiuni pe portul 80 (HTTP flood):

# ps aux | grep httpd | wc -l
# netstat -na | grep ":80\" | wc -l

Valorile de câteva ori mai mari decât media statistică dau motive
gandeste-te la asta. În continuare, ar trebui să vizualizați lista adreselor IP de la care provin solicitările
pentru conectare:

# netstat -na | grep ":80\" | sortare | uniq -c | sort -nr | Mai puțin

Este imposibil să identifici fără ambiguitate un atac DoS pe care îl poți confirma doar
ghici despre prezența uneia dacă o adresă se repetă prea mult în listă
ori (și chiar și atunci, acest lucru poate indica vizitatori în spatele NAT).
Confirmarea suplimentară ar fi analiza pachetelor folosind tcpdump:

# tcpdump -n -i eth0 -s 0 -w output.txt dst portul 80 și serverul IP gazdă

Un indicator este un flux mare de monoton (și care nu conține util)
informații) pachete de la IP-uri diferite direcționate către același port/serviciu (de exemplu,
rădăcina serverului web sau un anumit script cgi).

După ce ne-am hotărât în ​​sfârșit, începem să aruncăm persoanele nedorite după adrese IP (vor exista
mult mai eficient dacă faci asta pe un router):

# iptables -A INPUT -s xxx.xxx.xxx.xxx -p tcp --destination-port http -j
PICĂTURĂ

Sau direct prin subrețea:

# iptables -A INPUT -s xxx.xxx.0.0/16 -p tcp --destination-port http -j
PICĂTURĂ

Acest lucru vă va oferi un avantaj (foarte mic; adesea adresa IP sursă
falsificat) pe care trebuie să le utilizați pentru a le adresa
furnizor/hoster (cu jurnalele serverului web, nucleului,
firewall și o listă de adrese IP pe care le-ați identificat). Majoritatea, desigur,
va ignora acest mesaj (și companiile de găzduire care plătesc pentru trafic vor fi, de asemenea, fericite -
Un atac DoS le va aduce profit) sau pur și simplu vă vor închide serverul. Dar în orice caz
În acest caz, acest lucru trebuie făcut - este posibilă o protecție eficientă DDoS
doar pe canalele principale. Singur poți face față micilor atacuri
care vizează epuizarea resurselor serverului, dar vă veți găsi fără apărare împotriva
DDoS mai mult sau mai puțin grav.

Combaterea DDoS în FreeBSD

Reducem timpul de așteptare pentru un pachet de răspuns la o solicitare SYN-ACK (protecție împotriva
inundație SYN):

# sysctl net.inet.tcp.msl=7500

Transformarea serverului într-o gaură neagră. În acest fel, nucleul nu va trimite pachete de răspuns când
încercarea de a se conecta la porturile neocupate (reduce sarcina mașinii în timpul
DDoS pe porturi aleatorii):

# sysctl net.inet.tcp.blackhole=2
# sysctl net.inet.udp.blackhole=1

Limităm numărul de răspunsuri la mesajele ICMP la 50 pe secundă (protecție împotriva
inundație ICMP):

# sysctl net.inet.icmp.icmplim=50

Creștem numărul maxim de conexiuni la server (protecție față de toate
tipuri de DDoS):

# sysctl kern.ipc.somaxconn=32768

Activați DEVICE_POLLING - sondaj independent driver de rețea miez pe
sarcini mari (reduce semnificativ sarcina sistemului în timpul DDoS):

  1. Reconstituim nucleul cu opțiunea „options DEVICE_POLLING”;
  2. Activați mecanismul de sondare: „sysctl kern.polling.enable=1”;
  3. Adăugați intrarea „kern.polling.enable=1” la /etc/sysctl.conf.

Internet naiv

În perioada lor de glorie, atacurile DoS au fost un adevărat dezastru pentru servere
și stații de lucru obișnuite. Site-ul ar putea fi ușor demontat folosind
o singură gazdă care implementează un atac de tip Smurf. Posturi de lucru cu
sistemul de operare Windows instalat a căzut ca piesele de domino de la atacuri precum Ping of Death, Land,
WinNuke. Astăzi nu trebuie să ne temem de toate acestea.

Cele mai mari botnet-uri

400 de mii
calculatoare.
- 315 mii
calculatoare.
Bobax - 185 de mii de computere.
Rustock - 150 de mii de computere.
Furtuna - 100 de mii de computere.
Psybot - 100 de mii de routere ADSL bazate pe Linux.
BBC botnet - 22 de mii de computere.
,
creat de BBC.

O urmă în istorie

1997 - Atacul DDoS pe site-ul Microsoft. O zi de tăcere.
1999 – site-urile web ale Yahoo, CNN, eBay și altele au fost „în afara gamei”.
Octombrie 2002 - atac asupra serverelor DNS rădăcină ale Internetului. Pentru o vreme au fost
7 din 13 servere au fost dezactivate.
21 februarie 2003 - atac DDoS pe LiveJournal.com. Serviciu de două zile
era într-o stare de paralizie, dând doar ocazional semne de viață.

Sisteme inteligente

INFO

Round-robin - algoritm de echilibrare a sarcinii de calcul distribuit
sistem prin căutarea elementelor sale într-un ciclu circular.

© 2024 ermake.ru -- Despre repararea PC-ului - Portal de informații