Школа Отзыв о курсе WAPT: пентест веб-приложений здорового человека

neonh4ze

Active member
07.06.2018
34
162
BIT
2
Привет, сообщество!

Считаю хорошим тоном оставить на форуме отзыв о прохождении небезызвестного курса WAPT по пентесту веб-приложений от команды CODEBY. Курс достался мне бесплатно за победу в зимнем конкурсе, поэтому полагаю, что мое мнение можно считать максимально непредвзятым. За скриншотами и более подробным описанием программы я направлю вас ознакомиться с детальным обзором от @clevergod (хоть мы и были в разных потоках), а здесь же я постараюсь кратко дать свои личные впечатления после завершения обучения и сдачи экзамена.

Обучение

Чтобы сразу поставить точки над i: курс мне очень понравился, и я действительно считаю, что в ru-сегменте подобных программ очень немного. Что в нем особенного? Все просто: это тот редкий случай, когда курс сможет и правда чему-то научить, а не просто выдаст тебе методичку с пошаговым прохождением практических лабораторий. Знания, как бы банально это звучало, добываются исследованием, но никак не зубрежкой. Методические материалы, разумеется, будут, однако в них ты найдешь только базу — остальное будь любезен поресерчить самостоятельно.

Из крайнего суждения следует такой вполне себе логичный вывод: курс WAPT далеко не простой. Это накладывает определенные рамки на пороговый уровень скила, которым желательно обладать обучающемуся. Я бы сказал, что учебная программа рассчитана на твердо уверенного в себе новичка-безопасника, который может бегло использовать никсовую консоль, знает, как пофиксить недостающие зависимости к питонячему софту, в курсе об основных концепциях веб-мира и общих механизмах атак. На мой взгляд, при таком раскладе входных данных будет получен максимальный импакт от обучения: совсем без базы будет трудно, а сильно перекаченные личности временами могут заскучать.

О структуре самой программы: есть 5 основных веток обучения (разделы с базовой теорией и обустройством рабочего места не берем). Это:
  1. Пассивный сбор информации;
  2. Активный фаззинг;
  3. Уязвимости;
  4. СИ (социалочка);
  5. Пост-эксплуатация.
Раздел с уязвимостями — то, зачем ты здесь. Он состоит из 9 подпунктов:
  1. SQLi;
  2. XXE;
  3. CMDi;
  4. SSTi;
  5. PHPi + LFI/RFI;
  6. Системные уязы (читай «использование публичных сплоитов»);
  7. Обход авторизации;
  8. Мисконфиги;
  9. Client-side (XSS, CSTi).
Первое важное напутствие: старайся кратко конспектировать завоеванные таски. Какой пейлоад выстрелил, какая команда привела к финальному флагу, какой скрипт ты написал, как поредачил сплоит, чтобы все взлетело. В этом ценность любой практики — оставить для себя заметку, которой можно пользоваться в будущем, а не заново копать многостраничные фолианты маны. Для этого курса я ограничился однофайловым конспектом в .md (см. Рис. 1), однако дерево в CherryTree тоже очень хорошее решение.

md.png

Рис. 1. Оглавление конспекта для некоторых тасков

Второй важный момент: старайся брать таски разными способами. Для многих задач, как и в реальной жизни, существует не единственное решение, поэтому пока есть возможность для практики, лучше воспользоваться ей и потраить разные векторы атак. Ведь зачастую это и тяготит душу хакера — отсутствие раздолья для удовлетворения своего любопытства. В этом преимущество CTF-площадок и таких курсов — здесь можно все (ну почти, хих).

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

За 3 месяца обучения я провел в практике около 5 дней чистого времени, взял все таски и изрядно повеселился (см. Рис. 2), чего и всем рекомендую.

CWAPT.png

Рис. 2. TOP-10 ближе к завершению курса

Экзамен

