TGStat
TGStat
Qidiruv uchun matnni kiriting
Ilg‘or kanal qidiruvi
  • flag Uzbek
    Sayt tili
    flag Russian flag English flag Uzbek
  • Saytga kirish
  • Katalog
    Kanal va guruhlar katalogi Hududiy to‘plamlar Tematik to‘plamlar Платные каналы Kanallar qidiruvi
    Kanal/guruh qo‘shish
  • Reytinglar
    Kanallar reytingi Guruhlar reytingi Postlar reytingi
    Brendlar va shaxslar reytingi
  • Analitika
  • Postlarda qidiruv
  • Telegram'ni kuzatish
  • Targ‘ibot
    Yandex Business orqali reklama TGStat Agency orqali kanallarda reklama TGStat.ru saytida reklama
StringConcat - разработка без боли и сожалений

11 Aug, 11:38

Telegram'da ochish Ulashish Shikoyat qilish

Тут опять произошло прекрасное.

Исследователи из JFrog решили проверить, что там с найденными (как выяснилось, в основном ИИ) уязвимостями в SQLite, и оказалось, что из 55 зарегистрированных CVE реальной была всего одна, а остальные — обычные галлюцинации ИИ: тут и выдуманные методы, и несуществующие пути эксплуатации, и нерабочие эксплоиты, и прочие радости жизни. Самое фиговое, что эти уязвимости уже успели попасть в CVE. То есть в следующем релизе вполне возможно, что какой-нибудь сканер начнет сношать вам мозг относительно критической уязвимости, которой никогда не существовало.

Можно подумать, что ИИ тут бесполезна. Но нет.

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

Вторая полезная штука — проверить наличие или отсутствие проверок безопасности. Но тут есть важный момент (и, кстати, он справедлив и для первого случая). Эти проверки должны быть единообразны и желательно централизованы.

Условно, если у вас простая модель разделения доступа, то на каждом контроллере должна быть аннотация @Secured (или что-то подобное), а не где-то глубоко в DAO. Иначе вы просто сожжете токены ибо ИИ не сможет понять, что именно является правилом, а что случайностью.

Вообще, для таких критичных вещей я большой фанат подхода fail fast. В одном из проектов мы сделали следующим образом: если в конфигурации явно не задано, какая роль нужна для контроллера (или он не добавлен в список исключений), приложение просто не стартует. Что-то вроде: .addRole(SomeController::method, Roles.ADMIN)

Но это довольно примитивный случай. Проблемы начинаются дальше. Например, нам нужно проверить не просто наличие роли, а доступ к конкретному ресурсу. Пользователь может видеть только свои счета, свои документы и т.д. Тут уже одной аннотации с ролью на контроллере может быть недостаточно. И вот здесь как раз хорошо работает комбинация из архитектурных правил, статического анализа и ИИ. Допустим, мы договариваемся, что любой Use Case, который работает со счетом, обязан использовать интерфейс безопасности: CheckHasAccountAccess(accountUID)

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

Конечно, это не панацея и не заменяет нормальные тесты и security review. Но вероятность забыть критичную проверку становится заметно ниже. Мне вообще кажется, что именно в этом сейчас одна из самых сильных сторон ИИ. Мы не пытаемся заставить его быть магическим сканером уязвимостей, который найдет неизвестную дыру в миллионах строк кода, а использовать его как дополнительный слой контроля за тем, что ваши собственные правила действительно соблюдаются. Но для этого сначала нужно эти правила иметь . Если у вас просто сопли, размазанные по всему проекту, слоям и сервисам (99% того что я видел выглядит именно так), то ИИ просто поможет вам быстрее расстаться с бюджетом
SQLite Critical CVEs or LLM Slop? | JFrog
The JFrog security research team recently identified a supply chain attack targeting the `xinference` package on PyPI. Versions 2.6.0, 2.6.1, and 2.6.2 were compromised and yanked by maintainers after users reported suspicious behavior. If you installed or imported these versions, you must assume yo...

1.6k 0 9 6 27
Katalog
Kanal va guruhlar katalogi Kanallar to‘plamlari Kanallar qidiruvi Kanal/guruh qo‘shish
Reytinglar
Telegram-kanallar reytingi Telegram-guruhlar reytingi Postlar reytingi Brendlar va shaxslar reytingi
API
Statistika API'si Postlar qidiruvi API'si API Callback
Kanallarimiz
@TGStat @TGStat_Chat @telepulse @TGStatAPI
O‘qish
Академия TGStat Telegram tadqiqoti 2019 Telegram tadqiqoti 2021 Telegram tadqiqoti 2023
Kontaktlar
Справочный центр Qo‘llab-quvvatlash Email Vakansiyalar
Har xil narsalar
Foydalanuvchi shartnomasi Maxfiylik siyosati Ommaviy oferta
Botlarimiz
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot