AppSECT.A.
378 subscribers
427 photos
9 videos
127 links
Блог Ильи Шмакова

geminishkv.tech

- AppSec Toolchain
- DevOps
- Процессы DevSecOps
- Infosec Risks
- PMI
- Кулуарный ИБ

AppSec Teamlead СберСпасибо @sberbank

Лидер findevsecops.ru @fintechassociation

Преподаватель @bmstu1830, @miptru
Download Telegram
Ну вы поняли 🤣🤣🤣

#lol #кулуарка
❤‍🔥4🔥3
🛠 Сценарий для Docker CIS & Image Audit

Салют,
Начнем неделю с практики, решил поделиться кастомом, так как ты сможешь его заюзать для триажа, конвертации отчетов.

Сценарий

- Определяет платформу Linux/macOS/другое и выбирает образ  как основной для аудита
- Создаёт структуру каталогов  ./audit_reports/{json,text,xlsx,odt} для результатов
- Запускает Trivy для образов, записывая JSON‑отчёты уязвимостей в  audit_reports/json/*.json
- Запускает контейнер  docker-bench-security  с маунтами и правами, выполняя аудит
- Если Python c  openpyxl  и  odfpy дополнительнос стоят рядом, то перебирает все JSON‑отчёты
- Сканирует Docker‑образы на CVE по заданному списку, включая docker/docker-bench-security, запускает по каждому инструмент анализ с перечнем уязвимых библиотек, их версий, идентификаторов уязвимостей, уровней критичности и статуса исправления
- Проводит конфигурационный аудит Docker‑хоста


Скрипт


set -euo pipefail

echo "Docker CIS & Image Audit"

command -v docker >/dev/null 2>&1 || { echo "no docker"; exit 1; }
docker info >/dev/null 2>&1 || { echo "docker daemon down"; exit 1; }

case "$(uname -s)" in
Linux) PLATFORM="Linux" ;;
Darwin) PLATFORM="macOS" ;;
*) PLATFORM="Other" ;;
esac

BENCH_IMAGE="${DOCKER_BENCH_IMAGE:-docker/docker-bench-security:latest}"
REPORTS_DIR="./audit_reports"
mkdir -p "${REPORTS_DIR}"/{json,text,xlsx,odt}

echo "Platform: ${PLATFORM}"
echo "Image: ${BENCH_IMAGE}"

docker image inspect "${BENCH_IMAGE}" >/dev/null 2>&1 || docker pull "${BENCH_IMAGE}"

if command -v trivy >/dev/null 2>&1; then
trivy image --format json --output "${REPORTS_DIR}/json/docker-bench-security.json" "${BENCH_IMAGE}" || true
for img in nginx:alpine python:3.11-alpine postgres:16-alpine; do
safe=$(echo "${img}" | sed 's/[:\/]/-/g')
trivy image --format json --output "${REPORTS_DIR}/json/${safe}.json" "${img}" || true
done
fi

run_bench() {
out="${REPORTS_DIR}/text/docker-bench-security-cis.txt"
docker run --rm \
--name "docker-bench-$(date +%s)" \
--cap-add audit_control \
--security-opt no-new-privileges \
--network host --pid host --userns host \
-e DOCKER_CONTENT_TRUST="${DOCKER_CONTENT_TRUST:-0}" \
-v /var/run/docker.sock:/var/run/docker.sock:ro \
-v /etc:/etc:ro -v /var/lib:/var/lib:ro -v /usr/bin:/usr/bin:ro \
"${BENCH_IMAGE}" 2>&1 | tee "${out}"
}

[ "${PLATFORM}" = "Linux" ] && run_bench || echo "CIS аудит в Linux/WSL"

if command -v python3 >/dev/null 2>&1; then
python3 << 'PY'
import json, os, sys
from pathlib import Path
try:
from openpyxl import Workbook
from odf.opendocument import OpenDocumentText
from odf.text import P
except ImportError:
sys.exit(0)

BASE = Path("./audit_reports")
for jf in (BASE / "json").glob("*.json"):
with jf.open() as f:
data = json.load(f)

xlsx = BASE / "xlsx" / (jf.stem + ".xlsx")
wb, ws = Workbook(), Workbook().active
ws = wb.active
ws.append(["Target","Type","VulnID","Severity","Status","Title"])
for r in data.get("Results", []):
t = r.get("Target","N/A")
for v in r.get("Vulnerabilities", []) + r.get("Misconfigurations", []):
ws.append([
t, r.get("Type","unknown"),
v.get("VulnerabilityID","N/A"),
v.get("Severity","UNKNOWN"),
v.get("Status","N/A"),
v.get("Title","N/A")[:80],
])
wb.save(xlsx)

odt = BASE / "odt" / (jf.stem + ".odt")
doc = OpenDocumentText()
doc.text.addElement(P(text=f"Report: {jf.name}"))
for r in data.get("Results", []):
doc.text.addElement(P(text=f"\nTarget: {r.get('Target','N/A')}"))
for i, v in enumerate(r.get("Vulnerabilities", []) + r.get("Misconfigurations", []), 1):
doc.text.addElement(P(text=f"[{i}] {v.get('VulnerabilityID','N/A')} ({v.get('Severity','UNKNOWN')}): {v.get('Title','N/A')}"))
doc.save(str(odt))
PY
fi

echo "Done -> ${REPORTS_DIR}/{json,text,xlsx,odt}"


#appsec #devsecops #specialty #toolchain #containersecurity #vulnmanagement #techsolution
🔥3🤯2🤣1
🏆 Испытания ФСТЭК России ГОСТ 71207 по SAST-анализаторам

Салюты,
Из первых рук,
Мы тут с моими ребятками участвовали в испытаниях по ГОСТ 71207 для SAST.

В итоге нас наградила Ирина Гефнер (ФСТЭК ) и Дмитрий Пономарев (ИСПРАН /Фобос) вот такой классной отчивкой в рамках открытой конференции ИСП РАН, которая проходит прямо сейчас.

Решил поделиться своим кайфом с тобой, двигаем ибешечку родной 🙏

#appsec #devsecop #specialty #toolchain #sast #conf #meetup #compliance #gost
🔥7❤‍🔥3
🛠🏆 AppSec Labs to pump yourself up Release v.1.3.0

Салюты,
Запилил для тебя классные лабораторки по AppSec, туда входит: Risk Analysis, обучение GitSCM, Docker и Compose, несколько SAST, SCA, DAST, Secret Detection и демо стенд, что бы потрогать руками эксплуатируемые уязвимости, подготовил разные уязвимые приложения, сделал скрипты для конвертации сработок от анализаторов в .xslx, .odt, .txt, SBOM, Orchestration, CI/CD, UML схемы процессов, etc.

Да, именно - это та самая практика, о которой ранее писал в тут и я прям хочу с тобой поделиться этим. Снова ты самым первым видишь релизы, которые я обкатываю в Бауманке, МФТИ и у себя в практике. Своим студентам и слушателям спасибо 😜


Подготовил также, на mkdocs material, удобный сайт с адаптивкой. Думаю тебе понравится, там User Friendly история, навигация и поиск по практическим материалам.

Intro

Это учебный репозиторий по прикладной безопасности приложений, в котором собраны лабораторные работы от базовых практик DevOps до AppSec. Во всех лабораторных, начиная с lab05 ты триажишь, разбираешься с уязвимостями и качаешь себя.

Курс ориентирован на инженеров, которые хотят научиться использовать git , CI/CD, контейнеризацию, сканеры уязвимостей, shell для сборок и натравливания на конкретные уязвимые приложения, а также сопутствующие сервисы в реальных мини‑проектах.


Структура

- lab01 — знакомство с базовыми инструментами и рабочим окружением, подготовка репозитория и базовой автоматизации
- lab02 - lab05  — мини‑проекты вокруг клиент–серверных приложений и контейнерной инфраструктуры, настройка CI/CD, работа с Docker и Compose
- lab06 – lab08  — практики аудита контейнеров, SAST/SCA‑сканирование, DAST и анализ отчётов с последующей агрегацией
- lab09 - оркестрация и Quality Gate, UMLи т.д.
– lab10  — проект по оценке рисков ИБ, интеграции результатов сканирования и оформлению отчётов


Дополнения

- приложение - описание команд, пакетов, софта по утилитам с линками на них
- cheatsheet по Docker, GitHub CLI, GitSCM, .gitignore, .dockerignore
- примеры нетиповых и тривиальных кейсов ИБ,
- описание лицензий ПО
- OWASP TOP 10 с основными материалами по нему и CI/CD Risks


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

Stay Tuned ;)

#appsec #devsecops #roadmap #specialty #toolchain #techsolution #gost #paper #course #reco #sast #sca #dast #sbom #containersecurity #secrets #riskanalys #techsolution
🔥142
🤔 Итоги года 2025 сообщества FinDevSecOps

Салют,
Тяжелая неделька, да?
Давай, под конец всего этого, я поделюсь с тобой итогами, которые мы обсуждили у нас на конфе сообщества findevsecops.ru. Маленький преролл я описывал тут.

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


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

Также мы сделали wiki и планируем ее пошарить при поддержке ребят из Swordfish Security, Positive Technology и т.д. Приложил пару своих материалов из презы, которую показывал ребятам.

Основной и ключевой поинт в том, что мы пилим дает плоды как тут для меня, так и помогает делать нормальные описанные процессы с корректировками на поведение команды и изменяющиеся риски, карты сертификации под ГОСТ 56939, а также шерить опыт, знания по AppSec.


А официальная часть хорошо описана у @fintechassociation АФТ тут.

#appsec #devsecops #pmi #specialty #toolchain #vulnmanagement #techsolution #meetup #кулуарка
🔥5🤣2
Салюты,
До нового года 16 дней.
Поэтому актуальное 🫡🙃

#lol #кулуарка
🤣7🤯4🔥3
This media is not supported in the widget
VIEW IN TELEGRAM
🔥156
🛠 Карта DevSecOps Toolchain

Салют,
Интересная новость, я тут в продолжение этой темы, сейчас допиливаю карту инструментов, для тебя заливаю преролл, что бы ты смог поближе посмотреть на обновление в черновике, планирую закинуть для тебя инфо в начале следующей неделе 🙏

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

Инфа по карте инструментов будет более приятная, черновик можешь почекать тут.

Планирую зарелизить до конца года в репозиторий FDSO на github.com и буду рад тебя пригласить к pull requeste для корректировок и развития этой карты, шеринга опыта.

Поэтому stay tuned 😜

#toolchain #appsec #devsecops #specialty #compliance #gost #vulnmanagement #techsolution
❤‍🔥8🔥7
До нового года 13 дней.
Жизненное для всех нас 🫡

#lol #кулуарка
🤣13🤯3
AppSECT.A.
This media is not supported in the widget
VIEW IN TELEGRAM
4
🛠🏆 AppSec Labs to pump yourself up Release v.1.4.0

Салюты,
Интересный апдейт для тебя про который хотел бы рассказать, я тут недавно решил покастимь еще внешку для лабок и обновить данные по нему. Мы тут с тобой смотрели первый релиз и я буду продолжать дорабатывать, дальше я планирую допилить лабу №9, да сделать еще 5 лабок по CI. Далее я буду делить их по блокам и планирую довести до 40 лаб, что бы были каждые по своему направлению и разделены по группам для твоего удобства.

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

Что интересного в новом релизе?

- Переработана структура репозитория
- Исправлены неучтенные материалы
- Изменены пути для лабораторных работ, дополнительных материалов и примеров кейсов ИБ (планирую также долить далее тар архивы имеджей и тд, для лабки по докеру)
- Изменены shields и проставлены линки для них на репу, сурсы
- Кастомизирован пайп под лабораторные работы и их содержание, ты сможешь почекать его и посмотреть также как правильно выстраивать сам пайп для сборки через GitHub Actions
- Доработаны стили для читаемости отображаемого кода и clipboard
- Проработан адаптив и сайзинг под широкие экраны
- Допилена контентная часть
- Подсказки и приложения дополнены
- и тд


Итого: у тебя есть отличная возможность использовать красиво стилизованые лабки, с понятным и удобным интерфейсом, адаптивом, морфолгическим поиском и обьяснениям как и что делать по инструментам.

Stay Tuned 😉

#appsec #devsecops #roadmap #specialty #toolchain #techsolution #gost #paper #course #reco #sast #sca #dast #sbom #containersecurity #secrets #riskanalys #techsolution
🔥6❤‍🔥5
До нового года 9 дней.
Несомненно 🤣

#lol #кулуарка
🤣8
Салют, между тем я скоро выпущу классный релиз по карте инструментов AppSec, а пока до нового года 5 дней.

Молимся на «святую корову» 🤣

#lol #кулуарка
🔥8
🛠 Карта DevSecOps Toolchain Release 2.0.0

Салюты,
Сейчас буду делиться снова крупным релизом с тобой, я тебе ранее рассказывал про это вот тут.

DevSecOps Toolchain Map — это интерактивная карта инструментов для DevSecOps и тулов AppSec, помогающая архитекторам, безопасникам и разработчикам осознанно собирать и эволюционировать свой security‑toolchain, а не «тащить всё подряд». Проект фокусируется на практическом применении: от минимального набора инструментов «в одного человека» до комплексных ландшафтов в крупных организациях.


С кайфом представляю тебе карту инструментов по DevSecOps направлению где более 480 инструментов как проприетарного ПО, так и open-source проектов с прямыми линками на них. Сам репозиторий можешь почекать тут.

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


Пилю в рамках FinDevSecOps @fintechassociation сообщества, как лидер и по своему основному направлению. Также как я опубликую в офф репозитории FDSO ты тоже узнаешь об этом первым.

Также, ты можешь принять участие в этом проекте и я буду рад видеть твои pull requeste.

Классной и отличительной особенностью нового релиза является:
- полностью переработанная версия и стилизация на базе mkdocs в описанном
релизе v2.0.0

- вот
тут
ты можешь посмотреть на карту и скачать ее в PDF для себя, она автоматизирована и при изменении состава карты - актуализируется
- вот
тут
ты можешь покликать интерактивную карту инструментов и посмотреть какие есть описанные данные
- вот
тут
ты можешь воспользоваться картой с свободным поиском и по категориям
- вот
тут
вывел список всех основных лицензий, которые считаю важными для ознакомления и ты можешь почитать у меня в канале про них #licenses
- привел список православных, зарубежных вендоров и крупных open-source проектов
-
справка
по типам инструментов


Почитай внимательно о проекте и особенно о правилах и нашем кодексе.

Проект разрастается и совсем скоро ты увидишь ввклад крупных компаний и их вовлечение в рамках сообщества FDSO.

Поэтому stay tuned 😜

#toolchain #appsec #devsecops #specialty #compliance #gost #vulnmanagement #techsolution
🔥8❤‍🔥1