ѕодпишитесь на наш Telegram-канал Ѕудьте в курсе последних новостей 👇 😉 ѕодписатьс€
ѕоддержим в трудное врем€ —пециальное предложение на техническую поддержку вашей »“ - инфраструктуры силами наших экспертов ѕодобрать тариф
ѕоставка оборудовани€ √аранти€ и помощь с настройкой. —кидка дл€ наших читателей по промокоду WIKIMERIONET  упить
»нтерфейс статистики Merion Mertics показывает ключевые диаграммы и графики по звонкам, а также историю звонков в формате, который легко поймет менеджер ѕопробовать бесплатно
¬недрение
офисной телефонии
Ўаг на пути к созданию доступных унифицированных коммуникаций в вашей компании ¬недрить
»нтеграци€ с CRM ѕомогаем навести пор€док с данными
и хранить их в единой экосистеме
ѕодключить
»“ Ѕезопасность ”мна€ информационна€ безопасность дл€ вашего бизнеса «аказать
«юзин ¬ладислав
Ѕусенков јлексей

«юзин ¬ладислав

12 минут чтени€

»нъекции

»нъекци€ происходит, когда злоумышленник пытаетс€ отправить данные в веб-приложение с намерением заставить его выполнить что-то, что не было предусмотрено при разработке приложени€. Ќаиболее распространенным примером этой у€звимости €вл€етс€ SQL-запрос, используемый с целью извлечени€ конфиденциальных данных организаций. Ќапример, злоумышленник может ввести код SQL в форму, котора€ ожидает им€ пользовател€ с открытым текстом. ≈сли эта форма ввода не защищена должным образом, это приведет к выполнению этого кода базой данных. “аким образом злоумышленник может читать, измен€ть и удал€ть информацию базы данных, котора€ дл€ него не предназначена. ¬се, что принимает параметры в качестве входных данных потенциально может быть у€звимо дл€ атаки путем внедрени€ кода.

”грозы безопасности персональных данных

ѕоскольку формы пользовательского ввода €вл€ютс€ главным способом реализации таких атак, то лучшим подходом дл€ предотвращени€ таких угроз €вл€етс€ контроль и проверка пользовательского ввода. ѕроцесс контрол€ направлен на проверку того, разрешен ли тип входных данных, представленных пользователем. ѕроверка ввода гарантирует, что это допустимый тип, формат и длинна. ќбрабатываетс€ только то значение, которое проходит проверку. Ёто помогает противодействовать любым командам, вставленным во входную строку. “ак же дл€ предотвращени€ угрозы используетс€ функци€ экранировани€ символов дл€ пользовательского ввода. Ёто делаетс€ чтобы —”Ѕƒ не путала пользовательский запрос с SQL командой. ќдним из лучших способов идентификации атак с использованием инъекций SQL €вл€етс€ использование брандмауэра веб- приложений (WAF). WAF отслеживает трафик, который приходит на веб-сервер, и определ€ет шаблоны которые представл€ют угрозу. “аким образом дл€ предотвращени€ данной атаки необходимо примен€ть проверку ввода, параметризированные запросы, хранимые процедуры и экранирование в сочетании с надежным брандмауэром. Ёто повысит шансы успешной защиты от данной атаки.


Ќарушение системы аутентификации

”€звимости в системах аутентификации (входа в систему) могут предоставить злоумышленникам доступ к учетным запис€м пользователей и даже возможность компрометировать всю систему с помощью учетной записи администратора, Ќапример, злоумышленник, облада€ базой тыс€ч известных комбинаций имени пользовател€ и парол€, может, использу€ ручные или автоматические методы может выполнить атаку грубой силы. »з-за того, что многие пользователи не соблюдают требований к сложности парол€ и веб-сервис не ограничивает количество попыток ввода парол€, злоумышленник может без труда получить доступ к интересующей его учетной записи.

ƒл€ уменьшени€ веро€тности успеха данной атаки рекомендуетс€ примен€ть многофакторную аутентификацию, чтобы предотвратить автоматизированный ввод данных, проверку на сложность парол€, а также ограничение или задержку повторных попыток входа. ѕрактически полностью уменьшить веро€тность такой угрозы может применение аутентификации по токенам.


Ќезащищенность конфиденциальных данных

