Forwarded from Security Wine (бывший - DevSecOps Wine) (Denis Yakimov)
Threat Modelling & Supply-Chain (Part 1: Assets)
Безопасность разработки стала весьма широким доменом в плане охватываемых проблемных зон и инструментов. За последние полгода в одну из решаемых задач попала митигация рисков, связанных с атаками на цепочку поставок (supply-chain attack). Для тех, кто следит за новостями, сразу вспоминаются атаки на SolarWinds (хотя в реальности примеров подобных атак значительно больше). Тем не менее, как связать примеры подобных атак с собственной инфраструктурой и цепочкой поставок не всегда очевидно (чем активно пользуются производители решений SCA).
Чтобы понять, как мы можем защититься от атак на цепочку поставок, требуется декомпозировать задачу, а именно прибегнуть к процессу моделирования угроз: определить защищаемые активы, действия над этими активами, пользователей и потенциальные угрозы, связанные с этими действиями.
Активами могут стать код, зависимости и итоговый артефакт, то есть те компоненты, которые участвуют в цепочке поставок. Также в качестве активов нередко рассматривают сами системы, которые участвуют в процессе сборки артефактов и их развертывания (CI и CD системы).
Раскидывая все процессы разработки на схеме (мне нравится обычный draw.io с плагином dfd) мы имеем архитектуру нашего сборочного конвейера совместно с этапом раскатки. Детализация схемы зависит от вашего погружения вместе с DevOps командами. Модель угроз можно декомпозировать вплоть до всех компонентов Kubernetes. Чтобы точно убедиться, что мы ничего не пропустили, мы можем расписать процессы отдельно:
#threatmodeling #dev #ops #talks
Безопасность разработки стала весьма широким доменом в плане охватываемых проблемных зон и инструментов. За последние полгода в одну из решаемых задач попала митигация рисков, связанных с атаками на цепочку поставок (supply-chain attack). Для тех, кто следит за новостями, сразу вспоминаются атаки на SolarWinds (хотя в реальности примеров подобных атак значительно больше). Тем не менее, как связать примеры подобных атак с собственной инфраструктурой и цепочкой поставок не всегда очевидно (чем активно пользуются производители решений SCA).
Чтобы понять, как мы можем защититься от атак на цепочку поставок, требуется декомпозировать задачу, а именно прибегнуть к процессу моделирования угроз: определить защищаемые активы, действия над этими активами, пользователей и потенциальные угрозы, связанные с этими действиями.
Активами могут стать код, зависимости и итоговый артефакт, то есть те компоненты, которые участвуют в цепочке поставок. Также в качестве активов нередко рассматривают сами системы, которые участвуют в процессе сборки артефактов и их развертывания (CI и CD системы).
Раскидывая все процессы разработки на схеме (мне нравится обычный draw.io с плагином dfd) мы имеем архитектуру нашего сборочного конвейера совместно с этапом раскатки. Детализация схемы зависит от вашего погружения вместе с DevOps командами. Модель угроз можно декомпозировать вплоть до всех компонентов Kubernetes. Чтобы точно убедиться, что мы ничего не пропустили, мы можем расписать процессы отдельно:
CI Master:
- Вызов сборки
- Конфигурация сборки
- Получение секретов git из встроенного хранилища секретов
- ....
К каждому процессу подписываются защищаемыми нами активы:A01: секреты git
A02: код бизнес-приложения
A03: итоговый артефакт
A04: зависимость
...
Совместно с определением процессов и активов рекомендуется определить так называемые доверенные зоны (trusted zones). Они помогают определить логические границы, за которых ответственны те или иные администраторы систем, а также поверхности атаки злоумышленника в случае, если он окажется внутри инфраструктуры.#threatmodeling #dev #ops #talks
Forwarded from Security Wine (бывший - DevSecOps Wine) (Denis Yakimov)
Forwarded from Security Wine (бывший - DevSecOps Wine) (Denis Yakimov)
Threat Modelling & Supply-Chain (Part 2: Threats & Threat Actors)
Следующим этапом определим пользователей наших процессов. Эти же пользователи будут нашими потенциальными нарушителями (threat actors). Рассматривая атаки на цепочки поставок это могут быть внутренние нарушители (разработчики, администраторы CI и CD систем, администраторы кластера, сопровождение ОС и так далее) и внешние (пользователь, который может повилять на общедоступные репозитории).Также на этом этапе мы понимаем, где еще могут использоваться наши защищаемые активы (секреты и код на рабочих станциях).
Далее переходим к главному и самому сложному - раскидывание угроз. Сложность заключается в том, чтобы определить для себя исчерпывающий перечень угроз. В лучшем случаем вам может помочь банк угроз (например MITRE), в худшем случае придется опираться на собственный опыт и известные кейсы.
На помощь могут придти методологии вроде STRIDE (она поможет нам раскидать угрозы по заранее определенным классам), а также деревья атак (поиск атак для реализации угроз посредством их зависимостей друг с другом).
На этом этапе мы можем получить уже множество интересных открытий. Например, оказывается, что разработчик имеет возможность изменять пайплайн развертывания подменяя источник артефактов, внедряя backdoor или малварь. На этом же этапе мы можем определить у себя возможность реализации Dependency Confusion при скачивании зависимости разработчиком из Artifactory и многое другое.
В следующих постах мы поговорим про приоритизацию угроз и формирование требований ИБ по результатам модели угроз. Если вы уже хотите попрактиковаться, то можете почитать пример моделирования угроз для облачного приложения в AWS с использованием STRIDE. Хорошим материалом является также Threat Modeling Training от компании Segment, где есть простые и понятные слайды по всем этапам моделирования угроз.
#threatmodeling #dev #ops #talks
Следующим этапом определим пользователей наших процессов. Эти же пользователи будут нашими потенциальными нарушителями (threat actors). Рассматривая атаки на цепочки поставок это могут быть внутренние нарушители (разработчики, администраторы CI и CD систем, администраторы кластера, сопровождение ОС и так далее) и внешние (пользователь, который может повилять на общедоступные репозитории).Также на этом этапе мы понимаем, где еще могут использоваться наши защищаемые активы (секреты и код на рабочих станциях).
Далее переходим к главному и самому сложному - раскидывание угроз. Сложность заключается в том, чтобы определить для себя исчерпывающий перечень угроз. В лучшем случаем вам может помочь банк угроз (например MITRE), в худшем случае придется опираться на собственный опыт и известные кейсы.
На помощь могут придти методологии вроде STRIDE (она поможет нам раскидать угрозы по заранее определенным классам), а также деревья атак (поиск атак для реализации угроз посредством их зависимостей друг с другом).
На этом этапе мы можем получить уже множество интересных открытий. Например, оказывается, что разработчик имеет возможность изменять пайплайн развертывания подменяя источник артефактов, внедряя backdoor или малварь. На этом же этапе мы можем определить у себя возможность реализации Dependency Confusion при скачивании зависимости разработчиком из Artifactory и многое другое.
В следующих постах мы поговорим про приоритизацию угроз и формирование требований ИБ по результатам модели угроз. Если вы уже хотите попрактиковаться, то можете почитать пример моделирования угроз для облачного приложения в AWS с использованием STRIDE. Хорошим материалом является также Threat Modeling Training от компании Segment, где есть простые и понятные слайды по всем этапам моделирования угроз.
#threatmodeling #dev #ops #talks
Обучение threat modelling от мелкомягких...
https://docs.microsoft.com/en-us/learn/paths/tm-threat-modeling-fundamentals/
https://docs.microsoft.com/en-us/learn/paths/tm-threat-modeling-fundamentals/
Docs
Threat Modeling Security Fundamentals - Learn
This learning path takes you through the four main phases of threat modeling, explains the differences between each data-flow diagram element, walks you through the threat modeling framework, recommends different tools and gives you a step-by-step guide on…
Forwarded from GitHub repos
bilibili/LastOrder-Dota2
Dota2 AI bot
Language: Python
Stars: 85 Issues: 0 Forks: 5
https://github.com/bilibili/LastOrder-Dota2
Dota2 AI bot
Language: Python
Stars: 85 Issues: 0 Forks: 5
https://github.com/bilibili/LastOrder-Dota2
GitHub
GitHub - bilibili/LastOrder-Dota2: Dota2 AI bot
Dota2 AI bot. Contribute to bilibili/LastOrder-Dota2 development by creating an account on GitHub.
Forwarded from запуск завтра
This media is not supported in your browser
VIEW IN TELEGRAM
Искуственный интеллект™ (модель машинного обучения) переводит просьбы на английском языке в питон-код для обработки и представления данных.
Срочно нужен такой же для перевода с русского на 1С.
https://github.com/deepklarity/jupyter-text2code
Срочно нужен такой же для перевода с русского на 1С.
https://github.com/deepklarity/jupyter-text2code
Forwarded from DevOps&SRE Library
Distributed Tracing with OpenTelemetry and Jaeger
https://iqfarhad.medium.com/distributed-tracing-with-opentelemetry-and-jaeger-e21e53b5c24e
https://iqfarhad.medium.com/distributed-tracing-with-opentelemetry-and-jaeger-e21e53b5c24e
Forwarded from Курсы хуюрсы
https://github.com/MaksimDzhangirov/complete-gRPC/blob/main/SSL_TLS_lecture_rus.md
Подробное описание SSL/TLS и его криптографической системы
Подробное описание SSL/TLS и его криптографической системы
GitHub
complete-gRPC/SSL_TLS_lecture_rus.md at main · MaksimDzhangirov/complete-gRPC
In this course, we are going to learn about gRPC and how to use it with protocol buffer - MaksimDzhangirov/complete-gRPC
Forwarded from infosecurity
Exo - инструмент для логирования и работы с процессами в системе.
https://github.com/deref/exo
https://github.com/deref/exo/blob/main/doc/guide.md
#Exo
https://github.com/deref/exo
https://github.com/deref/exo/blob/main/doc/guide.md
#Exo
GitHub
GitHub - deref/exo: A process manager & log viewer for dev
A process manager & log viewer for dev. Contribute to deref/exo development by creating an account on GitHub.
Forwarded from Cyber Hunter
Twitter
Harsh Bothra
I have created a mindmap about "XML Attacks", a quick reference checklist for your next XML related attack scenarios :) PDF: drive.google.com/file/d/1xUqA0L… XMind: xmind.net/m/xNEY9b Thanks, @Agarri_FR for your contribution to this space. :) #appsec #infosec…
Forwarded from Мадан — наука
Forwarded from Data Scientology
This media is not supported in your browser
VIEW IN TELEGRAM
StackFinder: A VSCode extension to help you find and use Stack Overflow answers
/r/datascience
https://redd.it/p0e2zb
/r/datascience
https://redd.it/p0e2zb
Forwarded from Мадан — наука
Telegram Remote Administration Tool
Вот он, бот для удаленного управления компом через Telegram. Почти все его фичи можно увидеть на видосе в предыдущем сообщении.
Технические подробности и инструкции по установке ждут всех желающих на странице проекта.
Ссылка на проект: https://github.com/Antcating/telegram-remote-bot
П.с. Да, я опять ищу переводчика на русский язык.
Вот он, бот для удаленного управления компом через Telegram. Почти все его фичи можно увидеть на видосе в предыдущем сообщении.
Технические подробности и инструкции по установке ждут всех желающих на странице проекта.
Ссылка на проект: https://github.com/Antcating/telegram-remote-bot
П.с. Да, я опять ищу переводчика на русский язык.
GitHub
GitHub - Antcating/telegram-remote-bot: Telegram Remote Administration Tool
Telegram Remote Administration Tool. Contribute to Antcating/telegram-remote-bot development by creating an account on GitHub.
Forwarded from SHADOW:Group
🖇 Фаззинг + IDOR = Права администратора
Классический способ поэтапной эксплуатации уязвимостей контроля доступа в API и получение прав администратора.
#web #idor #api #fuzz
Читать статью
Классический способ поэтапной эксплуатации уязвимостей контроля доступа в API и получение прав администратора.
#web #idor #api #fuzz
Читать статью
Telegraph
Фаззинг + IDOR = Права администратора
Данная статья является переводом и ведется со слов автора. Оригинал тут. Мы будем называть сайт жертвы как example.com. У этой цели есть 6 четко определенных ролей пользователей. Пользователя с низкими привилегиями назовем«Low Privilege», а пользовaтеля с…
