❌

Reading view

Между кодом и продом: место DAST в SSDLC

Последние два года DAST (Dynamic Application Security Testing или динамическое тестирование безопасности приложений) на схемах DevSecOps рисуют одинаково: прямоугольник после deploy, внутри — ZAP или Nuclei. Сканер получил адрес стенда, вернул отчет, джоба позеленела. Только по зеленой джобе не понять, что проверено. Скан вполне мог закончиться без серьезных находок, потому что до них просто не дошел.

Меня зовут Даниил Слюсарь, я руковожу разработкой продуктов AppSec в Positive Technologies. Разберем, что внутри этого прямоугольника, какие задачи он решает, где ему место в конвейере и почему без него полноценной защиты не получится. В конце статьи приведен чек-лист по правильной интеграции DAST в конвейер разработки. 

Читать далее
  •  

Эра AI-Driven Zero-Day: как уязвимость PHP2Shell навсегда изменила DevSecOps и кибербезопасность

Прошла неделя с «чёрной среды» 21 октября, когда европейские правительства экстренно гасили свои веб-сервисы из-за критического RCE в ядре PHP (CVE-2026-109618 / 19). Первая волна паники и ночных патчей улеглась, и самое время признать главное: инцидент PHP2Shell — это не просто очередной громкий баг. Это водораздел, разделивший кибербезопасность на «до» и «после».

Впервые в истории уязвимость уровня CVSS 10.0 в элементе инфраструктуры, удерживающем ~70% веба, была найдена ИИ-моделью нового поколения в рамках автоматического аудита.

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

Проблема парсинга multipart/form-data в PHP годами оставалась в «слепой зоне». Этот кусок кода не трогали десятилетиями из-за священной коровы PHP — обратной совместимости. Человек, глядя на этот код, подсознательно доверял ему: «Раз оно работает с 2000-х и до сих пор не упало, значит, там всё проверено».

ИИ-модели (в данном случае GPT-5.6 Sol от Calif и наработки Wiz) лишены человеческих когнитивных искажений и авторитетов. Нейросеть просто скормила ядро PHP математической модели, построила граф зависимостей и нашла пограничное состояние (edge case), при котором обработка POST-запроса приводила к переполнению буфера до того, как управление передавалось самому веб-приложению.

Главный вывод: ИИ доказал, что «проверенный временем код» — это миф. Нейросети стали идеальными археологами уязвимостей.

Читать далее
  •  

Чёрный октябрь уязвимостей: что задело мой сервер, как я закрыл дыры и почему ушёл на статику без инлайн-скриптов

У меня круглосуточно работают агенты мониторинга: они собирают бюллетени безопасности и сверяют их с тем, что стоит на серверах. В октябре они подняли сводку: 15 уязвимостей за месяц, все «critical» и «high» — PHP, Nginx, Node.js, Next.js, Java, GitLab. Я проверил каждую строку руками: что это на самом деле, задевает ли меня и чем это лечится.

Итог: две строки меня действительно задели — Node.js был не обновлён четыре дня, а заплатки Nginx не стояли, хотя автообновление включено. Две строки оказались не тем, чем кажутся. А PHP-уязвимости меня не задели по самой простой причине: PHP на сервере нет.

В статье — разбор всех 15 с командами проверки и лечения, почему я снял с сайта все сторонние скрипты и не оставил ни одного инлайн-скрипта, строгая CSP целиком, дыры, которые я нашёл у себя за два месяца, и чек-лист.

Читать руководство
  •  

DevSecOps для тех, кто не безопасник: как встроить SAST, SCA и поиск секретов в CI/CD

Прилетает задача: «нужно прикрутить безопасность к пайплайну». Берёте популярный сканер, втыкаете в CI/CD с дефолтным конфигом — и через десять минут пайплайн с треском падает под лавиной из 480 предупреждений. Через неделю постоянных ложных блокировок команда просто забивает на алерты: безопаснее не стало, релизы замедлились, а при слове «DevSecOps» все раздражаются.

Проблема не в инструментах, а в подходе. Разбираем, как собрать минимальный рабочий пайплайн с SAST, SCA и поиском секретов, который ловит реальные угрозы и не тонет в ложных срабатываниях. Для тех, кто не безопасник.

Собрать за вечер →
  •  
❌