реклама
разместить

Защита бизнеса от кибератак. Как обеспечить безопасность своего интернет-проекта?

Более 86% веб-приложений имеют критические уязвимости, которые могут привести к компрометации ресурса и краже конфиденциальной информации. Статистика показывает, что треть компаний обращаются уже по факту первого инцидента. Экономия и игнорирование информационной безопасности может в один прекрасный момент сыграть злую шутку - нанести финансовый ущерб и репутационные потери.

Защита бизнеса от кибератак. Как обеспечить безопасность своего интернет-проекта?

Внешняя угроза

Веб-сайты до сих пор остаются самым легкодоступным и уязвимым местом для атаки хакеров. В большинстве случаев часть таких атак приходится на различные B2C/B2B сервисы, предоставляющие разнообразные услуги для своих клиентов. Для злоумышленника представляет интерес в первую очередь денежные средства или криптовалюта на аккаунтах, если речь идет о криптобиржах и онлайн обменниках, а так же любые данные, которые можно украсть и впоследствии монетизировать.

На сегодняшний день можно классифицировать два типа основных атак:

1. DDoS (Denial of Service) — атака направленная на вывод сайта из строя. Сайт компании перестает работать и как следствие привлекать клиентов и приносить прибыль. Данный вид атаки является популярным методом для давления и устранения конкурентов, особенно когда на рынке становится тесно для нескольких крупных игроков. Для некоторых компаний несколько дней простоя могут обойтись в десятки и сотни тысяч долларов убытков. Заказчик таких атак в большинстве случаев остается безнаказанным, так как собрать доказательную базу практически невозможно. Если раньше можно было отследить цепочку движения денежных средств заказчик-исполнитель, то с появлением криптовалют сделать это намного сложнее.

2. Атаки, направленные на компрометацию ресурса. В этом случае веб-ресурс исследуется на предмет наличия уязвимостей, эксплуатация которых, приводит к полному или частично контролю над сайтом, краже конфиденциальной информации, проникновению во внутреннюю сеть компании, атаки на пользователей приложения.

Такие атаки могут развиваться по двум сценариям:

  • Целью является сама компания и ее сотрудники
  • Атака на конечного пользователя, т.е. клиента компании, посредством взлома поставщика услуг.

Почему хакеров так привлекают b2c/b2b сервисы?

Ответ прост. Проще взломать один сервис и уже через него провести атаку на десятки и сотни тысяч пользователей. Это очень удобно сделать через взлом сервиса почтовых рассылок. После взлома поставщика услуг, злоумышленник получает доступ к вашему аккаунта и вашей базе подписчиков. Далее идет рассылка фишинговых писем, с просьбой поменять пароль, обновить платежные реквизиты и т.д. Пользователь в этом случае обычно выполняет требуемые действия, так как письма приходят уже с знакомого адреса, не вызывая подозрений.

Последствия кражи базы данных может ощущаться спустя некоторое время, например, беспричинным падением продаж. Злоумышленник всегда старается скрыть следы проникновения - удаляет свои логи на всех уровнях.

Показательные атаки и последствия взломов, которые сразу же попадают в СМИ - теперь уже не вызывают удивления. Достаточно вспомнить атаки хакера на сайты Yota, MegaIndex и Автоваза. Целью такой атаки становится не кража информации, а просто самопиар и способ указать сотрудникам компаний на их некомпетентность в аспектах безопасности и защите своих сайтов. В таких случаях очень сильно страдает репутация бизнеса. Немногие изъявят желание пользоваться услугами компании, которая не в силах обеспечить безопасность даже своих клиентов.

Примеры уязвимостей и последствия их эксплуатации

