Обучение

Консультация
Консультируем с 8:30 до 19:00Выходной: суббота и воскресенье


Сообщение об ошибке

Обучение

Сообщение об ошибке

Как стать этичным хакером. Говорим о тестировании безопасности веб-приложений

4 Ноября 2019

Тестирование безопасности – важный процесс, который позволяет выявить уязвимости и правильно защитить приложения. Почему это необходимо? С чего вообще стоит начать развитие в сфере security testing? Об этом в интервью рассказывает Дмитрий Николаев, Security Testing Engineer и тренер курса «Тестирование безопасности веб-приложений», который разработан компанией EPAM специально для тех, кто хочет попробовать себя в роли этичного хакера.


– Дмитрий, зачем проводится тестирование безопасности? На любом ли проекте оно необходимо?

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

Немаловажно, что потенциальная компрометация одного из приложений может по цепочке привести к компрометации рядом стоящего. И если первое из них работает только с «незначительными» данными, то второе может использоваться для работы в том числе и с конфиденциальными. Соответственно, безопасность важна в любом проекте и в любом приложении (за исключением лендинг-пейдж), а тестирование безопасности – важная составляющая, которая контролирует «действительно ли всё защищено хорошо».

– Если говорить простыми словами, то как вообще устроен процесс тестирования безопасности веб-приложений?

– Тут нет однозначного ответа. Всё зависит сугубо от целей, заказчика и условий. В каждом случае применяется разный подход. В самом упрощённом варианте это выглядит так (юридические вопросы здесь затрагивать не будем):

– Приходит заказчик и говорит: «Нам надо проверить безопасность приложения».

– Заказчику отдаётся список вопросов, некая анкета для заполнения. Это позволяет выявить «портрет» приложения и видение его заказчиком.

– Согласовывается время, среда и другие аспекты тестирования.

– Происходит тестирование, при котором параллельно составляется отчёт по мере нахождения уязвимостей.

– Отчёт финализируется, проверяется, высылается заказчику.

– Опционально: помощь команде разработчиков/тестировщиков в устранении/ретесте уязвимостей.

– На ваш взгляд, насколько перспективна профессия «тестировщик безопасности»? 

– Как я уже говорил, цифровые технологии будут всё больше внедряться в нашу жизнь. Это и IoT, и мобильные устройства, и системы слежения, и много-много всего остального. Тестирование безопасности не ограничивается веб-приложениями. Но если опираться конкретно на них, то эта ниша определённо будет нуждаться в тестировщиках безопасности, пока не произойдёт какая-то глобальная трансформация принципов передачи, обработки и хранения данных.

Думаю, этого не стоит ожидать в последующие лет 50, если не больше. При этом даже если качественное изменение всё-таки произойдёт, тестировщик безопасности сможет быстро адаптироваться к новым условиям, поскольку для работы в этой профессии необходим определенный «mind set». По мере роста профессионализма, он и развивается.

– Какими знаниями и навыками тестировщику безопасности нужно обладать на старте карьеры?

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

На старте карьеры, как правило, требуется много специальных технических знаний. Однако порог вхождения в безопасность веб-приложений считается одним из самых низких, поэтому так любим многими, кто только собирается «зайти в безопасность». 

Конечно, как и в случае с другими инженерными специальностями, в первую очередь, любой IT-компании интересен не вопрос, насколько «потенциальный тестировщик» усидчив, а насколько хорошо он понимает область технически. Для веб-безопасника самое важное – понимание уязвимостей веб-приложений и умение их находить. Если человек технически очень силён, то, как правило, на некоторые аспекты при трудоустройстве компания может «закрыть глаза» с надеждой, что кандидат освоит их по ходу работы.


– С чего стоит начать развитие в направлении веб-безопасности? Чем будет полезен в этом отношении курс от EPAM?

– Сразу отмечу, что курс по тестированию безопасности веб-приложений как раз таки и нацелен на людей, которые входят в веб-безопасность. Если вы интересуетесь этой темой, то начать, определённо, стоит с изучения основных типов уязвимостей веб-приложений. Перечень самых популярных из них можно найти в списке OWASP Top 10. Это открытый проект, созданный энтузиастами в области веб-безопасности. Они выкладывают статистику популярности уязвимостей за предыдущие 3-4 года. 

Хотя OWASP не претендует на стандартизацию, однако стали неформальным стандартом тестирования веб-приложений де-факто. У них множество гайдов, самый полезный из которых для тестировщика безопасности веб-приложений – OWASP Testing Guide. Это основа основ, с которой необходимо хотя бы ознакомиться. 

Курс от EPAM будет полезен тем, что слушатели получат «первый толчок» к развитию в области тестирования безопасности веб-приложений. Чаще всего на пороге «новых профессий» люди просто не знают, за что хвататься и что делать в первую очередь. На курсе мы подробно разберем большинство основных типов уязвимостей веб-приложений, их последствия и как от них защититься. 

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