Ne otvarajte luke prema svijetu - bit ćete slomljeni (rizici)

Ne otvarajte luke prema svijetu - bit ćete slomljeni (rizici)

Iznova i iznova, nakon obavljanja revizije, kao odgovor na moje preporuke da se luke sakriju iza bijele liste, nailazim na zid nesporazuma. Čak i vrlo cool admini/DevOps pitaju: “Zašto?!?”

Predlažem da rizike razmotrimo u padajućem redosledu verovatnoće nastanka i štete.

  1. Greška u konfiguraciji
  2. DDoS preko IP-a
  3. Brute force
  4. Servisne ranjivosti
  5. Ranjivost steka kernela
  6. Povećani DDoS napadi

Greška u konfiguraciji

Najtipičnija i najopasnija situacija. Kako se to dešava. Programer treba brzo da testira hipotezu, on postavlja privremeni server sa mysql/redis/mongodb/elastic. Lozinka je, naravno, složena, koristi je svuda. To otvara uslugu svijetu - zgodno mu je da se poveže sa svog računara bez ovih vaših VPN-ova. I previše sam lijen da se sjetim sintakse iptablesa server je ionako privremen. Još par dana razvoja - ispalo je odlično, možemo to pokazati kupcu. Kupcu se sviđa, nema vremena da se to ponovi, lansiramo ga u PROD!

Primjer namjerno preuveličan kako bi se prošla kroz sve grablje:

  1. Ne postoji ništa trajnije od privremenog - ne sviđa mi se ova fraza, ali prema subjektivnom osjećaju, 20-40% takvih privremenih servera ostaje dugo vremena.
  2. Složena univerzalna lozinka koja se koristi u mnogim uslugama je zla. Jer jedan od servisa na kojima je korištena ova lozinka je mogao biti hakovan. Na ovaj ili onaj način, baze podataka hakovanih servisa skupljaju se u jednu, koja se koristi za [brute force]*.
    Vrijedi dodati da su nakon instalacije, redis, mongodb i elastic općenito dostupni bez autentifikacije i često se dopunjuju zbirka otvorenih baza podataka.
  3. Možda se čini da niko neće skenirati vaš 3306 port za nekoliko dana. To je zabluda! Masscan je odličan skener i može skenirati pri 10M portova u sekundi. A na Internetu postoji samo 4 milijarde IPv4. Shodno tome, svih 3306 portova na Internetu se nalaze za 7 minuta. Charles!!! Sedam minuta!
    "Kome ovo treba?" - prigovaraš. Tako da sam iznenađen kada pogledam statistiku ispuštenih paketa. Odakle dolazi 40 hiljada pokušaja skeniranja sa 3 hiljade jedinstvenih IP adresa dnevno? Sada svi skeniraju, od maminih hakera do vlada. To je vrlo lako provjeriti - uzmite bilo koji VPS za 3-5 USD od bilo koje** niskotarifne avio kompanije, omogućite evidentiranje ispuštenih paketa i pogledajte dnevnik za jedan dan.

Omogućavanje evidentiranja

U /etc/iptables/rules.v4 dodajte na kraju:
-A INPUT -j LOG --log-prefiks "[FW - SVE] " --log-nivo 4

I u /etc/rsyslog.d/10-iptables.conf
:msg,sadrži,"[FW - "/var/log/iptables.log
& stop

DDoS preko IP-a

Ako napadač zna vašu IP adresu, može oteti vaš server na nekoliko sati ili dana. Nemaju svi jeftini hosting provajderi DDoS zaštitu i vaš server će jednostavno biti isključen sa mreže. Ako ste sakrili svoj server iza CDN-a, ne zaboravite promijeniti IP, inače će ga haker proguglati i DDoS vaš server zaobići CDN (veoma popularna greška).

Servisne ranjivosti

Svi popularni softveri prije ili kasnije pronađu greške, čak i one najprovjerenije i najkritičnije. Među IB stručnjacima postoji polušala - sigurnost infrastrukture može se sigurno procijeniti do trenutka posljednjeg ažuriranja. Ako je vaša infrastruktura bogata portovima koji strše u svijet, a niste je ažurirali godinu dana, onda će vam bilo koji stručnjak za sigurnost reći bez gledanja da propuštate i da ste najvjerojatnije već hakovani.
Također je vrijedno napomenuti da su sve poznate ranjivosti nekada bile nepoznate. Zamislite hakera koji je pronašao takvu ranjivost i skenirao ceo internet za 7 minuta u potrazi za njenom prisutnošću... Evo nove epidemije virusa) Moramo da ažuriramo, ali ovo može naškoditi proizvodu, kažete. I bićete u pravu ako paketi nisu instalirani iz zvaničnih OS spremišta. Iz iskustva, ažuriranja iz službenog spremišta rijetko pokvare proizvod.

Brute force

Kao što je gore opisano, postoji baza podataka sa pola milijarde lozinki koje je zgodno kucati sa tastature. Drugim riječima, ako niste generirali lozinku, već ste upisali susjedne simbole na tastaturi, budite sigurni* da će vas zbuniti.

Ranjivost steka kernela.

Takođe se dešava **** da nije ni bitno koji servis otvara port, kada je sam stog mreže kernela ranjiv. To jest, apsolutno svaki tcp/udp socket na sistemu starom dvije godine podložan je ranjivosti koja vodi do DDoS-a.

Povećani DDoS napadi

Neće uzrokovati nikakvu direktnu štetu, ali može začepiti vaš kanal, povećati opterećenje sistema, vaš IP će završiti na nekoj crnoj listi*****, a vi ćete biti zlostavljani od strane hostera.

Da li su vam zaista potrebni svi ovi rizici? Dodajte svoj kućni i poslovni IP na bijelu listu. Čak i ako je dinamičan, prijavite se preko administratorske ploče hostera, preko web konzole i samo dodajte još jednu.

Gradim i štitim IT infrastrukturu već 15 godina. Razvio sam pravilo koje toplo preporučujem svima - nijedna luka ne bi trebala stršiti u svijet bez bijele liste.

Na primjer, najsigurniji web server*** je onaj koji otvara 80 i 443 samo za CDN/WAF. I servisni portovi (ssh, netdata, bacula, phpmyadmin) bi trebali biti barem iza bijele liste, a još bolje iza VPN-a. U suprotnom, rizikujete da budete kompromitovani.

To je sve što sam htio reći. Držite svoje luke zatvorenima!

  • (1) UPD1: to je možete provjeriti svoju cool univerzalnu lozinku (nemojte to raditi bez zamjene ove lozinke nasumičnom u svim servisima), da li se pojavio u spojenoj bazi podataka. I ovdje možete vidjeti koliko je usluga hakovano, gdje je vaša e-pošta uključena i, shodno tome, saznati da li je vaša kul univerzalna lozinka kompromitovana.
  • (2) Zasluga Amazona, LightSail ima minimalno skeniranje. Očigledno to nekako filtriraju.
  • (3) Još sigurniji web server je onaj iza namjenskog firewall-a, vlastiti WAF, ali govorimo o javnom VPS/Dedicated.
  • (4) Segmentsmak.
  • (5) Firehol.

Samo registrovani korisnici mogu učestvovati u anketi. Prijavite semolim.

Da li vam portovi vire?

  • Uvek
  • Ponekad
  • Nikada
  • Ne znam, jebote

Glasalo je 54 korisnika. Uzdržano je bilo 6 korisnika.

izvor: www.habr.com