• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

CTF Rekrute: Codeby like vuln lab

Qulan

Red Team
06.12.2020
171
509
BIT
349
Приветствую, друзья!

Хотел бы поделиться с вами своей , которую я клепал специально для Codeby, в знак признательности за помощь и поддержку. Но для начала...

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

Достаточно много я видел описаний вакансий, где как плюс учитывался навык разработки и поднятия уязвимых стендов (не знаю зачем, но это есть). Так вот, я решил овладеть этим навыком, и за одно создать первую коробку Codeby like (Звучит же?)

Почему Codeby like? Я думаю, что те, кто проходил курс по WAPT, знают, что таких заданий не встретить в принципе. Да, есть разные лабы их много, но таких как у ребят из Codeby - нет. Именно это и стало для меня целью - создать полезную коробку, максимально похожую на стиль тасков в курсе. И мне кажется, что вышло)))

Путь

У меня не было знаний и опыта в этом деле. Поэтому пришлось все с нуля учить, читать, клепать и прочее. Мои навыки веб разработки, которые я нарабатывал до рождения сына, мягко сказать, сошли "на нет". Пришлось все по новой... Как оказалось, из примеров в сети, создать лабу не так и сложно, если использовать уже заведомо уязвимые приложения, сервисы. Но мне хотелось максимально воссоздать идею команды Codeby, поэтому было принято решение все делать самому.

Раньше я считал, что для того, чтобы создать дырявое приложение нужно просто г*внокодить... но нет, г*внокодить тоже нужно уметь))) Я так долго возился, чтобы создать дырки, что порой уже думал, что все безнадежно. Но медленно и уверенно, я таки закончил))

Для кого?
  • В первую очередь, для команды Codeby, с благодарностью. От всей души, мужики) (у вас же только мужчины в команде?)
  • Для всех ребят, которые проходили курс по WAPT и уже соскучились по сумасшедшим таскам
  • Для ребят, которые только начали и подумывают пройти курс. Как по мне, эта лаба может стать у вас чем-то вроде пробника. Вы приблизительно поймете с чем придется столкнуться.
Сюжет

Вы рекрут в топовой ред тим команде, которая поставила бизнес на рельсы и постоянно в поисках новых кадров.

По информации от вашего инструктора, в контору обратился клиент, с целью сотрудничества в долгосрочной перспективе. Но готов дать контракт только после демонстрации навыков и талантов команды.

Известно, что клиент является топовым игроком на рынке онлайн образования, имеет функционирующую среднюю онлайн школу. По оценке наших аналитиков, рынок этот растет на 25-30% в год. Клиент уже занял львиную долю рынка на пост-советском пространстве и готов расширяться на запад. Но, понимая, какая там конкуренция, решил перестраховаться и провести оценку своей инфраструктуры. Потенциальным подрядчиком может стать ваша команда.

Цель:

Любым доступным способом достать "секретную информацию" с указанной клиентом цели.


Флаги:

В лабе присутствует система флагов, как же без нее. Всего их 5

Формат флагов:

Flag{значение} - будет финальным

Flag1user{значение}
Flag2user{значение}

Flag1secret{значение}
Flag2secret{значение}

Остальные флаги будут промежуточными и потребуются на разных этапах в виде ключей. Что это за ключи вам предстоит узнать самостоятельно.

Просьба:

Я очень прошу вас не публиковать райтапы на эту лабу. Мне в принципе все равно, я получил опыт. А вот ребята, которые будут решать ее по райтапам, не получат важных навыков и знаний, это важно.

Протестировано на VMware 16.1.2 (не тестировал на virtualbox)


PS. Это моя первая лаба, которую я писал сам. Да, мой код оставляет желать лучшего, но пока он такой. Поэтому прошу это принять во время критики. Если вы застряли и вам нужна подсказка - пишите в личку. Любой отзыв/конструктивная критика приветствуется.

Если моя работа найдет интерес и поддержку у сообщества, то я с удовольствием займусь второй лабой (на 2 хоста например) и в свободное время буду ее клепать. Если есть желающие присоединиться, то пишите, буду рад.
 
Последнее редактирование модератором:

Mogen

Red Team
27.08.2019
314
610
BIT
5
Звучит классно! @Qulan, спасибо за лабу! (y)(y)

А файлы .ovf всегда маленькие? 14 килобайт. Если сравнивать с .ova от KB-VULN-FINAL, то очень маленький. Я просто с VmWare уже давно не работал :)
 

Mogen

Red Team
27.08.2019
314
610
BIT
5
Звучит классно! @Qulan, спасибо за лабу! (y)(y)

А файлы .ovf всегда маленькие? 14 килобайт. Если сравнивать с .ova от KB-VULN-FINAL, то очень маленький. Я просто с VmWare уже давно не работал :)
Хотя это открытый формат виртуализации. Он поддерживается и Virtualbox, и VmWare.
 

Qulan

Red Team
06.12.2020
171
509
BIT
349
Звучит классно! @Qulan, спасибо за лабу! (y)(y)

А файлы .ovf всегда маленькие? 14 килобайт. Если сравнивать с .ova от KB-VULN-FINAL, то очень маленький. Я просто с VmWare уже давно не работал :)
в архиве три файла. Просто распакуй и тыцай open в варешке и выберай ovf. варешка все сама подтянет из других
 

INPC

Grey Team
21.08.2019
77
161
BIT
108
Как раз искал, чем заняться в выходной. Сейчас заценим, спасибо)
 

Shadow User

Green Team
10.07.2017
138
29
BIT
0
Сейчас будет протестировано на чистом QEMU.

Bash:
VMID="codeby"
VMSADDR="127.0.0.1"
VMSPORT="1109"
VMMPORT="1209"
VMPATH="/virtio"
VMISO=""
VMHDD="${VMPATH}/images/${VMID}-disk001.qcow2"
VMMON="telnet:${VMSADDR}:${VMMPORT},server,nowait"
VMPID="${VMPATH}/qemu/${VMID}.pid"
VMBRID="virbr0"
VMMAC="02:13:BC:00:00:09"

echo -e "Name: ${VMID} (${VMMAC})"
echo -e "Access: ${VMSADDR}:${VMSPORT}"
echo -e "Monitor: ${VMSADDR}:${VMMPORT}"

qemu-system-x86_64 -nodefaults \
-boot "order=c,menu=on" -monitor "${VMMON}" \
-smp "sockets=1,cores=1" -m 1G -vga qxl \
-cpu qemu64-v1 -machine "type=q35,accel=kvm" \
-name "${VMID}" -pidfile "${VMPID}" -daemonize \
-drive "if=ide,media=cdrom,file=${VMISO}" \
-drive "if=virtio,index=0,media=disk,file=${VMHDD}" \
-device "e1000,netdev=eth0,mac=${VMMAC}" \
-netdev "bridge,id=eth0,br=${VMBRID}" \
-spice "addr=${VMSADDR},port=${VMSPORT},disable-ticketing=on"
 
Последнее редактирование:
  • Не нравится
Реакции: GutsyHeart

GutsyHeart

Заблокирован
19.12.2021
9
-2
BIT
0
Сейчас будет протестировано на чистом QEMU
А что это за чистый QEMU ?
Ты имеешь ввиду виртуализацию QemuKVM, настроенную наподобие вот по этой статье ?

Какая-то странная конфигурация машины у тебя, как ты её запустить планируешь ?
Обычно используется программа virt-install и конфигурация машины выглядит иначе.
Вот пример:

Код:
virt-install \
-n Whonix-Gateway \
-r 1024 \
-enable-kvm \
--vcpus=2 \
--os-type=linux \
--os-variant=debian10 \
--hvm \
--network=bridge:br0,model=virtio \
--disk pool=default,size=100,/var/lib/libvirt/images/Whonix-Gateway.qcow2,bus=virtio,format=qcow2,cache=writeback \
--graphics spice,listen=0.0.0.0