”€звимость конфиденциальных данных €вл€етс€ одной из наиболее распространенных у€звимостей в списке OWASP. ”€звимость заключаетс€ в доступности критичных данных, которые должны быть защищены. ≈сли веб-приложение не защищают конфиденциальные данные, такие как финансова€ информаци€, медицинска€ информаци€ и пароли, злоумышленники могут получить доступ к этим данным и использовать их в своих цел€х. ѕлоха€ реализаци€ криптографической защиты информации и использование небезопасных протоколов основные причины попул€рности данной угрозы. ќдним из попул€рных способов кражи конфиденциальной информации €вл€етс€ реализаци€ атаки "человек посередине". “ака€ атака осуществл€етс€, когда злоумышленник подключаетс€ между веб-браузером и веб-сервисом и перехватывает или измен€ет соединение. «атем злоумышленник может просматривать весь трафик и собирать информацию или выдавать себ€ за одну из двух сторон. Ќапример, злоумышленник может находитьс€ между пользователем и веб-сервисом, который пользователь собираетс€ посетить и собирать его данные дл€ входа. Ёто можно сделать с помощью перехвата HTTP-соединени€ между пользователем и веб-сервисом. «ахват этого соединени€ позвол€ет действовать злоумышленнику как прокси-сервер, собира€ и измен€€ информацию, передаваемую между пользователем и сайтом.  роме того, злоумышленник может украсть файлы cookie пользовател€. Ёто небольшие фрагменты данных, созданные веб-сайтом и хран€щиес€ на компьютере пользовател€ дл€ идентификации и других целей. “акие файлы могут быть использованы дл€ захвата сеанса пользовател€, позвол€€ злоумышленнику выдавать себ€ за этого пользовател€. ќтсутствие шифровани€ конфиденциальных данных €вл€етс€ основной причиной, по которой эти атаки все еще широко распространены.

–иск несанкционированного получени€ данных может быть сведен к минимуму путем шифровани€ всех конфиденциальных данных, а также отключение временного хранени€ конфиденциальной информации дл€ повторного использовани€. ќдним из способов защиты передаваемых данных €вл€етс€ наличие на веб-сервисе сертификата SSL (Secure Sockets Layer). Ёто стандартна€ технологи€ безопасности дл€ установлени€ зашифрованного канала св€зи между веб-сервисом и браузером. ƒанный сертификат помогает обеспечить целостность передаваемых данных при передаче между веб-сервером и клиентом. Ѕолее новой и надежной версией протокола SSL €вл€етс€ протокол TLS. “акже дл€ защиты от таких атак используют протокол HTTP Strict Transport Security (HSTS), который обеспечивает безопасное соединение SSL/TLS с любым браузером или приложением, блокиру€ любые незащищенные HTTP соединени€, а также предотвращает кражу cookie.  роме того, администраторы и разработчики веб-сервисов следует не использовать лишнюю конфиденциальную информацию.


Ќарушение контрол€ доступа

”правление доступом позвол€ет разграничивать доступ к информации или функци€м дл€ разных пользователей. ≈сли управление доступом нарушено, злоумышленник, имеющий доступ к учетной записи, может использовать привилегии, которые не предназначены дл€ этой учетной записи. Ёто позвол€ет обычной учетной записи читать и копировать файлы, которые должны быть доступны только администратору. Ќеправильна€ настройка элемента управлени€ доступом позвол€ет злоумышленникам обходить авторизацию и выполн€ть задачи, которые доступны только привилегированным пользовател€м, администраторам. Ќапример, веб-приложение может позволить пользователю изменить учетную запись, в которую он вошел, просто изменим часть url-адреса без какой-либо другой проверки. Ёто происходит из-за неправильной конфигурации или вовсе отсутстви€ настройки прав на администрирование и управление приложением. ѕредоставл€€ глобальный доступ к панели управлени€ хостингом, серверу через FTP/SSH, базе данных или другим приложени€м на сервере мы открываем доступ к функци€м или просмотру конфиденциальных данных и файлов.

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


Ќебезопасна€ конфигурации

