Выражение «DDOS-атака» сегодня знакомо не только специалистам, но и вполне рядовым юзерам. Оно еще не стало для нас настолько родным, как словосочетание «компьютерный вирус», но развитие событий показывает, что это лишь временно. О том, почему сисадмины боятся сообщать руководству о DDOS-атаках на свои серверы, какой ущерб наносится злоумышленниками, и как его можно избежать, корреспонденту Клерк.Ру Сергею Васильеву рассказал руководитель Лаборатории Высоких нагрузок Александр Лямин.
Скажите, Александр, так почему системные администраторы очень неохотно докладывают руководству своих компаний о фактах DDOS-атак?
Боятся, скрывают. Тут есть черты национальной психологии, согласно которой главным достоинством русского мужика является ширина спины. Наш сисадмин будет терпеть до последнего, чтобы только его не заподозрили в некомпетентности, неспособности защитить своего работодателя. Это относится к самым разным компаниям, от маленьких до огромных. А руководители подпитывают эти настроения, публично заявляя о том, что «33 раза уволили бы своего админа», случись их компьютерным сетям стать жертвой атаки. Они не понимают, что для противодействия нужно иметь соответствующую структуру, и таких ресурсов может не оказаться даже у суперкомпетентного специалиста.
Есть класс атак, с которым можно справиться самостоятельно – это, как правило, нападения энтузиастов-самоучек. Первый ход - дать техническому специалисту для анализа часа полтора, и не дергать его в это время. Если же проблема не решилась и за три часа, нужно задумываться о привлечении внешних компаний.
И что же даст это обращение на сторону?
Например, в Лаборатории Высоких нагрузок мы разработали свое решение по фильтрации трафика. Что означает этот термин? Вот есть веб-приложение - тот же сайт www.klerk.ru. К нему каждую минуту обращены самые разные запросы самого разного географического происхождения. DDOS-атака - это по сути те же запросы, только «мусорные», единственная задача которых – потребить ресурсы сервера. Злоумышленники стараются замаскировать их под действия нормальных пользователей. С помощью серьезной программы создается максимально правдоподобно построенная стратегия поведения ботов: в частности, «человекообразное» время задержки перехода мышки между разными объектами на экране. Плюс включаются "шумы" для меньшей синхронности задержек, а значит, большей правдоподобности.
Года два назад все было гораздо проще. Но современные боты - не какой-то самописный http-клиент. Это полноценный веб-браузер, который спрятан в минимизированном окне, так что владелец зараженного компьютера и не подозревает о его присутствии.
У нас, соответственно, появилась новая логика. С прошлого сентября работает модуль, который делает поведенческий анализ пользователя - какие переходы по страницам наблюдаются, куда, с какими задержками. Все боты ловятся на одной очень простой идее: бот, в отличие от обычного пользователя, никогда не теряет энтузиазма по отношению к вашему веб-ресурсу. Да, он делает небольшие перерывы, отходит на свой «перекур», но то, что он будет продолжать тусоваться у вас, это точно.
Проводя исторический анализ поведения клиентов разного рода на сервере, мы можем сделать выводы - бот это или нормальный легитимный пользователь. То есть, фильтрация - это процесс отделения вредоносного трафика от нормального.
Вы начинаете анализировать трафик уже тогда, когда клиент обратился к вам за помощью?
Тут надо упомянуть об одной важной вещи. Наши серверы с программным обеспечением стоят на нескольких, так сказать, узловых точках интернета, на магистральных сетях, где сходятся международные трафики. И когда клиент переводит трафик на нас, мы пропускаем через себя всех его пользователей. В этот момент мы применяем к ним свою алгоритмику, шаблоны. Для анализа достаточно 30 минут, но, конечно, чем дольше мы видим трафик, тем точнее настраиваются фильтры. Решения «бот или не бот», в любом случае, вероятностные. Когда нужно сохранить работоспособность ресурса, мы делаем три вещи. Первое - строим список наиболее вероятных ботов, исходя из описанной выше модели. Второе - ищем, кто генерирует максимальное количество нагрузки на сервер. Ну и третье - оцениваем количество трафика, которое в данный момент можно позволить пропустить, чтобы серверу не стало «плохо», чтобы атака не достигла цели. И отсекаем от него пропорциональную часть участников отсортированного по двум полям списка.
Можете ли вы предупредить о начинающейся атаке?
Мы так и делаем, но это затратная для нас услуга, так что «тревожное оповещение» действует лишь для тех клиентов, которые с нами уже работают. Отслеживать просто так всех мы не можем.
Вы говорили, что 97% атак происходят на уровне http-приложения. А остальные 3%?
Это атаки на канальную емкость: более примитивный, но и более разрушительный тип. При нем с десятков тысяч компьютеров «тяжелыми» пакетами информации у жертвы забиваются входные каналы интернета. И в этом случае единственный способ переждать такую атаку с минимальными потерями – это просто-напросто иметь доступ к свободным канальным емкостям. Вот, например, наши серверы стоят не просто у провайдеров, а на магистральных каналах.
Правильно ли я понимаю, что вы клиентам предлагаете атаку переждать на вашем канале?
Да. Это, конечно, дорогое удовольствие, но надо соразмерить его с возможным ущербом. Оператор связи все равно предложит пострадавшей компании оплатить канал, а то и вовсе может отключить его, потому что иначе могут пострадать другие клиенты оператора.
Легко ли заражаются компьютеры, становящиеся частью ботнета?
Легко. Тут надо сказать однозначное спасибо одной очень известной компании - разработчику программного обеспечения. В ее оперативных системах регулярно находят не уязвимости даже, а такие дырки, что хоть святых выноси. Даже открыв обычную html-страницу в браузере последней генерации, можно получить к исполнению чужой вредоносный код.
А что же антивирусы?
Они сегодня проигрывают нападающей стороне на порядки, хотя какое-то время назад действительно были эффективны. Главное, чем можно обезопасить себя – это не лазить по посторонним сомнительным сайтам.
Может ли компьютер без ведома владельца не только стать частью ботнета, но и сменить «принадлежность» к тем или иным злоумышленникам?
Конечно. В Сети периодически появляются рассказы о том, как одна команда хакеров у другой угнала ботнет.
А что вы скажете о противоположной стороне? Легко ли бывает хакерам «нагрузить» своих жертв до предела?
Что касается самих атакуемых систем, то тут главная беда – слабый уровень защиты приложений. Безобразно неэффективными бывают даже очень популярные и распространенные движки. Все современные скриптовые языки программирования нацелены на то, чтобы максимально облегчить работу программиста. Они в какой-то степени просто развратили людей, которые не думают, к чему приводит набор инструкций, которые они написали.
Возьмем пример с любым интернет-магазином. Достаточно «положить» в корзину за один раз все представленные в нем товары, и магазин «вешается». Так вот, если приложение написано неграмотно, оно легко позволяет злоумышленнику это сделать. Тут достаточно атаки всего одним компьютером. А грамотно написанное приложение, наоборот, должно квотировать ресурсы. Ситуации бывают комичные. Я однажды столкнулся с интернет-магазином, в котором при оформлении каждого заказа система перекачивала через веб-приложение около 300 Мб данных.
Получается, что в одиночку никакая компания не сможет противостоять серьезной атаке?
Проблему можно, конечно, решить раз и навсегда, но пока что, к сожалению, лишь в теории. Для этого нужно "переизобрести" Интернет - ввести цифровую подпись источника при контактах любого рода. Такие работы уже ведутся, но в ближайшие 10 лет они навряд ли покинут стены лабораторий. Так что компьютерщикам стоит побыстрее перестать стесняться и задуматься всерьез о своей защите.
Что такое DDOS-атака
DDoS расшифровывается как Distributed Denial of Service, что дословно можно перевести как «распределенная атака на отказ в обслуживании». Цель атаки - выявить в системе ограниченный разделяемый ресурс (простейший пример – оперативная память сервера) и полностью занять его, оттеснив легитимных пользователей.
«Распределенность» означает, что нападение происходит с множества разных компьютеров, то есть обычными средствами выделить и заблокировать его источник невозможно. Причем владельцы зараженных компьютеров, образующих так называемый «ботнет», могут и не подозревать, что их техника подчиняется чужому злому умыслу.
Средняя численность атакующего ботнета в мире – 5000 компьютеров, в России - 1000. В среднем атака длится 3 дня, максимальная зафиксированная длительность - 6 месяцев.
Начать дискуссию