[Из песочницы] OSCP — мой опыт
Что это за четыре буквы и кому это вообще надо?
Я не буду описывать курс PWK и OSCP экзамен, простой запрос «OSCP review» выдаст вам кучу обзоров, описание формата, рекомендации и структуру курса. Просто поделюсь своим собственным опытом, как я сделал это и какие решения принимал. Данная сертификация это как дверь в закрытый клуб. Люди, которые сдали OSCP всегда найдут общие темы и поностальгируют над самыми сложными «машинами», вспомнят бессонные ночи и 24 часовой экзамен.
Нужно ли готовиться к курсу?
До принятия решения самостоятельно оцените свои силы. Подумайте, позволяют ли обстоятельства выделить из жизни от одного до трех месяцев. Поддержат ли с пониманием близкие. Забудьте про спортзал и онлайн игры. Это время когда Вы каждую свободную минуту будете учиться и готовится к экзамену. Курс не будет доступен в момент оплаты, посмотрите доступные даты начала и спланируйте свое время. С момента оплаты до старта курса я читал обзоры и описания и сохранял все в отдельную папочку закладок в браузере. Перед экзаменом я перечитал все статьи и материалы с пониманием, что бы освежить советы для экзамена.
Сколько брать месяцев?
Я брал 3, потому что работал фултайм, мне не выделяли дни или часы для обучения, в рабочее время не было возможности заниматься курсом. Все зависит от того, сколько времени в течение недели Вы готовы выделить и сколько его Вам нужно в зависимости от опыта и знаний. В отпуске неделя по 10 часов в день будет примерно равняться двум неделям при работе 5/2 (7×10=4×10+10×3).
В каком порядке браться за все «это»?
Я лично заранее для себя определил, что приступлю к лабораторным только после полного прочтения материалов курса с его практическими заданиями. Курс Вас медленно введет в лабораторную среду, покажет первые шаги и даст вам первые флаги за «взломанные» машины. При этом я абсолютно проигнорировал видео уроки (учебные материалы состоят и учебника и видео курса) и олдскульно вчитывался в книгу. Они в большей степени дублируют друг друга, поэтому можете выбрать как Вам удобнее и приятнее усваивать материал. Ну или как все нормальные люди делать это параллельно и использовать все, за что уже было «уплочено».
Виртуальная машина от Offensive Security
Offensive Security рекомендует использовать их специальную сборку Kali Linux для PWK/OSCP. Суть в том что это 32x битная сборка под VMware. Я лично предпочитаю VirtualBox (да начнется холивар) и у меня к началу курса уже имелась своя рабочая виртуалка Kali Linux x64. Я прошел весь курс и сдал экзамен именно на ней, но всегда под рукой держал официальную версию. И да, мне она пригодилась дважды. Первый раз, что бы собрать 32х битный эксплойт (все лабораторные машины именно 32). Я успешно собирал множество других эксплойтов для прочих машин в лабораторной среде, а вот один ну никак не получалось. Второй раз, столкнувшись с небольшой технической проблемой я обратился в поддержку, после ряда тестов мы пришли к вопросу какую виртуалку я использую. Узнав, что не официальную, мне сказали, что продолжат «разговор» в случае если ошибка повторится при использовании официальной версии (к слову, она повторилась, и ко второму слову, проблему я решил сам, поддержка не поддержала).
Все машины в лабораторной
Я сделал абсолютно все машины в лабораторной среде. В ходе прохождения курса я сам лично возмущался почему приходится тратить время на то, что не относится к сдаче экзамена. Например лутать (собирать информацию с машин, которая может получить доступ к следующим) абсолютно не нужно в ходе экзамена. Но после сдачи я понял, что вот все это так возмущавшее меня ранее и есть самое интересное и уникальное в OSCP.
Самые сложные машины
Конечно же это три всадника апокалипсиса Humble, Sufferance и Pain. Могу так же назвать Gh0st, он также часто упоминается как сложная машина. Но лично для меня это был Pedro. Я пропустил на одной машине лут, причем я его видел, просто не сделал пометку. Pedro я делал последним и что бы подобраться к нему я «перевзломал» почти 70% лабораторной среды. После всего этого я как раз столкнулся с технической проблемой описанной выше. В общем я этого славного парня Педро не забуду.
Лабораторный репорт
С точки зрения 5 баллов, которые он дает на экзамене, его написание мало эффективно, потому что описание заданий из учебника требует много времен и пять баллов Вас спасут в исключительном случае. С другой стороны это идеальная возможность приготовится к описанию машин, поправить шаблон, понять сколько и какого кода надо сохранять, какие скриншоты нужны. Я сделал этот репорт в самом конце курса и думаю во многом благодаря этому на экзамене написание репорта мне далось легче, чем я читал или слышал от коллег.
OSCP комьюнити
Offensive security поддерживает iRC чат, форум и канал Discord. Чат мне абсолютно не понравился, мало народу, как-то неудобно и непривычно. В поисках идей и подсказок я читал форум, многое что там написано далеко от правды и очень уж размыто, что бы не было спойлеров. Читать можно, но все время думаешь «Что же хотел сказать автор?». Дискорд я открыл для себя за несколько дней до окончания курса, но по моему мнению это очень полезный ресурс. Много участников (на момент написания 4243), всегда кто-то онлайн, очень удобный поиск. Если Вы человек общительный, готовы спрашивать и отвечать, это однозначно лучшее место для общения и подсказок.
Техническая сторона экзамена
Я использовал ноутбук с подключенным специально купленным вторым монитором. Если используете второй монитор, установите и протестируйте плагин, который будет использоваться для надзора за Вами. Да, вы будете под надзором. Я так же подготовил запасной канал связи в виде телефона раздающего интернет, на случай поломки основного.
Процесс экзамена
Начало экзамена я забронировал на 10 утра. Я купил пару банок энергетических напитков и пару пачек сладостей, что бы продержаться 24 часа. Спустя 8 часов я имел достаточное количество баллов что бы получить сертификат. Еще после 2 часов я получил «пользователя» на последней машине. Оставшиеся 14 часов я потратил на попытки PrivEsc. Что нужно сделать я понял когда оставалось лишь 20 минут до конца экзамена, но не успел. В финальном репорте я описал, что «вот такой-то вектор мог бы быть использован, но не был из-за нехватки времени». Так же где-то посреди ночи за четыре часа до истечения времени я пробежался по требованиям к описанию, что бы убедиться что у меня достаточно скриншотов. После истечения времени экзамена, возможности их сделать уже не будет. После каждого ключевого этапа (пользователь, root) я делал перерывы по 10–15 минут, очень помогает держать себя в тонусе и не уставать.
После экзамена
В пятницу вечером я отправил все свои репорты, а уже в субботу ближе к ночи я получил подтверждение об успешной сдачи экзамена!
Итог
Надо ли сдавать или нет это личное дело каждого, но опыт подобного обучения и формата экзамена очень интересен. Надеюсь у всех «tryharder» превратится в «itriedharder»
Данный материал не претендует на абсолютное руководство по получению сертификата OSCP от Offensive Security. Это мой личный опыт, который возможно будет полезен тем, кто рассматривает эту сертификацию или уже ввязался в это увлекательное путешествие в мир Penetration Testing.