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

geminishkv.tech

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

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

Лидер findevsecops.ru @fintechassociation

Преподаватель @bmstu1830, @miptru
Download Telegram
🤔 Open Source Strong & Weak Copyleft Licenses

Салют,
Мы с тобой ранее смотрели что такое свободное и проприетарное ПО вот тут, а также рассмотрели пермиссивные лицензии тут.

Сейчас предлагаю посмотреть тебе на open-source типа Unlicense и Strong, Weak Copyleft Licenses. Эти типы лицензий описывают тип свободное распростронения с некоторыми частными случаями и имеют отличия друг от друга.

Что такое Copyleft?

Это свободно распространяемая лицензия, где распространяющий может «делиться» продуктом как в исходном состоянии, так и после внесения в него своих правок. Аналогично пермиссивным лицензиям, в копилефт сохраняется уведомление об авторстве.


Особенность

1. Строгая лицензия - это модификация кода под той же лицензией, где любая программа, созданная на его основе, должна быть также открытой и распространяться под аналогичной лицензией.

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


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

Итого: если автор хочет разрешить пользоваться своей ОИС без каких бы то ни было ограничений со стороны авторского права, то он должен сделать заявление о том, что он осуществляет передачу ОИС в общественное достояние путём отказа от своих прав. В иных случаях, я тебе рассказал все типы лицензий, где тебе именно выбирать как создать и развивать продукт.

#toolchain #licenses
🔥4
🛠 Курс для МФТИ по безопасной разработке

В конце этого дня, хочу тебе рассказать о инфо, которые попали в СМИ с интересными комментариями. Ранее я писал про МФТИ и курс, который для них делал вот тут.

В курсе объясняю практическую ценность для слушателей по принципам разработки программного обеспечения, интегрированной с информационной безопасностью с акцентом на киберпреступность, защиту от утечек данных и отказов в обслуживании, нормативное регулирование (compliance).

В данной программе мы даем студентам фундаментальные знания для быстрого старта в профессии. Программа построена также на практических подходах ЛАНИТ к построению безопасных программных решений.

Партнером по реализации программы со стороны вуза выступает кафедра технологического предпринимательства МФТИ и «Сколково»

Хочу поделиться с тобой этими публикациями:
- Ведомости
- Коммерсанть

Stay tuned 🤘

#devsecops #pmi #course #toolchain #riskanalys #pmcases #techsolutions #compliance
🔥3❤‍🔥1
🛠 Nuclei: open-source DAST с использованием YAML-шаблонов

Салют,
Давай сегодня посмотрим с тобой в сторону динамического тестирования DAST, который применяет шаблонизатор YAML. Я хочу поделиться с тобой удобным инструментом, который обычно используется в дополнении к Burp Suite.

Описание

Поддерживает веб-приложения, API, сетевые сервисы и облачные инфраструктуры. Вот тут можешь посмотреть официальный репозиторий и детали по используемым флагам вот тут. Поддерживает параллельную обработку для массового сканирования. Работает в связке с subfinder, httpx, naabu. Не имеет собственных настроек политик. Управление политиками Quality Gate осуществляется на уровне конвейера при его вызове. Лицензия MIT.


У инструмента есть особенности, давай отметим некоторые из них:

- Шаблоны с протоколами code/javascript требуют цифровой подписи и явного указания флага -code для запуска
- Следует использовать режим -disable-unsigned-templates, который разрешает выполнение только подписанных шаблонов и запускайте только в изолированной среде
- Запуск не проверенных шаблонов от третьих лиц опасен из-за риска внедрения вредоносного кода.
- Перед запуском анализируйте id, info, payloads и fuzzing на предмет подозрительных операций
- Используйте флаги ограничения скорости -rl и количества параллельных запросов -c 


Применение



nuclei -u https://example.ru # Сканирование одиночной цели
nuclei -l targets.txt # Сканирование списка целей
nuclei -u https://example.ru -t cves/2021/CVE-2021-12345.yaml # Запуск конкретного шаблона
nuclei -u https://example.ru -tags jira -s critical,high # Фильтрация по тегам и серьезности
nuclei -u https://example.ru -as # Автоматическое определение технологий
subfinder -d example.ru | httpx | nuclei # Интеграция с инструментами разведки
nuclei -l openapi.json -im openapi # Сканирование OpenAPI
nuclei -t template_with_code.yaml -code -c 50 -rl 100 # Безопасный запуск шаблонов с кодом
docker run projectdiscovery/nuclei:latest -u https://example.ru # Запуск сканирования c docker



