Тестирование приложений на безопасность

Тестирование приложений на безопасность

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

  • Всесторонняя оценка приложения 
  • Мониторинг угроз приложения 
  • Оценка исходного кода
  • Оценка базы данных
  • Оценка мобильных приложений 
  • Архитектура и дизайн сетевой безопасности
  • Оценка внешних и внутренних уязвимостей 
  • Оценка беспроводных сетей
  • Всесторонняя проверка конфигураций безопасности
  • Рекомендации по конкретным решениям


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

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

Когда следует проводить аудит приложений?

  • Для уже используемых критичных приложений – с выбранной периодичностью либо при внесении изменений;
  • Перед запуском в эксплуатацию нового бизнес-приложения;
  • При добавлении надстроек к существующим приложениям;
  • В случае инцидента ИБ, связанного с функционированием приложения, и при подозрении на некорректную работу приложения с точки зрения ИБ.

Типы приложений требующих проведения аудита безопасности

SAP-системы — обеспечение защищенности корпоративных систем управления ресурсами предприятия (ERP-систем) является одной из важнейших задач служб информационной безопасности современных компаний.

СУБД Oracle — анализ защищенности корпоративных сетей все чаще показывает, что в целом уровень безопасности заметно возрос, однако ряду проблем до сих пор не уделяется должного внимания. Одна из них – это защищенность корпоративных систем управления базами данных (СУБД).

Системы ДБО — система дистанционного банковского обслуживания является ключевым ресурсом банка, безопасности которого следует уделять особое внимание.

Мобильные приложения — использование мобильных телефонов стало повсеместным и повседневным. ПО, которое раньше было доступно только на компьютере, сейчас доступно и на телефоне.

Интеграционные шины (Enterprise Service Bus, ESB) позволяют реализовать обмен данными как между внутренними системами, такими как ERP или АБС, так и между компаниями-партнерами.

Встроенные системы (Embedded) – компьютерные системы, предназначенные для выполнения определенных специфичных задач.

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

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

Пример группы тестов аудита безопасности сайта/веб-приложения


Reconnaissance — разведка, подготовительный этап. На данном этапе производится сканирование портов исследуемого ресурса, а также идентификация доступных сервисов.

Configuration Management Testing — тестирование настроек системы. На данном этапе производится поиск уязвимых компонентов серверного ПО и выявление небезопасных настроек хостинга.

Authentication/Authorization bypass — тестирование механизмов аутентификации и авторизации. На данном этапе производится проверка возможности получения нелегитимного доступа к компонентам системы через обход механизмов аутентификации и авторизации.

Session Management Testing  — тестирование механизмов управления сессиями. Проверяется возможность фиксации сессии (Session Fixation), подделки межсайтовых запросов (Сross Site Request Forgery) и др.

Business Logic Testing — тестирование механизмов логики приложения. На данном этапе проводится анализ уязвимых мест в логике веб приложения, например, возможность совершить действие без соответствующего на то разрешения, проведения двойных транзакций (Race Condition)).

Data Validation Testing — тестирование механизмов проверки входных данных. Проверяется возможность внедрения произвольного кода (SQL Injection, XML Injection, XSS, Code Injection, B/H/S overflows) через очевидные и неочевидные точки входа в приложение.

Insecure File Uploading — небезопасная загрузка файлов на сервер. На данном этапе проводится проверка на возможность загрузки файлов, содержащих код (включая вредоносный), который, впоследствии, может быть выполнен на сервере.

Виды уязвимостей программного обеспечения

В настоящее время наиболее распространенными видами уязвимости в безопасности программного обеспеченияявляются:

  • XSS (Cross-Site Scripting) — это вид уязвимости программного обеспечения (Web приложений), при которой, на генерированной сервером странице, выполняются вредоносные скрипты, с целью атаки клиента.
  • XSRF / CSRF (Request Forgery) — это вид уязвимости, позволяющий использовать недостатки HTTP протокола, при этом злоумышленники работают по следующей схеме: ссылка на вредоносный сайт установливается на странице, пользующейся доверием у пользователя, при переходе по вредоносной ссылке выполняется скрипт, сохраняющий личные данные пользователя (пароли, платежные данные и т.д.), либо отправляющий СПАМ сообщения от лица пользователя, либо изменяет доступ к учетной записи пользователя, для получения полного контроля над ней.
  • Code injections (SQL, PHP, ASP и т.д.) — это вид уязвимости, при котором становится возможно осуществить запуск исполняемого кода с целью получения доступа к системным ресурсам, несанкционированного доступа к данным либо выведения системы из строя.
  • Server-Side Includes (SSI) Injection — это вид уязвимости, использующий вставку серверных команд в HTML код или запуск их напрямую с сервера.
  • Authorization Bypass — это вид уязвимости, при котором возможно получить несанкционированный доступ к учетной записи или документам другого пользователя

Чек лист проверки безопасности

  • Контроль доступа – определяет проблемы, связанные с несанкционированным доступом пользователей к информации и функциям в зависимости от предоставленной роли. Тестирование конфигурации ролевой модели.
  • Аутентификация – позволяет удостовериться в отсутствии возможности обойти процедуру регистрации и авторизации; убедиться в корректности управления пользовательскими данными, исключить возможность получения информации о зарегистрированных пользователях и их учетных данных.
  • Валидация входных значений  – используется для проверки алгоритмов обработки данных, включая некорректные значения, прежде, чем на них будет ссылаться приложение.
  • Криптография – обнаруживает проблемы, связанные с шифрованием, дешифрованием, подписью, верификацией подлинности, в том числе включая уровень сетевых протоколов, работу с временным файлами и cookies.
  • Механизмы обработки ошибок – включает проверку системных ошибок приложения на отсутствие факта раскрытия информации о внутренних механизмах безопасности (например, посредством демонстрации исключений, программного кода).
  • Конфигурация сервера – ищет в многопоточных процессах ошибки, связанные с доступностью значений переменных для совместного использования другими приложениями и запросами.
  • Интеграция со сторонними сервисами – позволяет убедиться в невозможности манипуляции данными, передаваемыми между приложением и сторонними компонентами, например, платежными системами или соцсетями.
  • Проверка устойчивости к Dos/DDos атакам – проверяет способность приложения обрабатывать незапланированно высокие нагрузки и большие объемы данных, которые могут быть направлены на выведение приложения из строя.  

Степень безопасности вашей системы будет оценена в соответствии с международным стандартом подтверждения безопасности приложений OWASP. Мы также проведем рекомендательную работу по устранению уязвимостей и рисков, опционально можем разработать регламент работы с продуктом для операторов и разработчиков – так вы защитите собственный бизнес и пользователей ресурса.