Ќаличие безопасной конфигурации всех компонентов инфраструктуры требуетс€ дл€ безопасности веб-сервера. Ќебезопасные и у€звимые компоненты могут быть представлены в различных формах: фреймворки, веб-серверы, сервер баз данных, сетевые службы и сами приложени€. ѕо умолчанию настройки компонентов сервера в своем большинстве небезопасны и это открывает злоумышленникам поле дл€ атаки. Ќапример, использование настроек по умолчанию в серверах баз данных может привести к доступу ка закрытой службе через публичный IP-адрес, что в сумме с использованием установленным производителем по умолчанию паролем чревато очень серьезными проблемами с утечкой или потерей критичных, или конфиденциальных данных. «лоумышленник сможет измен€ть и читать данные в числе которых могут быть выводимые браузером данные дл€ пользовател€ или же сессионные cookies, утечка которых может привести к использованию злоумышленником платежных данных пользователей или же другой секретной информации. ≈жедневно исследователи наход€т у€звимости в системах и компонентах. ќт у€звимостей нулевого дн€ трудно защититьс€. ”€звимость нулевого дн€ €вл€етс€ ошибкой при разработке программного обеспечени€, котора€ несет угрозу безопасности программного обеспечени€. “ермин "нулевой день" относитс€ к недавно обнаруженной у€звимости программного обеспечени€. ѕоскольку разработчик не знает о возможной у€звимости при проектировании ѕќ то, когда он узнает о найденном недостатке неожиданно, разработчик не имеет возможности сразу исправить эту у€звимость, так как дл€ этого нужно подготовить официальный патч или обновление дл€ исправлени€ проблемы. ” разработчика есть "ноль дней" чтобы исправить проблему, котора€ была обнаружена и возможно уже используетс€ злоумышленниками, чтобы успеть защитить своих пользователей.

»спользование небезопасных компонентов приводит к краже и широкомасштабным атакам.  огда приложение использует небезопасные компоненты, злоумышленники могут узнать все, что им нужно знать о серверах, компонентах и многом другом. ѕоэтому необходимо посто€нно провер€ть актуальность программного обеспечени€, так как у€звимости могут быть обнаружены в самых разных программных компонентах таких как сервера, базы данных и операционной системе. ƒл€ предотвращени€ угроз, св€занных с использованием неправильной конфигурации системы, следует использовать только необходимые компоненты и функции, автоматизировать процесс дл€ проверки эффективности конфигураций и параметров во всех средах, использовать методы сегментации и контейризации дл€ ограничени€ поверхности атаки.


ћежсайтовое выполнение сценариев XSS (Cross Site Scripting)

ћежсайтовое выполнение сценариев это широко распространенна€ у€звимость, котора€ затрагивает многие веб-приложени€. XSS-атаки состо€т из внедрени€ вредоносных клиентских сценариев на веб-сайт и использование ве-сайта в качестве распространени€. –иск XSS заключаетс€ в том, что он позвол€ет злоумышленнику вводить контент на веб-сайт и измен€ть способ его отображени€, заставл€€ браузер жертвы выполн€ть код, предоставленный злоумышленником во врем€ загрузки страницы. “акие у€звимости возникают, когда веб-приложение позвол€ет пользовател€м добавл€ть пользовательский код в URL-ссылку или на веб-сайт, который будет виден другим пользовател€м. Ёта у€звимость может быть использована дл€ запуска вредоносного кода JavaScript в браузере жертвы. XSS-атаки не направлены на конкретную цель. «лоумышленник просто использует у€звимость сайта или приложени€, внедр€€ код через случайного пользовател€ и далее этот сайт или приложение становитс€ центром рассылки вредоносных сценариев дл€ множества других пользователей. Ќапример, злоумышленник может отправить жертве электронное письмо, которые выгл€дит как официальное письмо от банка с ссылкой на веб-сайт этого банка. ќднако эта ссылка может иметь какой-то вредоносный код JavaScript, оставленный в конце URL-адреса. ≈сли сайт банка не будет должным образом защищен от межсайтового выполнени€ сценариев, то этот вредоносный код будет запущен в веб-браузере жертвы, когда он пройдет по ссылке. ”€звимость XSS дает злоумышленнику почти полный контроль на самым важным программным обеспечением компьютеров в насто€щее врем€ браузерами. —уществует три типа межсайтовых скриптовых атак:

  1. ’ранимые XSS (посто€нные). Ќаиболее опасный тип у€звимостей, так как злоумышленник получает доступ к серверу и уже с него может управл€ть вредоносным кодом. ¬редоносный код посто€нно хранитс€ на целевом сервере и выполн€етс€ каждый раз при обращении к сервису. Ёто может произойти на любых страницах с вводом данных пользователей, например, в пол€х комментариев, базе данных и может быть встроен как текст картинки, или рисунки.
  2. ќтраженные XSS (непосто€нные). ќтраженна€ атака происходит, когда вредоносный сценарий не хранитс€ на сервере, а содержитс€ во входных данных, отправленных от пользовател€ к серверу. Ёто атака реализуетс€ путем отправки жертве ссылки, содержащей вредоносный сценарий, на электронную почту или другим способом. ѕроход€ по ссылке, жертва отправл€ет запрос с вредоносным кодом к серверу, который автоматически берет данные из вредоносной строки и отправл€ет модифицированный ответ жертве. ¬ итоге браузер жертвы распознает запрос как надежный и выполн€ет вредоносный скрипт.
  3. DOM-модели. “ретий тип атаки, известный как атака на основе DOM (Document Object Model) не €вл€етс€ распространЄнной, но может произойти. јтака происходит, когда среда DOM измен€етс€ в веб-браузере жертве и приводит к запуску вредоносного кода на стороне клиента. јтаки на основе DOM отличаютс€ тем, что они используют у€звимости на стороне клиента, а не на стороне сервера.