<b>Слабая функция шифрования пароля в hash (DES) для паролей. </b>Все пароли длиннее 8 символов будут иметь такой же хеш, что и первые 8 символов этих паролей соответсвенно, то есть пароли 12345678 и 1234567890abcd в таком случае будут иметь один и тот же хеш в базе проекта, что упрощает подбор хешей для выявления паролей.
Слабая функция шифрования пароля в hash (DES) для паролей. Все пароли длиннее 8 символов будут иметь такой же хеш, что и первые 8 символов этих паролей соответсвенно, то есть пароли 12345678 и 1234567890abcd в таком случае будут иметь один и тот же хеш в базе проекта, что упрощает подбор хешей для выявления паролей.
К примеру если взять хеш из логов транзакций и попробовать его подобрать с помощью утилиты john, то получится выяснить пароль за достаточно короткий промежуток времени. За 5 секунд был определен пароль ‘admin’.
К примеру если взять хеш из логов транзакций и попробовать его подобрать с помощью утилиты john, то получится выяснить пароль за достаточно короткий промежуток времени. За 5 секунд был определен пароль ‘admin’.
В связи с отсутствием фильтрации html-тегов допустима кража cookies (на примере показана возможность исполнения javascript кода - в частности отображение cookies через тег img).<b> Вектор атаки:</b> в этом случае можно сформировать ссылку на xss-снифер и отправить ее администратору ресурса (например по почте), при переходе на которую (браузером) могут быть скопированы cookies администратора и сразу же откроется страница оригинального ресурса (при современных скоростях интернета эти 2 шага успеют завершиться менее чем за 1 секунду).
В связи с отсутствием фильтрации html-тегов допустима кража cookies (на примере показана возможность исполнения javascript кода - в частности отображение cookies через тег img). Вектор атаки: в этом случае можно сформировать ссылку на xss-снифер и отправить ее администратору ресурса (например по почте), при переходе на которую (браузером) могут быть скопированы cookies администратора и сразу же откроется страница оригинального ресурса (при современных скоростях интернета эти 2 шага успеют завершиться менее чем за 1 секунду).
В приложении была обнаружена логическая ошибка. Имеется функционал создания и редактирования так называемых «Тег»ов. Уязвимость заключается в том, что не происходит проверки принадлежности тега пользователю, тем самым, злоумышленник может изменить любой тег в системе. <b> Вектор атаки: </b>перебрав переменную «TagID», злоумышленник может сменить имя Тега любому пользователю.
В приложении была обнаружена логическая ошибка. Имеется функционал создания и редактирования так называемых «Тег»ов. Уязвимость заключается в том, что не происходит проверки принадлежности тега пользователю, тем самым, злоумышленник может изменить любой тег в системе. Вектор атаки: перебрав переменную «TagID», злоумышленник может сменить имя Тега любому пользователю.
Несмотря на расположение проекта на Cloudflare, можно обнаружить истинный IP-адрес сервера. Если ваш проект будет использоваться в связке с серверами Cloudflare , необходимо разрешить подключения к веб-серверам только от адресов Cloudflare (используя фаервол iptables) , что ограничит атаки в обход защищенных фронтендов.
Несмотря на расположение проекта на Cloudflare, можно обнаружить истинный IP-адрес сервера. Если ваш проект будет использоваться в связке с серверами Cloudflare , необходимо разрешить подключения к веб-серверам только от адресов Cloudflare (используя фаервол iptables) , что ограничит атаки в обход защищенных фронтендов.
Почтовая служба Exim устарела и имеет локальную уязвимость. <b> Вектор атаки:</b> публичная информация об уязвимости создает высокий риск создания эксплоитов (программ для проведения разного рода атак на вычислительные системы), это может быть приватный или публичный вариант эксплоита, оба по-своему опасны. Обновить все сетевые службы до последней версии, во избежание использования публичных эксплоитов - это то, что вы можете сделать сами, без привлечения специалистов.
Почтовая служба Exim устарела и имеет локальную уязвимость. Вектор атаки: публичная информация об уязвимости создает высокий риск создания эксплоитов (программ для проведения разного рода атак на вычислительные системы), это может быть приватный или публичный вариант эксплоита, оба по-своему опасны. Обновить все сетевые службы до последней версии, во избежание использования публичных эксплоитов - это то, что вы можете сделать сами, без привлечения специалистов.
На исследуемом ресурсе присутствовал скрипт для создания бэкапов баз данных, который являлся частью функционала панели администрирования. Некорректная реализация авторизации компонентов, позволяет получить доступ к скрипту и его функционалу неавторизованному пользователю. <b>Вектор атаки: </b>используя данную уязвимость, злоумышленник имеет возможность получить бэкап базы данных, включая логины и пароли администраторов сайта.
На исследуемом ресурсе присутствовал скрипт для создания бэкапов баз данных, который являлся частью функционала панели администрирования. Некорректная реализация авторизации компонентов, позволяет получить доступ к скрипту и его функционалу неавторизованному пользователю. Вектор атаки: используя данную уязвимость, злоумышленник имеет возможность получить бэкап базы данных, включая логины и пароли администраторов сайта.
В CMS-системе присутствует Boolean Based SQL Injection, позволяющая получать бинарную информацию из SQL базы данных. <b>Вектор атаки: </b>используя данную уязвимость, из базы данных были получены логины и захешированные пароли от панели администрирования сайта. Используя эти данные, был получен доступ в панель администрирования сайта.
В CMS-системе присутствует Boolean Based SQL Injection, позволяющая получать бинарную информацию из SQL базы данных. Вектор атаки: используя данную уязвимость, из базы данных были получены логины и захешированные пароли от панели администрирования сайта. Используя эти данные, был получен доступ в панель администрирования сайта.
Служба SSH уязвима к подбору паролей и не ограничивает число попыток аутентификации.
Служба SSH уязвима к подбору паролей и не ограничивает число попыток аутентификации.

