PP_CBR_ver.4.0.pdf
2.7 MB
Новая редакция Профиля Защиты от ЦБ РФ
Всем привет!
Банк России опубликовал новую редакцию Профиля защиты приложений для финансовых организаций (в приложении).
В обновленном документе исправлено большинство недочетов прошлого издания.
Основной лейтмотив обновления - синхронизация Профиля защиты с ГОСТ Р 56939-2024.
Наш обзор изменений Профиля защиты можно почитать здесь
И этот пост закрывает наш рабочий 2025 год!
Еще раз поздравляем всех с Наступающим!!!
Всем привет!
Банк России опубликовал новую редакцию Профиля защиты приложений для финансовых организаций (в приложении).
В обновленном документе исправлено большинство недочетов прошлого издания.
Основной лейтмотив обновления - синхронизация Профиля защиты с ГОСТ Р 56939-2024.
Наш обзор изменений Профиля защиты можно почитать здесь
И этот пост закрывает наш рабочий 2025 год!
Еще раз поздравляем всех с Наступающим!!!
👍12🔥5❤4
Vulnerable MCP Servers Lab
Всем привет!
По ссылке доступен GitHub-репозиторий, в котором собран набор из 9 лабораторных работ от AppSecco, посвященных небезопасной реализации MCP.
Внутри можно найти:
🍭 Filesystem Workspace Actions
🍭 Indirect Prompt Injection (Remote MCP over HTTP+SSE)
🍭 Indirect Prompt Injection
🍭 Malicious Code Execution
🍭 Malicious Tools и не только
Для каждой лабораторной работы есть
Всем привет!
По ссылке доступен GitHub-репозиторий, в котором собран набор из 9 лабораторных работ от AppSecco, посвященных небезопасной реализации MCP.
Внутри можно найти:
🍭 Filesystem Workspace Actions
🍭 Indirect Prompt Injection (Remote MCP over HTTP+SSE)
🍭 Indirect Prompt Injection
🍭 Malicious Code Execution
🍭 Malicious Tools и не только
Для каждой лабораторной работы есть
README.md, в котором описаны требования для запуска и что необходимо сделать для того, чтобы ее «пройти».GitHub
GitHub - appsecco/vulnerable-mcp-servers-lab: A collection of servers which are deliberately vulnerable to learn Pentesting MCP…
A collection of servers which are deliberately vulnerable to learn Pentesting MCP Servers. - appsecco/vulnerable-mcp-servers-lab
👍5
CrashLoopBackOff и как с ним бороться
Всем привет!
Если вы работали с Kubernetes, то, скорее всего, хотя бы раз видели такое вот сообщение:
Да, для опытных специалистов это уже не проблема. А всем остальным может быть интересна вот эта статья, в которой Автор разбирает эту ошибку.
В статье есть информация о том:
🍭 Что это такое и как оно работает
🍭 Как искать ошибки, приводящие к этому состоянию
🍭 Наиболее частые причины возникновения
🍭 Как исправить это состояние и сделать так, чтобы все работало
Да, в статье вы не найдете каких-либо откровений, но она может быть полезна для тех, кто только начинает знакомиться с миром контейнеризации и Kubernetes в частности.
Пояснения, примеры и общий checklist по поиску ошибок – все это есть в статье.
Всем привет!
Если вы работали с Kubernetes, то, скорее всего, хотя бы раз видели такое вот сообщение:
CrashLoopBackOff.Да, для опытных специалистов это уже не проблема. А всем остальным может быть интересна вот эта статья, в которой Автор разбирает эту ошибку.
В статье есть информация о том:
🍭 Что это такое и как оно работает
🍭 Как искать ошибки, приводящие к этому состоянию
🍭 Наиболее частые причины возникновения
CrashLoopBackOff🍭 Как исправить это состояние и сделать так, чтобы все работало
Да, в статье вы не найдете каких-либо откровений, но она может быть полезна для тех, кто только начинает знакомиться с миром контейнеризации и Kubernetes в частности.
Пояснения, примеры и общий checklist по поиску ошибок – все это есть в статье.
ProdOps Hub
Kubernetes CrashLoopBackOff Error: Ultimate Guide to Debug and Fix 2026
Kubernetes CrashLoopBackOff Error: Ultimate Guide to Debug and Fix 2026 explaing with a realtime story based example on troubleshooting and fixing the crashloopbackoff error
🔥5
A2A Security Scanner
Всем привет!
Безопасность Agent-to-Agent взаимодействий становится все более и более актуальной задачей.
Если что-то «пойдет не так», то могут случиться разные последствия: кража ценной информации, повышение привилегий, подмена артефактов, prompt-injection атаки и многое другое.
Для анализа A2A можно воспользоваться open-source решением от Cisco – A2A Security Scanner.
Из основных функций можно выделить:
🍭 Множество специализированных анализаторов: YARA-правила, идентификация угроз с LLM, использование эвристики и не только
🍭 Покрытие множества A2A угроз
🍭 Наличие API и CLI для реализации интеграций и не только
Подробнее со сканером (в том числе с видами угроз, которые он может идентифицировать) можно ознакомиться в GitHub-репозитории и в статье от Cisco, где они его анонсировали.
Всем привет!
Безопасность Agent-to-Agent взаимодействий становится все более и более актуальной задачей.
Если что-то «пойдет не так», то могут случиться разные последствия: кража ценной информации, повышение привилегий, подмена артефактов, prompt-injection атаки и многое другое.
Для анализа A2A можно воспользоваться open-source решением от Cisco – A2A Security Scanner.
Из основных функций можно выделить:
🍭 Множество специализированных анализаторов: YARA-правила, идентификация угроз с LLM, использование эвристики и не только
🍭 Покрытие множества A2A угроз
🍭 Наличие API и CLI для реализации интеграций и не только
Подробнее со сканером (в том числе с видами угроз, которые он может идентифицировать) можно ознакомиться в GitHub-репозитории и в статье от Cisco, где они его анонсировали.
GitHub
GitHub - cisco-ai-defense/a2a-scanner: Scan A2A agents for potential threats and security issues
Scan A2A agents for potential threats and security issues - cisco-ai-defense/a2a-scanner
USVL: визуализация атак и моделей угроз
Всем привет!
Universal Security Visualization Library (USVL) – open-source проект, который генерирует схемы на основании предоставленной конфигурации.
Он может «отрисовать»:
🍭 Attack Trees. Иерархические диаграммы сценария атаки
🍭 Attack Graph. Визуализация атаки с точки зрения сети
🍭 Threat Modelling. Диаграммы потоков данных, учитывающие анализ, реализованный с использованием STRIDE
Если это не хватает, то допустимо создание собственных диаграмм («из коробки» доступны формы для использования и шаблоны).
В качестве «входных данных» USVL может работать с TOML, YAML и JSON. Полученные результаты можно выгружать в Mermaid-формате.
Подробнее с возможностями инструмента, вариантами его запуска и эксплуатации можно ознакомиться в GitHub-репозитории проекта.
Всем привет!
Universal Security Visualization Library (USVL) – open-source проект, который генерирует схемы на основании предоставленной конфигурации.
Он может «отрисовать»:
🍭 Attack Trees. Иерархические диаграммы сценария атаки
🍭 Attack Graph. Визуализация атаки с точки зрения сети
🍭 Threat Modelling. Диаграммы потоков данных, учитывающие анализ, реализованный с использованием STRIDE
Если это не хватает, то допустимо создание собственных диаграмм («из коробки» доступны формы для использования и шаблоны).
В качестве «входных данных» USVL может работать с TOML, YAML и JSON. Полученные результаты можно выгружать в Mermaid-формате.
Подробнее с возможностями инструмента, вариантами его запуска и эксплуатации можно ознакомиться в GitHub-репозитории проекта.
GitHub
GitHub - vulnex/usecvislib: Universal Security Visualization library
Universal Security Visualization library. Contribute to vulnex/usecvislib development by creating an account on GitHub.
❤4🔥4
ESP Kubernetes Reference Implementation
Всем привет!
Endpoint State Policy (ESP) позволяет анализировать кластеры Kubernetes на предмет соответствия требованиям.
Это нечто вроде OpenSCAP, только вместо XML используются собственные DSL-политики.
Состоит он из нескольких основных компонентов: Orchestrator (получает политики, агрегирует аттестации-свидетельства), Controller Agent (работает с cluster-scoped политиками) и Daemon Agent (работает с node-scoped политиками).
ESP поддерживает несколько «форматов анализа»:
🍭
🍭
🍭
🍭
🍭
Да, это не то решение, которое «показывает результат сразу после запуска».
Однако, обширная и гибкая функциональность может быть очень полезна при проведении аудитов соответствия кластера Kubernetes требованиям.
Подробности о работе ESP можно прочесть в GitHub-репозитории проекта.
Всем привет!
Endpoint State Policy (ESP) позволяет анализировать кластеры Kubernetes на предмет соответствия требованиям.
Это нечто вроде OpenSCAP, только вместо XML используются собственные DSL-политики.
Состоит он из нескольких основных компонентов: Orchestrator (получает политики, агрегирует аттестации-свидетельства), Controller Agent (работает с cluster-scoped политиками) и Daemon Agent (работает с node-scoped политиками).
ESP поддерживает несколько «форматов анализа»:
🍭
k8s_resource. Анализ манифестов API ресурсов Kubernetes🍭
file_metadata. Исследует аттрибуты файлов с использованием stat()🍭
file_content. Позволяет анализировать содержимое файлов через работу со строками (содержит, начинается, совпадает и т.д.)🍭
json_record. Анализ конфигурационных файлов формата JSON🍭
tcp_listener. Проверяет находится ли порт в статусе listen (через чтение /proc/net/tcp) и не толькоДа, это не то решение, которое «показывает результат сразу после запуска».
Однако, обширная и гибкая функциональность может быть очень полезна при проведении аудитов соответствия кластера Kubernetes требованиям.
Подробности о работе ESP можно прочесть в GitHub-репозитории проекта.
GitHub
GitHub - scanset/K8s-ESP-Reference-Implementation
Contribute to scanset/K8s-ESP-Reference-Implementation development by creating an account on GitHub.
⚡2
Gixy-Next: анализ конфигурации Nginx
Всем привет!
Gixy-Next – open-source утилита, которая позволяет анализировать
Является активно поддерживаемым fork Gixy от Яндекса.
Gixy-Next может помочь найти более 20 некорректных настроек, включая:
🍭 Duplicate Content Type
🍭 External DNS Resolvers
🍭 Host Header Spoofing
🍭 Allow Without Deny
🍭
Для каждой проверки приводится описание «почему это плохо», пример некорректной конфигурации и пример того, как это сделать правильно.
Подробнее о проекте можно прочесть в GitHub-репозитории или в официальной документации.
Всем привет!
Gixy-Next – open-source утилита, которая позволяет анализировать
nginx.conf на предмет некорректных настроек по информационной безопасности.Является активно поддерживаемым fork Gixy от Яндекса.
Gixy-Next может помочь найти более 20 некорректных настроек, включая:
🍭 Duplicate Content Type
🍭 External DNS Resolvers
🍭 Host Header Spoofing
🍭 Allow Without Deny
🍭
error_log Set To Off и не толькоДля каждой проверки приводится описание «почему это плохо», пример некорректной конфигурации и пример того, как это сделать правильно.
Подробнее о проекте можно прочесть в GitHub-репозитории или в официальной документации.
GitHub
GitHub - MegaManSec/Gixy-Next: Gixy-Next: NGINX Configuration Security Scanner & Performance Checker
Gixy-Next: NGINX Configuration Security Scanner & Performance Checker - MegaManSec/Gixy-Next
👍8
Написание eBPF-программы
Всем привет!
Для знакомства с технологией нет ничего лучше, чем «потрогать ее самому».
Поэтому, если вы хотели познакомиться с eBPF программами, но не знали с чего начать – ebpf.party может стать той самой «отправной точкой».
Это нечто вроде лабораторных работ, где есть все, что нужно – от необходимого теоретического минимума до интерактивной платформы, в которой можно запускать наработки.
ebpf.party включает в себя следующие разделы:
🍭 Introduction
🍭 Concept familiarization
🍭 Stateful eBPF
🍭 Kernel probes
В каждом разделе описано что необходимо реализовать и предоставлен фрагмент кода с комментариями для лучшего понимания происходящего.
Чтобы было чуть проще, в самом задании приводятся примеры, ссылки на материалы по теме и «наводящие вопросы».
Для всех задач есть автоматическая проверка корректности – можно будет сразу понять все ли верно сделано или надо что-то изменить.
Самое «то» для погружения в eBPF! Рекомендуем!
Всем привет!
Для знакомства с технологией нет ничего лучше, чем «потрогать ее самому».
Поэтому, если вы хотели познакомиться с eBPF программами, но не знали с чего начать – ebpf.party может стать той самой «отправной точкой».
Это нечто вроде лабораторных работ, где есть все, что нужно – от необходимого теоретического минимума до интерактивной платформы, в которой можно запускать наработки.
ebpf.party включает в себя следующие разделы:
🍭 Introduction
🍭 Concept familiarization
🍭 Stateful eBPF
🍭 Kernel probes
В каждом разделе описано что необходимо реализовать и предоставлен фрагмент кода с комментариями для лучшего понимания происходящего.
Чтобы было чуть проще, в самом задании приводятся примеры, ссылки на материалы по теме и «наводящие вопросы».
Для всех задач есть автоматическая проверка корректности – можно будет сразу понять все ли верно сделано или надо что-то изменить.
Самое «то» для погружения в eBPF! Рекомендуем!
🔥5
Clang Hardening Guide
Всем привет!
По ссылке можно ознакомиться с рекомендациями по настройке компиляторов C и C++ для того, чтобы сделать их более безопасными.
Материал структурирован по разделам:
🍭 General Protections
🍭 Defenses Against Stack-Based Memory Corruption
🍭 Defenses Against Code-Reuse Attacks (ROP/JOP)
🍭 Defenses Against Speculative Execution Attacks
Для каждого раздела приведены примеры настроек, которые можно использовать, и описания того, что эти настройки делают.
Еще одним полезным материалом по теме могут послужить рекомендации от OpenSSF – Compiler Options Hardening Guide for C and C++.
Всем привет!
По ссылке можно ознакомиться с рекомендациями по настройке компиляторов C и C++ для того, чтобы сделать их более безопасными.
Материал структурирован по разделам:
🍭 General Protections
🍭 Defenses Against Stack-Based Memory Corruption
🍭 Defenses Against Code-Reuse Attacks (ROP/JOP)
🍭 Defenses Against Speculative Execution Attacks
Для каждого раздела приведены примеры настроек, которые можно использовать, и описания того, что эти настройки делают.
Еще одним полезным материалом по теме могут послужить рекомендации от OpenSSF – Compiler Options Hardening Guide for C and C++.
Quarkslab
Clang Hardening Cheat Sheet - Ten Years Later - Quarkslab's blog
Ten years ago, we published a Clang Hardening Cheat Sheet. Since then, both the threat landscape and the Clang toolchain have evolved significantly. This blog post presents the new mitigations available in Clang to improve the security of your applications.
❤2👍2🌚1
Supply Chain атака на CodeBuild
Всем привет!
Потрясающая статья от Wiz, в которой ребята делятся опытом того, как им удалось получить административные права от репозитория
Сама суть атаки достаточно проста – сделать PR, который запустит процесс сборки и предоставит атакующим секреты.
Но дьявол, как обычно, в деталях.
Найти несколько Public CodeBuild Projects оказалось не сложно: информация об их настройках доступна всем.
Нюанс в том, что есть
Одним из таких фильтров является
Казалось бы, это конец… Но нет! Присмотревшись к тому, как именно формируется это поле, команда поняла, что внутри обычная
И именно этим воспользовалась команда. Как именно – крайне рекомендуем прочитать – очень красиво и элегантно!
В итоге запустить сборку и получить административный доступ к репозиторию получилось. Да – push в main, принятие любых PR и т.д.
Таким образом, все пользователи
Но все хорошо, что хорошо кончается. Wiz сообщили об этой находке в AWS и проблема была устранена.
На всякий случай в статье приведен перечень действий, которые позволят повысить уровень защищенности при использовании CodeBuild.
Всем привет!
Потрясающая статья от Wiz, в которой ребята делятся опытом того, как им удалось получить административные права от репозитория
aws/aws-sdk-js-v3.Сама суть атаки достаточно проста – сделать PR, который запустит процесс сборки и предоставит атакующим секреты.
Но дьявол, как обычно, в деталях.
Найти несколько Public CodeBuild Projects оказалось не сложно: информация об их настройках доступна всем.
Нюанс в том, что есть
webhook filters, которые определяют некоторый набор условий, что должны быть выполнены для запуска процесса сборки, в том числе, при реализации PR.Одним из таких фильтров является
ACTOR_ID - идентификатор пользователя, которому дозволено это реализовать.Казалось бы, это конец… Но нет! Присмотревшись к тому, как именно формируется это поле, команда поняла, что внутри обычная
regex-проверка. При этом проверка не на полное совпадение строки, а лишь на вхождение!И именно этим воспользовалась команда. Как именно – крайне рекомендуем прочитать – очень красиво и элегантно!
В итоге запустить сборку и получить административный доступ к репозиторию получилось. Да – push в main, принятие любых PR и т.д.
Таким образом, все пользователи
aws/aws-sdk-js-v3 могли бы получать очень «интересные обновления».Но все хорошо, что хорошо кончается. Wiz сообщили об этой находке в AWS и проблема была устранена.
На всякий случай в статье приведен перечень действий, которые позволят повысить уровень защищенности при использовании CodeBuild.
wiz.io
CodeBreach: Supply Chain Vuln & AWS CodeBuild Misconfig | Wiz Blog
Wiz Research discovered CodeBreach, a critical vulnerability that risked the AWS Console supply chain. Learn how to secure your AWS CodeBuild pipelines.
❤4
Prompt Injection Attack Classification System
Всем привет!
Prompt Injection Attack Classification System – проект, в котором Автор классифицировал и систематизировал Prompt Injection-атаки.
Представлены 4 основные категории:
🍭 Attack Intents. Описывают цели – извлечение данных, реализация отказа в обслуживании, отравление данных и т.д.
🍭 Attack Techniques. Способы атак – прямые или «косвенные» инъекции
🍭 Attack Evasions. Методы обфускации, которые можно использовать для сокрытия атак
🍭 Attack Inputs. Входные точки для совершения атаки – API-запрос, загрузка файлов, взаимодействие с чат-ботом и т.д.
Всего получилось 107 «сущностей»: 18 Intents, 28 Techniques, 51 Evasion и 10 Inputs.
Каждая «карточка» интерактивна – нажав на нее можно получить дополнительную информацию.
Всем привет!
Prompt Injection Attack Classification System – проект, в котором Автор классифицировал и систематизировал Prompt Injection-атаки.
Представлены 4 основные категории:
🍭 Attack Intents. Описывают цели – извлечение данных, реализация отказа в обслуживании, отравление данных и т.д.
🍭 Attack Techniques. Способы атак – прямые или «косвенные» инъекции
🍭 Attack Evasions. Методы обфускации, которые можно использовать для сокрытия атак
🍭 Attack Inputs. Входные точки для совершения атаки – API-запрос, загрузка файлов, взаимодействие с чат-ботом и т.д.
Всего получилось 107 «сущностей»: 18 Intents, 28 Techniques, 51 Evasion и 10 Inputs.
Каждая «карточка» интерактивна – нажав на нее можно получить дополнительную информацию.
Секреты в GitLab репозиториях
Всем привет!
Автор проанализировал 5 600 000 GitLab-репозиториев на предмет наличия секретов в нихи попутно заработал $9 000 на bug bounty.
Если кратко, то использовался весьма стандартный подход:
🍭 Получение общедоступных репозиториев через
🍭 Запуск
🍭 Анализ полученных результатов
В итоге Автору удалось найти 17 430 секретов, большинство из которых относилось к GCP, MongoDB, TelegramBotToken и OpenAI.
Подробнее с результатами исследования, включая способ автоматизации отправки отчетов на BugBounty-программы, можно ознакомиться в статье.
Всем привет!
Автор проанализировал 5 600 000 GitLab-репозиториев на предмет наличия секретов в них
Если кратко, то использовался весьма стандартный подход:
🍭 Получение общедоступных репозиториев через
/api/v4/projects🍭 Запуск
Trufflehog с параметрами --only-verified, --allow-verification-overlap🍭 Анализ полученных результатов
В итоге Автору удалось найти 17 430 секретов, большинство из которых относилось к GCP, MongoDB, TelegramBotToken и OpenAI.
Подробнее с результатами исследования, включая способ автоматизации отправки отчетов на BugBounty-программы, можно ознакомиться в статье.
Trufflesecurity
Scanning 5.6 million public GitLab repositories for secrets ◆ Truffle Security Co.
I scanned every public GitLab Cloud repository (~5.6 million) with TruffleHog, found over 17,000 verified live secrets, and earned over $9,000 in bounties along the way.
🔥5
Игровой сервер в Kubernetes
Всем привет!
Есть такой сервис – Agones. Он позволяет запускать серверы для игр (dedicated game servers) в Kubernetes и управлять ими.
Автор статьи решил разобраться в том, как им пользоваться, зачем он нужен и почему простых
Для этого он проделал путь:
🍭 Создание собственной игры. Автор выбрал «классические» камень-ножницы-бумага
🍭 Интеграция с SDK Agones, реализация необходимых методов
🍭 Развертывание наработок (Agones вместе со своей игрой) в Kubernetes
🍭 Реализация сервиса по поиску пары для игры (matchmaking)
В итоге получилась массивная статья на ~28 минут, в которой каждый шаг разбирается очень детально.
Рекомендуем к прочтению, даже если вы не собираетесь запускать игры на Kubernetes, ведь внутри – отличный инженерный опыт: разобраться, понять, запустить, поискать ошибки и пользоваться!
Всем привет!
Есть такой сервис – Agones. Он позволяет запускать серверы для игр (dedicated game servers) в Kubernetes и управлять ими.
Автор статьи решил разобраться в том, как им пользоваться, зачем он нужен и почему простых
pods и deployments будет недостаточно.Для этого он проделал путь:
🍭 Создание собственной игры. Автор выбрал «классические» камень-ножницы-бумага
🍭 Интеграция с SDK Agones, реализация необходимых методов
🍭 Развертывание наработок (Agones вместе со своей игрой) в Kubernetes
🍭 Реализация сервиса по поиску пары для игры (matchmaking)
В итоге получилась массивная статья на ~28 минут, в которой каждый шаг разбирается очень детально.
Рекомендуем к прочтению, даже если вы не собираетесь запускать игры на Kubernetes, ведь внутри – отличный инженерный опыт: разобраться, понять, запустить, поискать ошибки и пользоваться!
/home/noe
Making and Scaling a Game Server in Kubernetes using Agones
Learn with me how to create a game server in Go for Agones, deploying it on Kubernetes, designing an event-based matchmaking service also in Go, and setting up autoscaling for the whole thing.
❤1
Trail of Bits Skills Marketplace
Всем привет!
Trail of Bits предоставили публичный доступ к Skills – Claude Code плагинам, которые позволяют использовать возможности AI для проведения ИБ-анализа и тестирования.
Доступен целый набор «помощников»:
🍭 Semgrep Rule Creator – создание правил для Semgrep
🍭 Static Analysis с использованием Semgrep и CodeQL и последующим анализом SARIF
🍭 Variant Analysis – поиск идентичных ИБ-дефектов в кодовой базе
🍭 Fix Review – анализ предлагаемых способов устранения ИБ-дефектов
Firebase APK Scanner – анализ APL на предмет наличия некорректных конфигураций
Полный перечень представлен в GitHub-репозитории проекта.
Для каждого навыка (skill) представлено его назначение и краткое описание того, что он может делать.
Устанавливается крайне просто –
Всем привет!
Trail of Bits предоставили публичный доступ к Skills – Claude Code плагинам, которые позволяют использовать возможности AI для проведения ИБ-анализа и тестирования.
Доступен целый набор «помощников»:
🍭 Semgrep Rule Creator – создание правил для Semgrep
🍭 Static Analysis с использованием Semgrep и CodeQL и последующим анализом SARIF
🍭 Variant Analysis – поиск идентичных ИБ-дефектов в кодовой базе
🍭 Fix Review – анализ предлагаемых способов устранения ИБ-дефектов
Firebase APK Scanner – анализ APL на предмет наличия некорректных конфигураций
Полный перечень представлен в GitHub-репозитории проекта.
Для каждого навыка (skill) представлено его назначение и краткое описание того, что он может делать.
Устанавливается крайне просто –
/plugin marketplace add trailofbits/skills. Единственный нюанс: работает только с Claude Code и, соответственно, нужен доступ к этому ресурсу.GitHub
GitHub - trailofbits/skills: Trail of Bits Claude Code skills for security research, vulnerability detection, and audit workflows
Trail of Bits Claude Code skills for security research, vulnerability detection, and audit workflows - trailofbits/skills
❤4