GitLab CI



security_scan:
  stage: test
  image: golang:latest
  before_script:
    - go install -v github.com/projectdiscovery/nuclei/v2/cmd/nuclei@latest
  script:
    - nuclei -u $URL -t /templates -json -o nuclei-report.json
  artifacts:
    paths:
      - nuclei-report.json


Jenkins



stages {
        stage('Security Scan') {
            steps {
                sh '''
                    # Установка Nuclei
                    go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
                     
                    # Запуск сканирования
                    $HOME/go/bin/nuclei -u $URL -t $NUCLEI_TEMPLATES -json -o nuclei-report.json
                '''
            }
        }
    }
     
    post {
        always {
            archiveArtifacts artifacts: 'nuclei-report.json', fingerprint: true
        }
    }
}



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

- Следует использовать environment с указанием тестируемого URL = 'https://example.com' и используемым NUCLEI_TEMPLATES = '/templates'
- Имеет огромную базу актуальных шаблонов и низкий уровень ложных срабатываний
- Поддерживает множества протоколов (HTTP, TCP, DNS, SSL)
- Имеет риски выполнения вредоносных шаблонов из-за отсутствия опыта
- Имеет последующий потенциальный DoS-эффект на продакшн-системы
- Необходима экспертиза для написания собственных шаблонов
- Тестирует кроме web, также API, облачную инфраструктуру (AWS S3, Azure, etc.), сетевые устройства, включая сторонних поставщиков


#toolchain #dast
🔥5
🛠 Нетиповые практики DevSecOps для CI/CD

Салют,
Давай с тобой продолжим смотреть в сторону практик DevSecOps и в этот раз обсудим CI/CD, где я хочу поделиться с тобой выработанными принципами, которые считаю актуальными и основными при проработке концептов.

Continuous Integration/ Continuous Delivery — это автоматизация процессов разработки, которая включает непрерывную интеграцию и непрерывную доставку. Автоматизация нацелена на SDLC цикл.


А теперь давай рассмотрим сами практики и начнем с базы:

- Изоляция контроллера: сборки не на встроенном узле, а инициализируются из глобальных переменных
- Не допускается наличие не используемых переменных среды
- Не запускать сборку от ТУЗ с привилегированными правами
- Средства сборки и деплоя не должны требовать расширение прав доступа
- Обеспечивать строгий рендеринг пользовательского контента: файлы из рабочих директорий, архивные артефакты и т.д.
- В процессе CI\CD должна быть исключена возможность переполнений и несанкционированной перезаписи.
- Не допускается вызов внешних зависимостей на этапе деплоя


Stages

- Каждый Stage изолируется и разделяет операции функционально
- Учётные записи, используемые или вызываемые при сборке или деплое, должны проходить предварительную аутентификацию:
- аутентификация должна быть персональной и обеспечивать возможность отслеживать действия;
- аутентификация должна быть обеспечена для пользователей всех уровней доступа (администраторы, супервизоры)