Как при помощи bash запустить виртуальную машину на какой-то чистой виртуализации QEMU ?
 
  • Не нравится
Реакции: Shadow User

Shadow User

Green Team
10.07.2017
138
29
BIT
0
А что это за чистый QEMU ?
Ты имеешь ввиду виртуализацию QemuKVM, настроенную наподобие вот по этой статье ?

Какая-то странная конфигурация машины у тебя, как ты её запустить планируешь ?
Обычно используется программа virt-install и конфигурация машины выглядит иначе.
Вот пример:

Код:
virt-install \
-n Whonix-Gateway \
-r 1024 \
-enable-kvm \
--vcpus=2 \
--os-type=linux \
--os-variant=debian10 \
--hvm \
--network=bridge:br0,model=virtio \
--disk pool=default,size=100,/var/lib/libvirt/images/Whonix-Gateway.qcow2,bus=virtio,format=qcow2,cache=writeback \
--graphics spice,listen=0.0.0.0

Как при помощи bash запустить виртуальную машину на какой-то чистой виртуализации QEMU ?
И нафига мне гуй? Так же как и лишние обертки?
Чистый QEMU, это когда нет лишних прослоек!
 
  • Не нравится
Реакции: GutsyHeart

GutsyHeart

Заблокирован
19.12.2021
9
-2
BIT
0
И нафига мне гуй? Так же как и лишние обертки?
Чистый QEMU, это когда нет лишних прослоек!
Какой ещё гуй или другой #УЙ ?
Можешь писать на литературном языке ?

Предположу что ты не планировал использовать X-сервер, то есть тебе не нужна графика ?
В таком случае, в конфигурации твоей машины имеется противоречие. Ведь строчка
-spice "addr=${VMSADDR},port=${VMSPORT},disable-ticketing=on"
свидетельствует о том, что ты планируешь подключаться к рабочему столу виртуальной машины с помощью протокола spice на каком-то порту 1090. Ты же сам себе противоречишь.

KVM - это не прослойка. Но предоставлять свои доводы я не имею желания. На вкус и цвет - я лучше промолчу, но ни с какой другой не перепутаю коровью я мочу.
 
Последнее редактирование:
  • Не нравится
Реакции: Shadow User

GutsyHeart

Заблокирован
19.12.2021
9
-2
BIT
0
Достаточно много я видел описаний вакансий, где как плюс учитывался навык разработки и поднятия уязвимых стендов (не знаю зачем, но это есть).
А где ты видел эти вакансии ?
Ты похоже живёшь в каком-то сказочном мире.
В реальном мире видеть обьявление о том, что какой-то конторке нужен информационный безопасник и реально устроиться на работу - Абсолютно разные понятия.
Чувак, не нужно верить всему, что пишут в разделах вакансий.
 

Qulan

Red Team
06.12.2020
171
509
BIT
349
А где ты видел эти вакансии ?
Ты похоже живёшь в каком-то сказочном мире.
В реальном мире видеть обьявление о том, что какой-то конторке нужен информационный безопасник и реально устроиться на работу - Абсолютно разные понятия.
Чувак, не нужно верить всему, что пишут в разделах вакансий.
Прикинь, Я не просил советов и рекомендаций. Я живу в своем мире и он очень нравится.
 

mcfly

Green Team
08.09.2016
611
616
BIT
215
А где ты видел эти вакансии ?
Ты похоже живёшь в каком-то сказочном мире.
В реальном мире видеть обьявление о том, что какой-то конторке нужен информационный безопасник и реально устроиться на работу - Абсолютно разные понятия.
Чувак, не нужно верить всему, что пишут в разделах вакансий.
В Москве и в Питере полно вакансий на hh. в том числе и по пентесту в комманду.
 

mcfly

Green Team
08.09.2016
611
616
BIT
215
Под VirtualBox завелась Ubuntu. Нашел пока 1 флаг тока сегодня начал. Qulan 5+ за старания машинка нормас для начинающих.
 
  • Нравится
Реакции: Mogen и Qulan
Мы в соцсетях:

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