На початку цього місяця ми виграли баг-баунті на $2,5 млн – найбільший баунті, який будь-коли отримував ІІ-агент. Це був баг у великому блокчейні, який наражав на ризик понад $100 млн коштів. Ми знайшли цей баг повністю автономно за допомогою V12, нашого агента з кібербезпеки, та працювали разом із командою, щоб усунути проблему.
V12 – це не типовий агентний інструмент для кібербезпеки. Він регулярно знаходить критичні баги, як-от цей, серед незліченної кількості 0day-вразливостей (включно з Linux LPE, обходом QEMU, Firefox UXSS, двонаправленим RCE у Postgres і Redis). Це тому, що хоча ми й будуємо продукт, наша головна місія – досліджувати та створювати небезпечно потужні інструменти наступальної безпеки. Щоб це стало можливим, ми залучили $10 млн на посівному раунді, який очолив Electric Capital, за участі ZachXBT, samczsun, Walden Yan та інших.
Ми заохочуємо вас спробувати V12 самостійно. Він працює за принципом самообслуговування, і ви отримаєте $200 безкоштовного використання після реєстрації протягом наступних семи днів.

Частина 1: Що ми робимо
Наша мета – створити кібер-ядерну бомбу. Це означає створення чогось, що може знаходити всі баги в системі. Це особливо цікаво, оскільки така можливість дозволила б експлуатувати програмне забезпечення, яке раніше вважалося безпечним. Досі це було неможливо, але передові ІІ-моделі змінюють це.
Ми не займаємося пент-тестуванням. Чорно-скриньковий пент-тест, який моделює зовнішнього атакуючого, нам нецікавий. Це перенасичений ринок, і ми не хочемо створювати ще один продукт, який кидає XSS-пейлоади. Агентний пент-тест чудово підходить для пошуку деяких багів, але ми хочемо щось таке, що знаходить всі баги. Це неможливо без читання та розуміння коду. Ми маємо зосередитися на аудиті коду методом білого ящика, що більше схоже на дослідження вразливостей.

мем: LiveOverflow
Конкретніше, це виглядає як система, яка може аналізувати код та всі базові абстракції, навіть створюючи нові (наприклад, дивні машини). Ми хочемо систему, яка не просто знаходить баги, а може вигадувати абсолютно нові класи багів. Водночас це також сфера безпеки, яка найбільше опиралася автоматизації. Багато досліджень вразливостей виглядають як ретельне обмірковування коду та доведення собі: «ні, це не може мати багів» або ж роздуми: «стоп, а що якщо…?». Усе це потребує інтелекту на рівні людини, який досі неможливо було масштабувати.
Отже, коротко: ми хочемо ІІ-систему, яка приймає довільно велику та складну кодову базу, аналізує, як вона насправді працює, а потім використовує це розуміння, щоб винаходити – а не просто виявляти – баги та експлойти.
Звісно, система, яка справді може знайти всі баги, насправді неможлива; це замаскована проблема зупинки. Це еквівалентно доведенню, що щось не має багів, де експлойти є контрприкладами. Ви можете створювати програми, які довільно складно експлуатувати. Наприклад, програму, яка вразлива, якщо гіпотеза Колаца хибна. Але ми маємо намір розширювати межі та побудувати найближче наближення, яке практично можливе.
І нікому нас вести
Припустімо, ми справді побудували кібер-ядерну бомбу. Що далі?
Враховуючи вибух наступальних можливостей, світ кардинально зміниться. Однак нереалістично очікувати, що розробники – особливо корпоративні – раптово адаптуються самі. Зрілі організації не мають бачення чи експертизи, щоб належним чином здійснити цей перехід. Їм також потрібні рішення – працюючі, добре спроєктовані продукти – а не просто «набір інструментів».
Щодо здатності організацій адаптуватися: легко вказувати на нові моделі найвищого рівня та стверджувати, що кібербезпеку вирішено. Зовсім інша справа – щоб розробники реально використовували моделі для захисту свого коду. Середньостатистичний розробник досі просить Claude або Codex «перевірити мій PR на баги», а потім «добре, виправ їх». Це зовсім не достатньо! Атакуючі вже використовують складні, агресивні стенди та конвеєри для пошуку багів. Тут є асиметрія. Захисники не мають ані ресурсів для створення таких конвеєрів, ані можливості амортизувати витрати на багато цілей для полювання на баги. Їм потрібен хтось, хто використає, приборкає та розгорне ці моделі, щоб розкрити їхній повний потенціал.

