
Отново и отново, след провеждането на одит, се сблъсквам с неразбиране на моята препоръка да скрия портовете зад бяла листа. Дори много добри администратори и DevOps специалисти питат: „Защо?!?”
Предлагам да разгледаме рисковете по спадане на вероятността за настъпване и щета.
- Грешка в конфигурацията
- DDoS по IP
- Брутфорс
- Уязвимости на услугите
- Уязвимости в ядрения стек
- Усилване на DDoS атаки
Грешка в конфигурацията
Най-типичната и опасна ситуация. Както става. Разработчикът трябва бързо да провери хипотезата, той пуска времеви сървър с mysql/redis/mongodb/elastic. Паролата, разбира се, е сложна, той я използва навсякъде. Отваря услугата за света — удобно му е да се свърже от своя компютър без тези VPN-ове. А синтаксисът на iptables му е мързелив за запомняне, все пак сървърът е времеви. Още няколко дни разработка — получи се отлично, можем да покажем на клиента. Клиентът е доволен, нямаме време за преработки, пускаме в ПРОД!
Примерът е умишлено преувеличен с цел да обхване всички капани:
- Нищо не е по-постоянно от временното — не харесвам тази фраза, но според субективните ми усещания, 20-40% от тези временни сървъри остават подвластни за дълго.
- Сложна универсална парола, която се използва в многобройни услуги — зло. Защото един от сервисите, където е използвана тази парола, може да е бил компрометиран. Така или иначе, базите данни с компрометирани услуги се събират в една, която се използва за [брутфорс]*.
Необходимо е да добавим, че redis, mongodb и elastic след инсталиране всъщност са достъпни без удостоверяване и често допълват . - Може да изглежда, че за няколко дни никой няма да сканира вашия порт 3306. Това е заблуждение! Masscan е отличен скенер и може да сканира със скорост от 10 милиона порта в секунда. А в интернет има само 4 милиарда IPv4. Соответно, всички портове 3306 в интернет ще бъдат намерени за 7 минути. Карл!!! Седем минути!
„На кого му трябва това?“ — ще възразите вие. И аз се учудвам, гледайки статистиката на отхвърлените пакети. Откъде за 24 часа 40 хиляди опити за сканиране с 3 хиляди уникални IP? Сега сканират всички, които не им се иска, от мами хакери до правителства. Проверете много просто — вземете всяка VPS за 3-5 долара от всеки** лоукостер, включете логиране на отхвърлените пакети и погледнете в логовете след 24 часа.
Включване на логиране
В /etc/iptables/rules.v4 добавете в края:
-A INPUT -j LOG —log-prefix "[FW — ALL] " —log-level 4
А в /etc/rsyslog.d/10-iptables.conf
:msg,contains,»[FW — » /var/log/iptables.log
& stop
DDoS по IP
Ако злонамерен потребител знае вашия IP адрес, той може да атакува вашия сървър с DDoS атака за няколко часа или дори дни. Не всички хостинг доставчици с ниски цени предлагат защита от DDoS атаки и вашият сървър може да бъде просто изключен от мрежата. Ако скриете сървъра зад CDN, не забравяйте да смените IP адреса, в противен случай хакерът ще го намери лесно и ще атакува вашия сървър извън CDN (много честа грешка).
Уязвимости на услугите
В цялостната популярна софтуерна среда, рано или късно, се откриват грешки, дори и в най-добре тестваните и критични приложения. Сред експертите по информационна сигурност има такъв полу-функционален виц — сигурността на инфраструктурата може да се оцени по времето на последното обновление. Ако вашата инфраструктура не е обновяна от година и е пълна с разкриващи се портове, всеки специалист по сигурност ще ви каже, че имате уязвимости, и вероятно вече сте хакнати.
Трябва също да се спомене, че всички известни уязвимости някога са били неизвестни. Представете си хакер, който е открил такава уязвимост и е сканирал целия интернет за 7 минути за нейното наличие… И ето я новата вирусна епидемия ) Трябва да се обновявате, но това може да навреди на продукцията, ще кажете вие. И ще сте прави, ако пакетите не се инсталират от официалните репозитории на операционната система. От опит знам, че обновленията от официалния репозиторий рядко счупват продуктивността.
Брутфорс
Както споменах по-горе, има база данни с половин милиард пароли, които е удобно да се въвеждат от клавиатурата. С други думи, ако не сте генерирали паролата, а сте въвели съседни символи на клавиатурата, бъдете сигурни* — вие ще бъдете хакнати.
Уязвимости в ядрения стек.
Има ситуации****, при които дори няма значение кой точно сервис отваря порта, когато е уязвим самият мрежов стек на ядрото. Тоест, абсолютно всякакви tcp/udp сокети на система на две години могат да бъдат уязвими за DDoS атаки.
Увеличаване на DDoS атаките
Непосредствено няма да предизвика щети, но може да запълни вашия канал, да повиши натоварването на системата, вашият IP адрес може да попадне в някакъв черен списък*****, а вие ще получите предупреждение от хостера.
Наистина ли искате всички тези рискове? Добавете домашния и работния си IP адрес в белия списък. Дори ако е динамичен — влезте през администраторския панел на хостера, през уеб конзолата и просто добавете още един.
Занимавам се с изграждане и защита на IT инфраструктурата вече 15 години. Създал съм правило, което настоятелно препоръчвам на всички — нито един порт не трябва да е видим за света без белия списък..
Например, най-защитният уеб сървър*** е този, който има отворени портове 80 и 443 само за CDN/WAF. А сервисните портове (ssh, netdata, bacula, phpmyadmin) трябва да бъдат поне зад бял списък, а още по-добре зад VPN. В противен случай рискувате да бъдете скомпрометирани.
При мен всичко е наред. Дръжте портовете си затворени!
- (1) UPD1: можете да проверите дали вашата страхотна универсална парола (не правете това без да замените паролата с произволни в всички услуги), не е изтекла в база с данни. можете да видите колко услуги са били хакнати, в които е фигурирал вашият имейл, и съответно да установите дали вашата страхотна универсална парола е била компрометирана.
- (2) За чест на Amazon — на LightSail има минимум сканове. Явно ги филтрират по някакъв начин.
- (3) Още по-защитен уеб сървър е този, който е зад отделен firewall, собствен WAF, но става въпрос за публични VPS/отделни сървъри.
- (4) Segmentsmak.
- (5) Firehol.
Само регистрирани потребители могат да участват в анкетата. , моля.
Имате ли отворени портове навън?
- Винаги
- Понякога
- Никога
- Не знам, не ме интересува
Гласували са 54 потребителя. 6 потребителя се въздържаха.
Източник: habr.com
