Главное об OSCP. Как сдавать один из самых сложных экзаменов по безопасности — «Хакер»

Главное об OSCP. Как сдавать один из самых сложных экзаменов по безопасности — «Хакер» Сертификаты

Cert-manager

— специальный проект для Kubernetes, представляющий собой набор CustomResourceDefinitions (отсюда

на минимально поддерживаемую версию K8s — v1.12) для конфигурации CA (удостоверяющих центров) и непосредственного заказа сертификатов. Установка CRD в кластер тривиальна и

к применению одного YAML-файла:

№1. самоподписанный сертификат

Ресурс Issuer будет выглядеть так:

apiVersion: cert-manager.io/v1alpha2
kind: Issuer
metadata:
  name: selfsigned
spec:
  selfSigned: {}

А чтобы выпустить сертификат, необходимо описать ресурс

Certificate

, где указывается, как произвести выпуск (см. раздел

issuerRef

ниже) и где размещен приватный ключ (поле

secretName

). После этого в Ingress потребуется сослаться на этот ключ (см. раздел

tlsspec

№3. wildcard le с валидацией через dns


Усложним задачу, выписав сертификат сразу на все поддомены сайта и воспользовавшись на этот раз DNS-проверкой (через CloudFlare).

Для начала получим в панели управления CloudFlare токен для работы через API:

  1. Profile → API Tokens → Create Token.
  2. Выставляем права доступа следующим образом:
  3. Копируем полученный после сохранения токен (например: y_JNkgQwkroIsflbbYqYmBooyspN6BskXZpsiH4M).

Создадим Secret, в котором будет храниться этот токен, и сошлемся на него в Issuer:

№4. использование специальных аннотаций ingress


Помимо прямого пути по созданию сертификатов в cert-manager есть возможность воспользоваться компонентом под названием

и явно не создавать ресурсы

Certificate

. Идея заключается в том, что с помощью специальных аннотаций Ingress’а сертификат будет автоматически заказан с помощью указанного в них

Issuer

. В результате получается примерно следующий ресурс Ingress’а:

Перед лабой

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

Про сертификаты:  Альфалот: функционал, преимущества, как пользоваться

Что тебе пригодится? Во-первых, и обучение, и экзамен будут проходить на Kali Linux, и было бы неплохо в нем разобраться. Если вдруг не сталкивался с ним, не пугайся: это просто дистрибутив на основе Debian с кучей всевозможного хакерского софта, который может пригодиться в работе.

Не все работает из коробки, не все оптимизировано, но это популярный выбор, который помогает быстро получить доступ к необходимым инструментам. Работа с этим дистрибутивом мало чем отличается от работы с любым другим сортом Debian (вроде Ubuntu), поэтому описывать ее подробно не имеет смысла. Если ты уже имел дело с Linux, то, несомненно, разберешься. Если нет, то стоит начать с азов Linux.

Что нужно еще? (Если ты уже отличаешь LFI от LPE, то можно не читать этот список.)

  • Иметь хотя бы базовые знания о том, как работает компьютер: как взаимодействуют процессор и память, IO, буфер, куча и так далее.
  • Иметь представление об устройстве ОС (Linux и Windows) и ориентироваться в них, быть знакомым с их командной оболочкой.
  • Уметь программировать, опять же хотя бы на уровне простых скриптов.
  • Уметь пользоваться основными инструментами: Nmap, netcat, tcpdump (Wireshark), Metasploit, SearchSploit, gobuster (wfuzz, fuff) и прочими.
  • Знать, какие бывают атаки, уязвимости и способы их эксплуатации.
  • Знать, как повышать привилегии на атакованной и взломанной машине (LPE, privesc).

С теорией, уверен, ты справишься сам. Переходим к самому интересному — где практиковаться.

Первое место, где можно получить практические навыки, приближенные к боевым, — это сервис Hack The Box. Сервис предоставляет набор машин с уязвимостями и позволяет отточить полученные в теории навыки. Есть платная и бесплатная версии. На этом сервисе много разных машин, но в сети товарищ TJnull составил и пополняет список OSCP-like-машин.

Про сертификаты:  Installing and configuring SSL on Postfix/Dovecot mail server - SSL Certificates -

Большинство этих машин имеют статус retired («на пенсии») и доступны только в платной версии, но оно того стоит.

Еще одна платформа для практики — VulnHub. Сервис предоставляет виртуальные машины с набором уязвимостей. Их можно развернуть у себя и развлекаться сколько угодно. В документе, который кто-то добрый выложил в Google Drive, есть набор машин в стиле OSCP из этого сервиса. Некоторые машины старые, но и сам OSCP использует далеко не новые уязвимости.

Вносит неоценимый вклад в обучение еще один житель сети — IppSec. По всем машинам из HTB он записывает подробное видео, где демонстрирует разные техники: recon, enumeration, privesc и прочие. Его главное преимущество для меня в том, что он предлагает несколько вариантов добиться одного и того же результата. Например: можно просканировать порты при помощи Nmap или быстро написать свой скрипт на Bash или Python, для перечисления на вебе использовать не только привычный dirb, но и альтернативные тулзы — gobuster, fuff, wfuzz — или написать быстро свою.

Есть еще масса других сервисов: root-me, Web Security Academy разработчиков Burp, Hack this site и другие, их можно найти в поисковике.

Общая рекомендация: читай райтапы, смотри, как делают другие, учись и практикуйся, практикуйся, практикуйся. И пробуй все машины ломать без использования «Метасплоита». Ищи эксплоиты, правь, разбирайся, что, как и почему именно так работает.

Когда поломаешь все машины из списка и почувствуешь себя настоящим надмозгом, настанет пора покупать PWK.

Подготовка

Огромная доля вопросов касается подготовки. Что смотреть, что качать (ну кроме очередного гоблина-мага в WoW), где практиковаться? В общем, неопределенность полная, как и во многих жизненных вопросах.

Про сертификаты:  SSL-сертификат в SEO для ранжирования сайтов

Вместо заключения

Путём несложных манипуляций с CRD мы научились выписывать автопродляемые, самоподписанные и бесплатные SSL-сертификаты от проекта Let’s Encrypt для доменов сайтов, запущенных в рамках Ingress’ов в Kubernetes-кластерах.

В статье приведены примеры решения наиболее частых в нашей практике задач. Однако функции cert-manager не ограничиваются описанными выше возможностями. На сайте утилиты можно найти примеры работы с другими сервисами — например, связка с Vault или же использование внешних выпускающих центров (issuers).

Оцените статью
Мой сертификат
Добавить комментарий