В одном из примеров выше веб-студию решила сделать свою CMS и разрабатывала на ней все сайты своих клиентов. В результате использования небезопасных методов программирования CMS получилась с множеством уязвимостей. В итоге при взломе одного сайта злоумышленникам удалось взломать еще около 50 сайтов, через одни и те же уязвимости. В ходе аудита суммарно удалось выявить 23 уязвимости, 13 из которых были критическими и вели к несанкционированному доступу. Это наглядный пример того, как не надо делать свою CMS.

В целом, первое место занимают все те же инъекции, SQL/NoSQL. XSS сместился на 7 позицию, CSRF (межсайтовая подделка запроса) исчезла из списка, связано это со встроенной защитой в фреймворках от CSRF, хотя все так же часто встречается при тестировании, как и XSS.

OWASP Top 10 - наиболее критичные уязвимости веб-приложений.
OWASP Top 10 - наиболее критичные уязвимости веб-приложений.

Безопасность как процесс

Единственным и рациональным решением для обеспечения безопасности веб-приложения является использование комплексного подхода на протяжение всего жизненного цикла разработки программного обеспечения (SDLC). Целесообразно будет использовать как технические средства защиты так и организационные меры.

  • Безопасность на стадии разработки

Заказывая разработку приложения следует обсудить вопросы безопасности еще на стадии подписания договора. Уточнить, есть ли в штате компании специалист, отвечающий за безопасность приложений или компания прибегает к услугам внешних аудиторов. Данный этап очень важен, так как впоследствии при обнаружении множества уязвимостей проще будет переписать приложение с нуля, чем исправлять все дыры.

  • Аутсорсинг ИБ

Если ваш проект уже работает, то задумайтесь о привлечение компаний, специализирующихся в области тестирования приложений для проведения тестов на проникновение и аудита безопасности исходного кода. Каждая из услуг имеет свои преимущества:

Аудит безопасности исходного кода, он же code security review - услуга позволяющая проверить каждую строчку кода на уязвимости. Максимально эффективное обнаружение SQL инъекций, XSS, CSRF, Buffer overflows и Race conditions до запуска проекта.

Тест на проникновение направлен на выявление уязвимостей бизнес-логики, неправильного разграничения доступа, некорректной аутентификации и управление сессиями. Задача аудитора - обойти все средства и методы защиты приложения и получить доступ к приватным данным.