ƒл€ снижени€ рисков XSS-атаки используютс€ межсетевые экраны, которые помогают см€гчить такие атаки. “акже дл€ предотвращени€ таких атак рекомендуетс€ осуществл€ть экранирование ненадежных данных HTTP-запроса или же использовать фреймворки, которые автоматически экранируют XSS.


Ќебезопасна€ дессериализаци€

Ёта угроза нацелена на многие веб-приложени€, которые часто сериализиуют или дессериализуют данные. —ериализаци€ означает получение объектов из кода приложени€ и преобразование их в формат, который может использоватьс€ дл€ других целей, таких как хранение данных на диске или их потокова€ передача. ƒессериализаци€ это обратное действие, преобразование сериализованных данных обратно в объекты, которые может использовать приложение.  огда поток данных преобразуетс€ в объекты, вредоносные или измененные объекты могут вызвать серьезные проблемы безопасности. Ќебезопасное осуществление десериализации €вл€етс€ результатом десериализации данных из ненадежных источников и может привести к серьезным последстви€м, таким как DDoS-атака, удаленное выполнение кода и запуска программ.

Ќесмотр€ на то, что можно предотвратить такие у€звимости использу€ мониторинг и проверку типов, единственным надежным способом защиты от атак десериализации €вл€етс€ запрет десериализации из ненадежных источников. ≈сли же это сделать невозможно, то дл€ предотвращени€ таких атак также может быть осуществлена проверка целостности, например, при помощи цифровой подписи, применение строгих ограничений типа при создании объектов. “акже изолирование и выполнение кода, который десериализуетс€ в средах с низким уровнем привилегий.


»спользование компонентов с известными у€звимост€ми

«начительна€ часть веб-сервисов состоит из множества специальных компонентов, такие как библиотеки и фреймворки (англ. - framework), которые поставл€ютс€ сторонними компани€ми. Ёти компоненты €вл€ютс€ част€ми программного обеспечени€, которые помогают разработчикам сократить врем€, избежать выполнени€ избыточной работы и обеспечить необходимую функциональность. Ќапример, попул€рный фреймворк, примен€емый дл€ разработки интерфейсов React или же библиотеки дл€ проведени€ тестировани€. «лоумышленники посто€нного ищут у€звимости в таких компонентах и потом используют дл€ организации атак. ќбнаружив у€звимость в безопасности одного из компонентов приложени€, злоумышленник может сделать у€звимыми сотни тыс€ч веб-сервисов. –азработчики компонентов часто выпускают обновлени€ дл€ устранени€ известных у€звимостей, однако администраторы и разработчики не всегда имеют возможность обновить компоненты до последней версии. „тобы свести к минимуму риск запуска компонентов с известными у€звимост€ми, разработчикам следует удал€ть неиспользуемые компоненты из своих проектов, а также провер€ть актуальность обновлений и получать их от надежных источников.


Ќедостаточный мониторинг и логирование

Ѕольшинство веб-сервисов не предпринимают достаточных шагов дл€ обнаружени€ нарушений безопасности данных. —реднее врем€ обнаружени€ нарушений составл€ет около 200 дней после того, как оно произошло. Ёто дает злоумышленникам много времени, чтобы нанести ущерб, прежде чем происходит кака€-то реакци€. Ћогирование и мониторинг необходим, чтобы оставатьс€ в курсе любых подозрительных изменений приложени€.