![](https://habrastorage.org/webt/o8/iz/_c/o8iz_cksnmxvnmpk5sws25fievm.png)
Привет, Хабр. Меня зовут Владимир Душкевич, я специалист по информационной безопасности, преподаватель факультета «Информационная безопасность». Несколько лет назад я присоединился к команде GeekBrains и хочу рассказать об этом. В конце статьи будет небольшой анонс для тех читателей, кто тоже хотел бы стать частью нашей команды. Но это потом, а сначала моя история.
Все началось в 2018 г. — тогда я впервые услышал о GeekBrains. И, решив подтянуть навыки программирования, устроился на курсы. Тогда же узнал, что компания ищет преподавателя по информационной безопасности, и меня это заинтересовало. В то время я уже преподавал в Архангельском колледже телекоммуникаций (АКТ (ф) СПбГУТ) и карьера преподавателя в офлайне меня вполне устраивала. Но было интересно узнать, как все происходит, когда преподаешь по удаленке.
Немного о себе
Вуз я закончил еще в 2008 г. по специальности «Физика с дополнительной специальностью Информатика» в Поморском Государственном университете им. М.В. Ломоносова. Потом неоднократно получал дополнительное образование: в сфере информационной безопасности, Linux, сетевых и web-технологий. Профессионалу постоянно нужно учиться, чтобы знания и опыт не устарели — я это хорошо понимал и понимаю. В IT по-другому просто нельзя. К примеру, нельзя быть специалистом по защите информации без знания настройки антивирусной сети, поэтому последним сертификатом, который я получил, стал сертификат компании DrWeb по администрированию DrWeb Enterprise Security Suite v.11. С другой стороны, бывает полезно взглянуть на безопасность со стороны злоумышленника, поэтому пришлось изучать техники, используемые в сетевых атаках. В частности, иногда приходится изучать подозрительные файлы, поэтому без знания техник не обойтись.
![](https://habrastorage.org/webt/rs/bm/jh/rsbmjh1gfb70yzlyymg4twxzi4i.png)
Среда для динамического анализа вредоносного ПО.
К сожалению, курсы по программированию, которые я решил пройти в GeekBrains, закончить не удалось, поскольку преподавательская работа в колледже отнимала массу времени. У нас как раз проходила аккредитация специальности 10.02.02 «Информационная безопасность телекоммуникационных систем», и мне пришлось составлять большое количество документов. То есть бюрократическая работа просто не оставила времени на учебу.
Теперь о том, как я попал в GeekBrains. В мае 2018 г. на портале hh.ru увидел вакансию преподавателя по информационной безопасности с дистанционным форматом работы. Захотелось попробовать себя в новом деле, и я решил откликнуться на вакансию. Со мной связался методист, сообщил, что нужно провести пробную трансляцию на YouTube с небольшим уроком. Я провел ее успешно, после чего меня пригласили преподавать.
Моя работа в GeekBrains
Сейчас я читаю два курса: безопасность серверной и клиентской части web-приложений. Первый курс посвящен общим вопросам информационной безопасности и ряду уязвимостей серверной части web-приложений. В частности, рассматриваются:
- методологии поиска уязвимостей;
- pentest и Bug Bounty;
- разведка;
- разведка 2.0;
- security misconfiguration;
- inclusion;
- remote code execution;
- non-RCE vulnerabilities.
На втором курсе рассматриваем уязвимости клиентской части и возможные способы защиты. Это интерактивный курс, на котором мы изучаем:
- что такое XSS;
- контексты XSS;
- классификацию XSS;
- эксплуатацию XSS;
- обход WAF;
- CSRF;
- content security policy;
- прочие уязвимости на клиенте.
Достоинства онлайн-преподавания
Мне очень нравится работать удаленно. Кроме того, учебный процесс стал гораздо активнее, поскольку я стараюсь разбирать больше практического материала.
Например, мы рассматриваем на практике сценарии поиска уязвимостей OWASP Top 10, чего часто не хватает в образовательных учреждениях.
![](https://habrastorage.org/getpro/habr/post_images/a67/056/082/a6705608202a2e4f0ad08fd6084a9037.png)
Уязвимая среда Owasp Mutillidae используется на курсах для демонстрации уязвимостей.
На малое количество практики в колледжах и вузах жалуются как студенты, так и преподаватели. Я работал в колледже девять лет, поэтому знаю, о чем говорю.
Для преподавателя удаленная работа хороша еще и тем, что здесь минимум бюрократии. В вузе или колледже постоянно приходится заполнять какие-то документы, готовить бумажные методические пособия, отчеты и т.п. Плюс в обычной ситуации преподаватель может использовать лишь узкий спектр методов работы. На удаленке все не так: здесь нет бюрократии, методы и средства решения задач выбирает сам преподаватель (в соответствии с концепцией курсов, конечно).
Например, на курсе мы используем Kali Linux (и утилиты из ее состава), а на моей предыдущей работе к использованию этой операционной системы относились скорее отрицательно.
![](https://habrastorage.org/getpro/habr/post_images/772/6d0/e69/7726d0e697461111ca8267691bcd750b.png)
Сканер Nikto используется у нас на курсах для поиска уязвимостей.
Еще на наших курсах можно корректировать и развивать программу, которую разработала компания, с чем в офлайн-преподавании большие проблемы. Я стараюсь дополнять курс информацией, интересной студентам, применяя свои практические навыки и опыт (по роду своей деятельности я занимаюсь практическими вопросами обнаружения и предотвращения атак, так что есть чем поделиться).
Я описываю не только положительный опыт, но и проблемы, которые могут возникнуть в работе специалиста по компьютерной безопасности. Например, эффект от использования некоторых утилит очень сильно зависит от настроек системы. Если чего-то не хватает, то привычный инструмент работать не будет. Об этом нужно рассказывать, демонстрируя все на практике. К примеру, можно заблокировать использование многих «нежелательных» утилит для анализа сервера и поиска информации на нем. Идея заключается в том, что у многих утилит значение поля
User_Agent
является уникальным. Один из методов блокировки — через файл .htaccess
при наличии установленного и активированного модуля mod_rewrite
. Содержимое файла будет таким (на примере Apache 2):RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} curl [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^$ [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^Acunetix [NC]
RewriteRule ^.* - [F,L]
Где:
curl
означает, что слово «curl» должно встречаться в полеUser_Agent
;^
означает начало строки, то есть^Acunetix
— строка, которая начинается наAcunetix
;^$
означает пустоту;RewriteRule ^.* — [F,L]
— страница 403 (Forbidden
, опция[F]
); она возвращается, если выполняется хотя бы одно из условий.
В итоге запрос, содержащий
User_Agent
утилиты curl, будет заблокирован:![](https://habrastorage.org/getpro/habr/post_images/de6/0ef/496/de60ef49687875583264265fc8710a78.png)
Заблокированный запрос утилиты curl.
Что получает выпускник курса по информационной безопасности?
Если говорить обо всем курсе, то по завершении обучения студент получает:
- навыки работы с операционной системой Linux, азы программирования на Python и знание основных компонентов, из которых состоит web: URL, HTTP, HTML, JavaScript, Same Origin Policy и т.д.;
- навыки поиска уязвимостей в клиентской части web-приложений, эксплуатации клиентских уязвимостей, знание способов защиты, понимание принципов работы основных web-протоколов и механизмов защиты браузера;
- навыки поиска server-side-уязвимостей и понимание особенностей Bug Bounty, что позволит зарабатывать деньги с помощью Bug Bounty;
- навыки использования проводных и беспроводных сетей, понимание их устройства, знание способов обеспечения безопасности в сетях и умение тестировать параметры их безопасности;
- навыки обратного инжиниринга приложений, поиска и эксплуатации бинарных уязвимостей, знание основ криптографических протоколов.
Что касается направлений, которые я веду в рамках курса, то студенты:
- учатся находить уязвимости в клиентской и серверной части web-приложений;
- тестируют и проверяют различные уязвимости;
- выбирают механизмы защиты и составляют рекомендации по их внедрению;
- изучают виртуальный патчинг уязвимостей web-приложений, позволяющий настроить хорошую защиту от ряда известных опасных атак;
- рассматривают причины, которые приводят к возникновению уязвимостей, и признаки, позволяющие обнаружить проблему;
- изучают методы, использующиеся при сборе информации о web-приложении, что позволяет эффективнее тестировать найденные уязвимости или планировать защиту, закрывая уязвимую среду от злоумышленника.
В качестве заключения
Достоинств у онлайн-преподавания много, наверное, даже больше, чем при работе в вузе или колледже. По крайней мере, если говорить о моем опыте работы.
А теперь тот самый анонс. Если хотите присоединиться к команде GeekBrains, то сейчас есть хорошая возможность: компания ищет новых преподавателей, авторов и ревьюеров, от backend-разработчиков до data scientist, от тестировщиков до специалистов по информационной безопасности. Все это можно совмещать с основной работой. Узнать подробнее, а также подать заявку, если предложение вас заинтересовало, можно по этой ссылке.