Важно понимать, что аудит показывает уровень защищенности на момент проведения тестирования. Динамика роста современных интернет-проектов и постоянные обновления: добавление нового функционала, обновление кода, расширение инфраструктуры приводит к появлению новых не проверенных областей, которые потенциально могут содержать уязвимости.

Поэтому следует не забывать проводить тестирование периодически, хотя бы раз в год и вести постоянный мониторинг логов на инциденты безопасности.

  • Технические средства защиты

Использование по необходимости защиты от DDoS атак, внедрение WAF и использование сканеров уязвимостей, является неотъемлемой частью комплексного подхода и служит дополнительной защитой. Данные инструменты используются как вспомогательные средства в связке аудиторских тестов. Запомните - WAF предотвращает лишь часть целевых атак по уже заданным и известным сигнатурам и паттернам, уязвимости бизнес-логики находятся вне зоны использование фаервола. В ходе тестирования некоторых проектов, удается узнать реальный ip адрес приложения, тогда WAF становится абсолютно бесполезным, так как все атаки идут в обход него, а не через него, как было изначально задумано. Сканеры уязвимостей упрощают для аудитора в ходе тестирования сбор информации о необходимости обновлений служб/ПО, выявления небезопасных конфигураций, открытых портов и анализ поверхностных уязвимостей, но никак не являются панацеей и как показывают тесты не обеспечивают 100% обнаружение всех угроз.

  • Обучение персонала

Множество атак на компании проходят с помощью социальной инженерии. Человек до сих пор остается самым уязвимым звеном в цепочки безопасности. Злоумышленник легко может попросить проверить “неполадки” в его личном кабинете, где уже размещен вредоносный код, с помощью которого можно легко украсть сессию сотрудника поддержки и получить привилегии в системе.

Или представившись сотрудником IT отдела этой же компании, воспользоваться доверием и невнимательностью работника, сославшись на неполадки в работе его компьютера, попросить сообщить данные для доступа к системе.

Это применимо к крупным компаниям, где сотрудники из одних отделов не знают в лицо специалистов из IT отдела, поэтому такой звонок и просьба не вызовут каких-либо подозрений. Использование парольных политик и регламентов даже для рядового персонала, является важнейшим правилом обеспечения безопасности внутри компании.

Доверяйте поддержку только опытным специалистам. Отправляйте своих программистов на курсы по защите веб-приложений. На данный момент в России несколько центров обучения, которые могут предложить такие курсы. В результате вы получите штатного сотрудника, которые разбирается в методах защиты вашего проекта.

Вывод

Подводя итоги и задумываясь о самом эффективном методе защите своих проектов, помните, что безопасность - это процесс, а не единоразовое мероприятие. Не стоит забыть про банальное обновление ПО и использование безопасных методов программирования.

  • Используйте только комплексный подход - техническая защита + аудит
  • Обновляйте все сетевые службы и ПО до последних версий, во избежание использования публичных эксплоитов. Используйте сервисы для проверки https://www.cvedetails.com и https://www.exploit-db.com и им подобные
  • Регулярно проводите тестирование сканером уязвимостей, например Acunetix WVS
  • Отключайте в коде сайта отладку и трассировку (для предотвращения раскрытия данных)
  • Отключать в средах неиспользуемые функции ОС
  • Проводите мониторинг и анализ лог-файлов серверов
  • Ограничивайте доступ по IP к критически важным данным
  • Строго разделяйте среды тестирования и разработки во избежании утечки данных
  • Тщательно продумывайте бизнес-логику приложения, особенно при интеграции с платежными системами, дабы избежать уязвимостей с подменой ордеров на вывод денежных средств, криптовалюты, баллов и т.д.
  • Для защиты от OWASP атак: передавать cookie c http-only флагами (защита от кражи cookie через внедренный Java Script код); устанавливать HTTP-заголовок X-Frame-Options (защищает фреймы html-страницы от незаметного подключения чужих фреймов)+ устанавливать HTTP-заголовок X-XSS-Protections (указывает браузеру при значении в 1 удалять небезопасное содержимое, в случае XSS атаки на сайт)
  • Для основной фильтрации всех атак из списка TOP 10 OWASP достаточно установить htaccess-фильтр https://perishablepress.com/6g-beta/ (производит фильтрацию пользовательских параметров по регулярному выражению)
  • Корректно настраивайте сетевой фильтр iptables (с политиками по умолчанию DROP, для цепочек INPUT, FORWARD и OUTPUT), для блокировки всех неучтенных соединений. Политика основных цепочек iptables должна быть запрещающей. Все службы, используемые только для локальных целей должны быть недоступны из неизвестных сетей.
  • Установите утилиту Fail2ban для предотвращения подбора паролей на любые сетевые службы, число неудачных подключений с паролями нужно ограничивать.