Тим часом люди зайняті. Вони перевантажені спробами встигнути в дедлайни та випускати фічі з роадмапу. У них немає часу думати про безпеку; вони хочуть, щоб хтось – або щось – прийшло й виправило все за них. Воно має вбудовуватися безпосередньо в їхню організацію (тобто в їхній Slack), розуміти їхній робочий процес (ви користуєтеся GitHub? як призначаються баги? що ви використовуєте для відстеження задач? які агенти ви використовуєте?) і бути адаптованим до їхнього контексту.
З тієї ж причини захисники програють, якщо в них немає продукту, корисного одразу з коробки. Він має бути або повністю самообслуговуваним, або постачатися з персональним впровадженням. Він має мати правильний форм-фактор (CLI? MCP? Slack-агент? GitHub-бот? усе перелічене?); має бути зручним (не гальмувати, працювати на мобільних пристроях, кнопки там, де ви очікуєте, …); має бути осмисленим (ненав'язлива модель білінгу, належний контроль доступу, логічний вибір обсягу аудиту, …). Є мільйон речей, які потрібно зробити правильно, щоб такий продукт справді можна було впровадити.
Отже, коротко: створіть щось, що приймає довільно складні програми, повністю їх аналізує та знаходить нові баги. Потім упакуйте цю можливість у корисний продукт і ведіть розробників за руку, щоб вони могли реально ним користуватися й отримувати зиск.

Частина 2: У що ми віримо
Гаразд, тож як ми насправді збираємося це здійснити? Будь-який конкретний план дій марний (це компанія на посівній стадії). Розумніше викласти наші керівні принципи та те, як ми прогнозуємо розвиток світу.
Проти «сейфетизму»
По-перше, ми віримо, що найефективніший спосіб захистити програмне забезпечення світу – дати кожному можливості для пошуку багів. Ми не віримо в підхід «зв'яжіться з нами» чи «подайте заявку на доступ». Логічний кінцевий стан – це світ, де всі баги знайдені й виправлені. Обмеження доступу лише сповільнює цей процес. Для мейнтейнерів адаптація до нового ландшафту загроз є незручною, але неминучою, і ми вважаємо, що найкращий підхід – просто знайти всі баги зараз. На практиці це означає озброїти захисників наступальними можливостями, щоб вони могли зміцнювати власний код.

Щоб було зрозуміло: ми хочемо, щоб програмне забезпечення було безпечним і заслуговувало на довіру. Безвідповідально випускати наступальні можливості, до яких світ не готовий. Але значна частина того, що ми нещодавно бачимо як «контрольований доступ» чи «кіберверифікацію», – це позерство та маркетинг. Люди використовують занепокоєння безпекою як привід, щоб насправді нікому не давати доступ – і в процесі не захищати людей у масштабах. Лише цього року V12 захистив користувачів завдяки понад 6 000 аудитам безпеки. Ми не проти безпеки, ми проти гри в безпеку.
Відкрите розкриття
Ми віримо у відкрите розкриття. Відповідальне розкриття буде вважатися застарілим способом повідомлення про баги та їх виправлення. Ембарго та скоординоване розкриття не мають сенсу у світі, де будь-хто з правильними інструментами може знайти вразливість і перетворити її на зброю з мінімальним втручанням людини чи досвідом. Ми бачили це, коли знайшли та повідомили про Fragnesia, Pintheft і DirtyDecrypt – 0day-вразливості Linux LPE, які врешті-решт витекли ще до того, як патчі потрапили в основні ядра. Будь-хто може стежити за публічними комітами та тривіально відтворити озброєний експлойт. Єдине справжнє рішення – повністю усунути розрив у патчах. На практиці це виглядає як частіші (та автоматичні) оновлення й випуск патчів вендорами того ж дня (години!), коли баг знайдено. Зокрема, це означає, що захисникам потрібні надзвичайні можливості для створення PoC та виправлень.
Баг-баунті мертві
Баг-баунті в їхньому нинішньому вигляді будуть мертві, окрім програм придбання вразливостей для винятково цінних багів. Усі інші баги будуть вичерпані наступальними кібер-інструментами, як-от V12, ще до випуску коду, тобто до того, як атакуючі отримають шанс почати пошуки.

Мейнтейнери згинаються під вагою AI-заявок на баг-баунті. Багато хто оголосив про повне припинення баг-баунті. Тепер, коли баги стали дешевшими, ніж будь-коли, єдиними рішеннями є або (1) перестати перейматися більшістю багів, або (2) перестати їх випускати. У минулому обидва варіанти були неприйнятними, оскільки хоча практично весь код має дефекти, аналіз усіх можливих багів був надто дорогим за часом і коштами. Але тепер ми віримо, що це не лише можливо, а й неминуче.
Безпека криптовалют цікава
Криптопроєкти – цікаві цілі та важливий клин для нашої компанії. Ми одержимі пошуком усіх багів, і криптосфера наразі є місцем, де це має найбільше значення. Понад $500 млн було вкрадено через злами лише цього року. Якщо V12 може досягти успіху в криптосфері – якщо ми можемо перемогти у «складному режимі» – тоді ми можемо перемогти будь-де.
За рідкісними винятками (повний ланцюжок iOS?) не існує багів поза криптосферою, які б претендували на семи- чи восьмизначні винагороди. Поза криптосферою $50 тис. досі вважається величезним баунті. У криптосфері критична вразливість, що призводить до втрати коштів, коштує сотні мільйонів доларів, якщо її експлуатувати. Загалом ніхто не хоче ставитися до безпеки серйозно, але криптокомпанії змушені. Це означає, що обираючи продукти безпеки, вони віддають перевагу здатності знаходити баги, а не дашбордам – саме на це оптимізований V12. Тим часом поза криптосферою безпека досі обертається навколо культури відповідності (compliance), а не суті.
Усе програмне забезпечення вразливе, але світ діє так, ніби це не так. Досі це працювало лише тому, що атакуючих було мало – вузьким місцем були технічні навички. ІІ усуває це обмеження. Тепер, якщо програмне забезпечення не є безпечним, його ЕКСПЛУАТУВАТИМУТЬ.
Вплив посилюється тим фактом, що світ дедалі більше онлайн, і більша частина світу тепер змістовно існує «в комп'ютері». Усе має стати набагато безпечнішим дуже швидко, і це виглядає як значно більше команд, які ставляться до безпеки так само серйозно, як криптокомпанії.

До речі, щоб розвіяти поширену хибну думку: криптокодові бази є нетривіальними за розміром, складністю та різноманітністю. Firedancer – це 722 тис. рядків високооптимізованого коду на C, Geth + Prysm – це 1,1 млн рядків на Go, Zcash – 304 тис. рядків на C++ та Python (лише Orchard – це 44 тис. рядків схем і криптографії на Rust). Усі вони містять віртуальні машини, низькорівневий системний код і розподілені бази даних. Для контексту: Postgres і CPython мають близько ~1 млн рядків коду.
Час справжньої безпеки
Програмне забезпечення світу завжди було вразливим, але тепер це неможливо ігнорувати. Сучасний веб залежить від безпечної криптографії та браузерів, передові моделі покладаються на TEE для захисту ваг, а інновації в робототехніці та біології лише підвищать важливість безпеки. По суті, весь код зрештою стає кодом високої довіри.
Не забувайте про зростаючу складність ланцюгів постачання програмного забезпечення. Багато коду, про який ми не замислюємося, буде (або вже є) кодом високої довіри. OpenSSH безумовно спадає на думку, але що з усіма пакетами, про які ми забули? Інтернет залежить від програмного забезпечення, на яке ніхто не дивиться.
Те, як безпека здійснюється зараз, не спрацює. Вона є запізнілою думкою та виконується за принципом «наскільки зможемо». Команди зосереджуються на розробці фіч і роблять безпеку чиєюсь чужою відповідальністю. Більшість продуктів безпеки схожі на пластирі, які лікують симптоми багів, а не на справжні рішення. Але у світі з потужним ІІ, якщо є хоча б один баг, хтось його знайде й експлуатує.
Натомість безпека має бути безперервною та всеохопною – кожен прийнятий PR має бути без уразливостей. Шлях до цього буде нелегким, і ми ще не все зрозуміли. Ніхто не зрозумів. Але фундаментальна проблема, до якої все зводиться – пошук багів – це те, чим ми були одержимі останні 10 років. До V12 ми заснували Zellic, одну з провідних фірм безпеки у світі, яка провела понад 1500 аудитів безпеки для понад 500 клієнтів, що найчастіше піддаються атакам (наприклад, криптобіржі, мости, L1, гаманці, відкриті операційні системи). А ще раніше ми заснували perfect blue, команду №1 у світі з CTF протягом 3 років.

Кожна людина в команді V12 має досвід або з CTF, або з дослідження вразливостей. Подивіться, що ми вже знайшли: численні Linux LPE, обхід QEMU, червоподібні RCE у Redis і PostgreSQL (двонаправлені!), MariaDB та Anydesk. І що ще більш багатообіцяюче – будь-яке нове програмне забезпечення, на яке ми нацьковуємо V12, видає баги безперервно: емулятор Dolphin, NAS співробітника, месенджер Signal.
Прикінцеві думки
Хороший посівний раунд дає вам найкраще у світі: можливість будувати те, що ви любите, разом із друзями. Ми мріяли про цю проблему – автоматичний пошук усіх багів – ще з підліткового віку. Тепер ІІ нарешті достатньо потужний, щоб ми могли по-справжньому за це взятися. Ми в захваті. Якщо ми маємо рацію, те, що ми будуємо, буде небезпечно могутнім, і світ адаптується навколо цього.
Ми хочемо бути тими, хто це зробить. Якщо V12 звучить як те, частиною чого ви хотіли б бути: приєднуйтеся до нас, ми наймаємо!