На экзамен отведено 24 часа. Для того, чтобы сдать, за это время нужно набрать 8 баллов из базового раздела (8 тасков по 1 баллу и 3 таска по 2 балла) и 6 баллов из раздела повышенной сложности (4 таска по 2 балла и 1 таск за 4 балла). Я начал в полдень субботы и к 7 часам вечера у меня уже был необходимый минимум, однако я решил не останавливаться и забрать все флаги. Как верно подметил @clevergod, после продолжительного времени непрерывной работы, думать становится намного тяжелее, поэтому на тот день я решил закончить, а с утра сделал все, что оставалось нерешенным.

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

Также еще два важных совета (да не сочтут их за спойлеры):
  1. Таск «Обойди с обратной стороны» — обязателен для прохождения в процессе обучения, это поможет вам на экзамене.
  2. Перед тем, как назначать дату экзамена, очень рекомендую обзавестись VPS'кой — ловить бэк-коннекты станет в разы удобнее, чем редиректить трафик через какой-нибудь ngrok или вовсе обходиться веб-шеллами.
Впечатления

Чтобы не повторяться, буду краток: WAPT — огонь, огромное спасибо команде в целом и @BadBlackHat в частности за возможность этого экспириенса. Уже положил глаз на бинарный сплоитинг, который стартует в 2021. Не подскажите, когда планируется следующий конкурс? ;)
 
Последнее редактирование:

clevergod

Platinum
22.04.2017
119
675
BIT
20
Да верно подметил про VPS. Тут не в коем случае недоработка оргов, а именно факт того, что курс растёт и мигрирует в локалку а сам экзамен не модифицировали. И для меня это было самой сложной частью травли трафика через череду редиректов. Отзыв норм. Про перекачанных которые могут заскучать - врятли.
 
  • Нравится
Реакции: g00db0y и neonh4ze

th3cr0wn

Green Team
26.04.2020
14
2
BIT
0
  1. Перед тем, как назначать дату экзамена, очень рекомендую обзавестись VPS'кой — ловить бэк-коннекты станет в разы удобнее, чем редиректить трафик через какой-нибудь ngrok или вовсе обходиться веб-шеллами.

Можно перевести эту фразу с русского на русский)?
Непонятно, зачем для экзамена нужен VPS (сейчас прохожу WAPT, пока никто ни разу не упомянул про VPS), что такой бэк-коннект и зачем нужно куда-то редиректить трафик?
 

BearSec

Platinum
20.04.2020
210
290
BIT
28
Можно перевести эту фразу с русского на русский)?
Непонятно, зачем для экзамена нужен VPS (сейчас прохожу WAPT, пока никто ни разу не упомянул про VPS), что такой бэк-коннект и зачем нужно куда-то редиректить трафик?
Если коротко то бэк-коннект = REVERSE SHELL - удаленная консоль ,когда мы выступаем в роли серверной части и вызываем коннект на себя. То есть это когда мы встречаем гостей у себя дома)И когда гости приходят - мы получаем доступ к их консоли.
Если хочется углубиться, то есть тема на форуме REVERSE или BIND shell? В чем разница?Какой выбрать?

Как писали выше VPS пригодится просто для удобства, у тебя будет белый IP на котором в пару кликов можно запустить nc в listen-mode (режим слушателя ,который предназначен для входящих соединений) и ловить обратное подключение.

Тоже самое можно организовать не имея VPS с белым IP, просто придется использовать прослойку в виде сервисов типа ngrok
 
  • Нравится
Реакции: Rekaptcha и clevergod

clevergod

Platinum
22.04.2017
119
675
BIT
20
Можно перевести эту фразу с русского на русский)?
Непонятно, зачем для экзамена нужен VPS (сейчас прохожу WAPT, пока никто ни разу не упомянул про VPS), что такой бэк-коннект и зачем нужно куда-то редиректить трафик?
VPS (англ. virtual private server) - экзамен еще не портирован на VPN, как с лабой и таски доступны снаружи (в интернете).
Reverse Shell (или Reverse TCP, или connect-back, или обратное подключение) — это схема взаимодействия с удалённым компьютером. При её использовании нужно, чтобы атакующий сначала запустил на своей машине сервер, при этом целевая машина будет играть роль клиента, который подключается к этому серверу, после чего атакующий получает доступ к оболочке целевого компьютера.
Будешь сдавать экзамен, просто помни об этом и все...
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!