55
реклама
разместить
3 комментария

Ну есть над чем подумать.

Ну про фишинг почему то ни слова. А то в последнее время по видом рег. ру пишут практически каждый день.

1

Про фишинг написали, может быть и не так много.

"После взлома поставщика услуг, злоумышленник получает доступ к вашему аккаунта и вашей базе подписчиков. Далее идет рассылка фишинговых писем, с просьбой поменять пароль, обновить платежные реквизиты и т.д. Пользователь в этом случае обычно выполняет требуемые действия, так как письма приходят уже с знакомого адреса, не вызывая подозрений."

«Tether вступил в войну против российского крипторынка»: криптобиржа Garantex рассказала о блокировке кошельков на сумму 2,5 млрд рублей

Платформа временно приостановила все операции, включая вывод средств.

3333
44
22
22
11
Махинаторы) Лишь бы повод был) А все остальное можно списать на санкции и тд) Децентрализация)))) Я лучше по старинке будут покупать акции наших компаний и саморазвиваться)
реклама
разместить
«АвтоВАЗ» запустил бренд коммерческих автомобилей SKM

И показал две машины из линейки.

Источник здесь и далее: «АвтоВАЗ»
6464
1111
Запретили же латиницу. Почему не Добрыня?
Заработал миллион НЕ работая или как реклама в Telegram обеспечила мне шикарную жизнь

“Работаю час в день и делаю 200к+”, “Канал с 10 тысячами подписчиков приносит больше 100.000 рублей ежемесячно”, “Сделал миллион за месяц на рекламе в ТГ”. Красивые, черт возьми, слова. Но действительно ли за ними что-то стоит — сейчас расскажу

 
44
Как VC хочет получит с меня 350К за год использования VC
Как VC хочет получит с меня 350К за год использования VC

Свой личный блог на VC я веду с 2016 года, это уже почти 10 лет, за это время я написал огромное количество статей, которые получили тысячи просмотров и лайков. И недавно зайдя на VC я получил уведомление, что для продолжения использования VC мне надо платить 29К в месяц. Хорошая такая подписка.

2626
11
Как пять нейросетей заменяют целую студию людей

Всё началось с запроса от группы психологов, которые проводят тренинги по профессиональному выгоранию. Они хотели необычную визуализацию для своих корпоративных программ — что-то, что иронично показало бы офисную жизнь и проблемы выгорания.

2020
1313
33
Sex больше не sells. Оказывается, лучше всего недвижку продаёт…

История о том, как мы взломали рекламу недвижки и продавали мечты, а не квартиры

Sex больше не sells. Оказывается, лучше всего недвижку продаёт…
3131
11
На пороге нового мира — 5 трендов в коммуникациях

Как к ним адаптироваться

Алексей Марков
тренер по эффективным коммуникациям
33
Как прокачать продажи на Авито: 5 A/B тестов, которые откроют вам глаза

Не радуют результаты на Авито? Возможно, проблема не в площадке, а в отсутствии тестов и новых подходов? Не обязательно быть маркетологом или экспертом в рекламе — достаточно простых инструментов, таких как A/B тестирование. Разбираем в статье какие изменения в объявлениях действительно работают, а какие нет.

Как прокачать продажи на Авито: 5 A/B тестов, которые откроют вам глаза
1212
55
[]