- Все jobs необходимо разделять по назначению: CI (сборка, тестирование, анализ кода и т.д. - обособленно и не взаимодействует со средами эксплуатации, а CD использует отдельные УЗ
- Библиотеки, сборки и шаблоны конвейеров следует хранить отдельно от управляющего конфига
- Рекомендуется использовать отдельные репозитории для сборок и шаблонов для изоляции конфигураций
- Подключаемые скрипты: Groovy, Shell, Python и др. не должны содержать проверок или условий, позволяющих обходить этапы сборки, тестирования или других критических стадий конвейера
- Для обеспечения целостности и отслеживания изменений необходимо автоматически собирать хэш-сумму профиля конвейера или конфигурации при каждой сборке
- На этапе CD требуется проверка хэш-суммы профайла


Особенности

- Ниже maintainer нет возможности самостоятельно выбирать окружение и быть ограничены
- Деплой не должен выполняться без MR
- Все pre-действия должны включать полные метаданные артефакта — параметры сборки, атрибуты поставки и идентификаторы версий
- Все callback-действия внутри конвейера,
- Build и тд. должны выполняться только для приложений, упакованных в Docker-контейнеры для единообразия сред
- В CI рекомендуется запускать несколько типов тестов: интеграционные, unit-тесты, регрессионные тесты
- При неуспешной сборке артефакт не должен попадать в репозиторий артефактов
- Среды деплоя: staging, production и тд. должны быть логически и физически разделены
- Все post-действия в конвейере не должны вызываться независимо и обязаны выполняться только после завершения соответствующих pre- или main-этапов


Итого: приведенные принципы при их соблюдении снижают риски ИБ для конвейера и помогают тебе контролировать сам конвейер, поэтому соблюдая их иможно также выстраивать процесс разработки качественно. Для формирования дальнейшего развития в сторону автоматизации предикатора Security в DevOps ты можешь опираться на них.

#appsec #devsecops #reco #specialty #pmcases
🔥3❤‍🔥1
🤔 Product Requirement Document для Shift-Left

Салют,
Сегодня хочу поделиться с тобой своей практикой для проектного управления (PMI), которая позволяет мне видеть концептуально картинку и анализировать корректность выстраивания процессов DevSecOps, интеграции AppSec Toolchain и управления человеческими ресурсами.

Что такое PRD и зачем он нужен?

Используется при описании текущего сводного статуса проекта и features. Это общий документ/ справочник, который по сути одинаково понятен разработчикам, аналитикам, саппорту, менеджерам и ИБ.


Структура

- краткое описание функционала - описываем что мы хотим сделать простыми словами (как например, если бы рассказывали коллеге у "кулера")

Плохой пример: «Добавить кнопку «Верификация» в авторизованную часть 2FA, класть данные логов, кто заходил, потому что нужно потом строить из них графики»

Хороший пример: «Обеспечить безопасность пользовательских учетных записей и противодействовать нелигитимному доступу внутри инфраструктуры в случае компрометации учетной записи. С помощью интеграции у клиента, а также нас, появится возможность осуществлять контроль и гарантировать безопасное легитимное подключение» (чувствуете как это сложна и не понятно)


- почему мы это делаем - разворачивает смысл в первом абзаце. Дальше декомпозируется.

Плохой пример: «Потому что требует решгулятор эту фичу для соответствия требованиям»

Хороший пример: «Потому что это может дать нам возможность быстрого прохождения верификации и контроля пользователей, обезопасить user story и быть уверенными в защищенности данных (ссылка на результаты эксперимента/ расчет/ кейс)»


- ожидаемый результат - описываем какого именно результата ждем, наш Win Condition.

Win Condition отвечает на один простой вопрос — как мы поймем, что у нас получилось. Это может быть любая количественная или качественная метрика, событие оценки. Главные критерии качества для Win Condition — измеримость, однозначная трактуемость и простота (принцип Invest).

Fail Condition отдельно можно не прописывать. По умолчанию предполагаем, что при не достижении Win Condition мы автоматически попали в состояние Fail.


- риски ИБ - описываем и оцениваем, что может стать ее причиной и прямого/ косвенного урона требующих изменение архитектуры, функционала и тд, - как пример риск киберпреступления и мы понимаем, что входная поверхность атаки больше, чем мы покрыли и допускаем
- артефакты - исследования, результаты, требования, evidence
- функциональные требования - само решение, приводя альтеранативы для выбора и доработки кейсов, таким образом мы окажем сервисное обслуживание и оптимизируем взаимодействие

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

Хардкорные ФТ: описываем всю бизнес логику пошагово (применимо при проработке сложных кейсов.


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

Итого:

- PRD хватает для того, чтобы техническая команда вместе могла провести первичную декомпозицию.
- Логика использования PRD в ИБ - встраивание Shift Left процесса в разработку и фиксация требований ИБ, а также контроль, сбор evidence.
- Именно он (или ссылка на него) составляет описание user story, которая потом декомпозируется на tasks (задачи)
- После окончания работ/ описания требований или иных дополнений над задачами - PRD становится документацией о том, как это работало и почему/ зачем было реализовано.
- PRD пишется для больших и сложных вещей, где есть много зависимостей и очень важно сохранить для истории как это работало.


#devsecop #pmi #specialty #pmcases
🔥3
🤔 Опыт первичных судебных дел сформировавших практики использования электронной подписи

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

Мне пришла мысль рассказать тебе историческую справку о Федеральном Законе "Об электронной подписи" от 06.04.2011 и предпосылок его становлении на фоне судебных дел.

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

Рассмотрим несколько примеров, которые сыграли важную роль на формирование ЭП

1. Постановление Федерального арбитражного суда Волго-Вятского округа от 11 августа 2010 года по делу под № В3-5226/2010

ФАС Волго-Вятского округа признал юридическую силу факсимильной подписи, где истец требовал взыскания задолженности с ответчика за не оплаченный товар, так как ответчик не признавал электронные документы, подписанные факсимильной подписью и утверждал, что данные документы подписаны не уполномоченным лицом, без какого-либо удостоверяющего центра.

По факту данного дела суд установил, что документы составлены в соответствии с требованиями действующего законодательства, следовательно, между обеими сторонами было заключено дополнительное соглашение к договору, в котором предусмотрено применение СЭД с использованием ЭЦП. Следовательно, суд постановил, что документы были подписаны уполномоченным лицом ответчика надлежащим образом.


2. Постановление Федерального арбитражного суда северо-западного округа от 1 июня 2009 по делу № Г6-28501/2008:

Приводился довод ИФНС об отсутствии у ОАО оснований для предъявления к вычету НДС по счету-фактуре, подписанному штампом-факсимилом — воспроизводящим личную подпись руководителя организации-поставщика.

Ссылка была на то, что представленная подпись является не обоснованной. Поскольку действующее законодательство РФ, в тот момент времени, не устанавливало допустимые форматы способов подписания счетов-фактур, в том числе не предусматривало запрет на подпись руководителя факсимильной подписи - ссылка на обоснования считалась не корректной и было принято решение в утверждении правоприменительности вычета.


3. Определение Высшего арбитражного суда Российской федерации от 13 февраля 2009 года под № ВАС-16068/08

В передаче дела по заявлению о признании незаконными актами налогового органа по начислению налогов, начислению пеней, привлечении к налоговой ответственности по п. 1 ст. 122 НК РФ для пересмотра надзора судебных актов - было отказано, поскольку представленные доказательства подтверждают наличие хозяйственных операций между заявителями и ООО по факту наличия факсимильной подписи.


Итого:

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


Все это показывало необходимость дополнительного регулирования на фоне цифровизации.

#specialty #pmcases #compliance
🔥43
🤔 Little’s Law in Queuing Theory для управления в математическом представлении

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

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

Давай обсудим базу, когда у тебя оверохват и перегруз и тебе надо как то этим управлять, ладно когда есть выстроенный конвейер и ты можешь быть адаптивен, а что если он только формируется? Вот поэтому посмотрим на "Закон Литтла о потоках/ очередях" и как сохранить себя от выгорания.

Закон Литтла

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


Фишка в чем, что этот закон незаменим для понимания “work in progress” WIP для Kanban, Lean и ITSM/ ITIL.

Давай посмотрим внимательнее на него

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

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


Представь, что каждый час тебе поступает 250 заявок на какие то типовые работы и ты успеваешь их сделать, но в какой то момент времени они к тебе начинают задерживаться на 15 минут, тогда:
- всегда будет примерно 188 заявок в час, если числа стабильны. По сути на других цифрах ты можешь посчитать свою задачу самостоятельно, эта тема еще прикидывается на стадиях poker planning (boroda) и имеет story point.

Что дает рост WIP?

- увеличивает количество одновременных отвлечений и потерю фокуса
- замедляет каждую задачу временем на переключения между задачами
- увеличивает суммарное Lead Time
- влияет на выгорание, стресс, спад качества результата


Тем самым, закон Литтла подсказывает, что необходимо дробить количество задач на итерации, следовательно появляется для адаптивной методологии scrum, который берет спринты и контролирует выгорание, а также проводит ретроспективу

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

Итого:

- закон Литтла универсален, помогает прогнозировать загрузку команды, управлять очередями и избегать потерь времени
- мониторьте throughput команды, для стабильности
- анализируйте lead time и WIP для поиска узких мест и перегрузов
- подход бизнеса одинаков: уменьшать WIP, далее ускорять lead time и повышать производительность


#specialty #pmcases #pmi #devsecops #humanres
🔥3
🏆 Премия по DevSecOps для финтех рынка РФ

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

Мы с коллегами начали создавать премию по финтеху для рынка РФ: "Безопасность начинается с кода".

Безопасность в разработке программного обеспечения является критически важной для защиты данных пользователей и предотвращения кибератак.

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

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

Основа концепта следующая:

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


По итогу драфт премий:

- «Фундамент безопасности: DevSecOps-революция в банках»
- «Страховой щит: зрелые практики безопасности в страховом бизнесе»
- «Региональный импульс: развитие DevSecOps в регионах»
- «Открытые горизонты: Open Source в безопасности ПО»
- «Архитекторы безопасности: интеграция DevSecOps»
- «Технологический прорыв: новые горизонты безопасности ПО»
- «Новые герои безопасной разработки»
- Специальная премия от Ассоциации ФинТех


Stay tuned 🙏

#appsec #devsecops #specialty #toolchain #vulnmanagement #toolchain #compliance #gost #techsolution #pmicases
🔥7❤‍🔥2
🛠 Cheatsheet тебя "качает": GitSCM

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

База


$ git init # Инициализация пустого локального репозитория
$ git remote add origin URL_link # Связывание удалённого репозитория с именем "origin" по ссылке "URL_link" с локальным

$ git pull origin name_branch # Ветка из которой мы берем изменения для тестирования
$ git remote show # Показать подключенные удалённые репозитории
$ git status # Показывает состояние локального репозитория (отслеживаемые, изменённые, новые файлы и пр.)

$ git add . # Добавить в индекс все новые, изменённые, удалённые файлы из текущей директории и её поддиректорий
$ git commit -S -m"added sources" # Зафиксировать в коммите проиндексированные изменения (закоммитить), добавить сообщение

$ git push origin name_branch # Отправляем изменения из локального репозитория в удалённый в ветку "name_branch"
$ git show HEAD # Информация о последнем комите (git log -1)
$ git push --set-upstream origin new-name # Установка upstream (связывает локальную ветку с удаленной)
$ git push origin :old-name # Удаление старой ветки в удаленном репо
$ git push origin new-name # Публикация новой ветки

$ git log --oneline --graph --decorate --all
$ tree -I "katalog|katalog" # Вывод с исключением каталогов для дерева проекта


Работа с index


$ git init # Инициализация пустого локального репозитория
$ git remote add origin URL_link # Связывание удалённого репозитория с именем "origin" по ссылке "URL_link" с локальным

$ git pull origin name_branch # Ветка из которой мы берем изменения для тестирования
$ git remote show # Показать подключенные удалённые репозитории
$ git status # Показывает состояние локального репозитория (отслеживаемые, изменённые, новые файлы и пр.)

$ git add . # Добавить в индекс все новые, изменённые, удалённые файлы из текущей директории и её поддиректорий
$ git commit -S -m"added sources" # Зафиксировать в коммите проиндексированные изменения (закоммитить), добавить сообщение

$ git push origin name_branch # Отправляем изменения из локального репозитория в удалённый в ветку "name_branch"
$ git show HEAD # Информация о последнем комите (git log -1)
$ git push --set-upstream origin new-name # Установка upstream (связывает локальную ветку с удаленной)
$ git push origin :old-name # Удаление старой ветки в удаленном репо
$ git push origin new-name # Публикация новой ветки

$ git log --oneline --graph --decorate --all
$ tree -I "katalog|katalog" # Вывод с исключением каталогов для дерева проекта


Конфликты, с которыми ты точно столкнешься



$ git remote set-url origin ssh://git@github.com_gitlab.com/username/newRepoName.git # Замена URL
$ git remote -v # Проверка правильности указанного link
$ git remote set-head origin -a
$ git pull --rebase origin name_branch # Переинициализация

$ git reset HEAD file # Убирает файл из индекса
$ git reset HEAD~ # Отмена последнего commit
$ git reset --hard HEAD~ # Удаление commit с изменениями

$ git push origin --delete name_branch / git branch -rD origin/name_branch
$ git branch -d name_branch # Удаление локального репо
$ git checkout -- file # Отменяет изменение

$ git clean -fdn # Удаляет неотслеживаемые файлы и каталоги с предварительным просмотром

# Установка новой master/main ветки
$ git fetch origin
$ git fetch origin # Жесткая перезапись репозитория

$ git branch -u origin/gpages gpages
$ git branch -m master gpages


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

#toolchain #appsec #specialty #pmcases #paper
🔥4❤‍🔥2
🚀 Дискуссия «Карьерные треки безопасной разработки: от ИТ к безопасности и обратно»

Салют,
Завтра будет ивент, на который позвали Т1, а именно ИМПУЛЬС, ты можешь подключиться и послушать о чем мы с ребятами будем говорить.

Среди участников:

- Модератор: Дудник Степан Технический директор, ВHDTech, лидер сообщества FinDevSecOps АФТ
- Герасимов Фёдор Эксперт отдела безопасной разработки, ИТ-холдинг Т1, руководитель сообщества FinDevSecOps АФТ
- Макрушин Денис Директор по продуктам безопасной разработки, Яндекс, лидер сообщества FinDevSecOps АФТ
- Когос Константин Директор Института интеллектуальных кибернетических систем, НИЯУ МИФИ
- Погорелко Егор Руководитель направления исследования и разработки РУНЦ «Безопасности», МГТУ им. Н.Э. Баумана


Мы рассмотрим всю подноготную безопасной разработки с ребятами и классные вопросы по трекам развития и я думаю тебе будет прозрачнение, как на сейчас все выстраивается в отрасли 😄

Регистрируйся 🙏

#devsecops #roadmap #meetup #conf #compliance #gost #кулуарка
🔥4
Салюты,
Напоминалочка, что скоро будет в зале Сигнал обсуждать классную тему, которую подсвечивал тут.

Жду тебя онлайн и офлайн 🙏

#devsecops #roadmap #meetup #conf #compliance #gost #кулуарка
🔥4
🛠🏆 DevSecOps Toolchain MAP Release v.1.1.2

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

Смотри, ты можешь ее почекать и попользоваться фильтрацией.

Вот тут source проекта с обертками на js, логикой на py + json из yaml. Ты можешь посмотеть репы и шилды с деталями, релизнул недавно, но никак не могу устоять перед тем, что бы поделиться с тобой этим. До нг планирую еще подкрутить пару классных штук.

Для твоего удобства натянут на mkdocs material и доступен по линку с адаптивной версткой, но ты же понимаешь, что с телефона таблица не удобно, поэтому есть фильтрация. Табличка подстраивается под размер экрана и компакта на сколько это возможно, записей на сейчас о тулах 267.

- У каждого тула указан тип лицензии, в менюшке есть страничка описания лицензий и у меня тут можешь почекать по #licenses. Я скоро продолжу также эту историю. Помимо этого там есть описание и прочие классные отмеченные штуки, которые помогут тебе определиться с тем, нужен тебе тул или нет.

- В таблице предусмотрен open-source решения, вендорские по рынку РФ и из-за заграницы. Также там есть сертификаты ФСТЭК.


Сейчас функционал допиливается и пока работа ведется, обрати внимание, что ты один из первых, кто это видит прямо сейчас 🏆

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

Основные моменты:

- карта дает возможность выбрать выгодные для себя инструменты под все необходимые ситуации: когда нет денег, когда не можем интегрировать большой инструмент, когда никого нет и приходится делать все одному и тд.
- карта инструментов показывает какие есть классы и типы инструментов
- предыдущая версия карты находится
тут

- агрегируются 'meta' данные о наличии сертификации, типе лицензии ПО, может ли быть импортозамещено, какой язык программирования, какие виды отчетов и иное
- вся верстка натянута на ' mkdocs material'
- мы принимаем 'pull requeste' на изменения для того, что бы эта карта шарилась и мы могли работать в едином поле с комьюнити. Сейчас релиз будет пофикшен и скоро мы зальем вот
сюда
и опубличим, а тебе достается из первых рук то, что имеется на сейчас
- имеется фильтрация по 'meta' данным
- убрали некоторые инструменты, которые не поддерживаются или пользуются меньшей популярностью, вследствие чего они не обновляются
- актуализировали списки инструментов, на сейчас готовятся правки по ткстам и добавление материалов описания
- добавили MLSecOps, то есть быть в тренде 😅


Release v.1.1.2 можешь посмотреть тут с артефактами и описанием как разворачивается, и да, не забывай про лицуху и уведомление.

Stay Tuned 🙏

#appsec #devsecops #roadmap #specialty #toolchain #techsolution #gost #paper
🔥4❤‍🔥3