Автономните агенти за киберсигурност стават все по-добри в откриването на уязвимости. Никой обаче няма добър начин да измери колко са добри. Насочвате такъв агент към реалистична цел и това, което получавате обратно, е доклад, написан от самия агент: уверено формулиран текст, списък с констатации и никакъв начин да разберете кои от тях действително са се случили. След това специалист по киберсигурност сяда и проверява всяко твърдение спрямо целта. Кои констатации са реални, кои са дубликати, кои са измислици и — въпросът, за който никой няма време — какво така и не е опитал агентът? Това е цял ден експертна работа за едно-единствено изпълнение. Помножете го по три модела, четири варианта на подкана (prompt) и десет повторения, и опашката за преглед става по-дълга от самия експеримент.
XRanges for AI, разработен от CTF.ae, съществува точно за този цикъл. Той внедрява реалистични целеви приложения с вградени инструментариуми за мониторинг във всяка услуга, записва какво всъщност прави агентът вътре в тях и оценява всяко изпълнение в реално време въз основа на четири независими сигнала. Този преглед покрива начина му на работа, как изглежда едно изпълнение от внедряването до сравнението и къде е бил подложен на стрес тестове.
Проблемът с обратната връзка
Екипите, създаващи агенти за автономен пентестинг или откриване на уязвимости (bug bounty), обикновено споделят сходен работен процес. Изгражда се цел, която изглежда като истинска компания, пуска се агентът и се чете резултатът. Проблемите започват именно от изходния резултат.
Агент, който твърди, че е експлоатирал дефект в контрола на достъпа, може наистина да го е експлоатирал, може само бегло да се е докоснал до намек за него или може просто да си го е измислил. Докладът изглежда по идентичен начин и в трите случая. Освен това докладът съдържа само онова, което агентът е открил. Той мълчи за четиридесетте функционалности, които агентът никога не е отворил, за API интерфейса, който никога не е обходил, и за втората уязвимост, намираща се в същата крайна точка (endpoint), където е открил първата. Има го и агентът, който изтрива таблица или отменя всеки API ключ по пътя си към дадена констатация. Никой клиент не би приел такъв результат, а нищо в списъка с констатации не го отчита.
Ръчният преглед се справя с едно изпълнение. Той обаче не може да се справи с матрицата от експерименти, от която един екип по AI инженерство наистина се нуждае — много модели, много конфигурации, много повторения, сравнени обективно.
Какво представлява XRanges for AI
XRanges for AI е единно работно пространство за цялостна оценка. То се състои от две части.
Първата е библиотека с референтни цели (benchmarks). Всяка от тях е пълноценно приложение, а не просто набор от пъзели или предизвикателства: компания с множество услуги, със собствена бизнес логика, генерирани данни, фонови задачи и симулиран потребителски трафик, изградена на няколко езика и рамки (frameworks), защото точно така се създава реалният софтуер. Всяка цел съдържа 20 или повече внедрени уязвимости — от едноетапни дефекти до вериги, които пресичат границите между услугите, включително уязвимости от тип нулев ден (zero-day), открити от самите изследователи на CTF.ae. Нищо от това не съществува в публичните масиви от данни за обучение, което става все по-важно с всеки изминал месец.
Втората част е слоят с инструментариум за мониторинг. Всяка услуга във всяка цел изпраща структурирана телеметрия чрез OpenTelemetry. Инструментариумът е написан на ръка от инженери по приложна сигурност и софтуерни инженери специално за съответната цел. Общият HTTP логинг би пропуснал по-голямата част от съществената информация. Платформата на ai.xranges.com обработва телеметрията за всяко внедряване и я превръща в четири оценки, които се обновяват, докато агентът все още работи.
Четирите сигнала
Всяко внедряване се оценява по четири показатели, избрани така, че да бъдат независими един от друг. Агентът не може да подобри един от тях за сметка на друг, и тази независимост е целият смисъл.
Покритието (Coverage) дава отговор на въпроса дали агентът е проучил целта. Всяка функционалност, достъпна за потребителя, представлява точка на покритие, формулирана като бизнес действие, а не като URL адрес: регистриран акаунт, разгледани обяви за работа, отворен споделен разговор, стартиран код в оценка. Дадена точка на покритие е достъпна само чрез нормална употреба, никога чрез експлойт, така че оценката е чиста мярка за това колко старателно агентът е обходил легитимната повърхност. Недокоснатите точки са слепите петна на агента, описани по име. Повечето екипи намират този списък за по-полезен от самата оценка.
| Точките на покритие са бизнес действия, всяка с времева линия на достигане. Недокоснатите точки са слепите петна на агента. |
Границите (Boundaries) дават отговор на въпроса дали агентът е спазил правилата за ангажираност (rules of engagement). Всяка цел се доставя със защитни правила като „не трябва да изтрива съдържание за назначения“ или „не трябва да отменя API ключове“. Нарушението се записва в момента на извършването му, заедно с контейнера и времевия отпечатък. Очакването е за нула нарушения. Всичко останало е констатация за самия агент, а не за целта, и обикновено е от по-спешен характер.
| Правила за ангажираност за всяка цел, като всяко се проследява за нарушения по време на цялото изпълнение. |
Експлоатирани (Exploited) дава отговор на въпроса кои уязвимости всъщност е експлоатирал агентът. Всяка уязвимост е дефинирана като верига на унищожение (kill chain) от последователни фази — от първия контакт с уязвимата повърхност до сигнал за експлоатация, който се задейства само при успех. Тъй като всяка фаза се открива отвътре от самата цел, платформата знае коя стъпка е завършил агентът и къде е спрял, независимо от написаното в неговия доклад. Триетапна верига за контрол на достъпа, която е спряла на втората стъпка, се показва точно като такава: две от три, с времеви отпечатъци.
Целостността (Integrity) дава отговор на въпроса дали целта е оцеляла. Проверките за целост се изпълняват всяка минута и потвърждават, че приложението все още е функционално изправно: начално качените данни (seed data) са налични, услугите отговарят с правилното съдържание, междинното доверие между услугите е непокътнато. Неуспешната проверка носи наказание независимо от причината. Тя улавя агента, който е открил грешка, разрушавайки средата около нея.
Четирите компонента се формират в една обща оценка, като тази оценка е най-малко интересната цифра на страницата. Подробната разбивка е мястото, където е същинската работа.
Едно изпълнение от начало до край
Целта се внедрява като изолирана среда от множество контейнери за около деветдесет секунди. Платформата изпълнява до хиляда внедрявания едновременно, така че AI инженерите, софтуерните инженери и инфраструктурният екип могат да провеждат свои собствени експерименти, без да чакат на опашка един след друг.
След това агентът се стартира самостоятелно срещу крайната точка на внедряването. Платформата никога не застава между агента и целта. Тя наблюдава отвътре.
Докато агентът работи, времевата линия записва какво всъщност е направил той, съпоставено с бизнес функционалността: прегледал е обява за работа, изпратил е корпоративна заявка, генерирал е API ключ. Инженерите, които искат суровите данни, могат да четат потока от OpenTelemetry директно и да го заявяват с език за заявки към логове, който поддържа регулярни изрази и филтри по атрибути. Когато агентът докладва нещо, което не е в каталога с уязвимости на целта, времевата линия го изяснява. Понякога това е фалшиво положително съобщение (false positive). Понякога агентът е открил реален дефект, който никой не е заложил умишлено, което се е случвало повече от веднъж.
Повторното тестване не означава втора лаборатория. Уязвимостите могат да бъдат превключвани или отстранявани на място в работеща среда. Някои корекции за сигурност се прилагат по време на работа. За други е необходимо рестартиране от минута или две. И в двата случая агентът се тества отново спрямо същата среда със същото състояние.
Всяка среда носи и персонализирани метаданни: име на модела, версия на агента, вариант на промпта, инженера, който го е стартирал. Средите са групирани, а дадена група показва средния и най-добрия резултат от всички нейни изпълнения, плюс преглед по уязвимости кой подход коя верига е завършил. Изпълненията едно до друго са начинът, по който вариацията се отделя от подобрението. Единично изпълнение доказва много малко и платформата е изградена въз основа на това предположение.
| Две изпълнения на една и съща цел едно до друго, разбити по сигнал. |
Автоматизация
Всичко в конзолата е достъпно и чрез API и сървър с Model Context Protocol с bearer токен. Внедряването на група от цели, стартирането на агента, извличането на покритието и прогреса на веригата на компрометиране (kill-chain), както и събирането на съпоставката накрая, могат да се изпълняват от CI пайплайн или от чат асистент, без никой да наблюдава. Конзолата е за хората, които четат резултатите. API е за матрицата от експерименти.
Полево доказателство: 48 часа на DEF CON 34
Bug Bounty Village организира CTF на DEF CON всяка година за общността на ловците на бъгове и това е едно от най-добрите неща, които се случват там. За изданието на DEF CON 34 през август 2026 г. CTF.ae изгради целта: Xenoptic, фиктивна компания за изкуствен интелект със сложен обхват. Всеки от 545-те регистрирани играчи получи свое собствено изолирано копие на цялата компания, а XRanges for AI наблюдаваше всеки един от тях през пълните 48 часа.
Причината беше справедливостта. Състезание като това се оценява въз основа на изпратени доклади, а самият доклад не казва нищо за това как играчът е стигнал дотам. Някой може да попадне на непредвиден бъг, който разкрива всички флагове наведнъж, или да донесе CVE отвън, да излезе от контейнера и да събере флаговете, без да докосва приложението. На DEF CON това е разумно предположение. CTF.ae трябваше да види как всеки играч и агентът на всеки играч наистина се придвижват през средата, така че подаденото да може да бъде проверено спрямо това, което действително се е случило в средата на този играч.
Това е, което платформата осигури. В над 850+ среди тя предаваше поточно същите четири сигнала, които сега използва при агентите:
- Целостност (Integrity) потвърди, че всяка среда е останала в изправност.
- Граници (Boundaries) записа всеки, който е излязъл извън правилата за ангажираност.
- Покритие (Coverage) показа колко от целта всъщност е обработил всеки играч.
- Експлоатирани (Exploited) записа кои уязвимости наистина са били експлоатирани и на коя стъпка, така че всяко изпратено решение да може да бъде проверено спрямо реален път.
Всичко това идваше от вътрешността на целта, а не от машината на играча. Стотици едновременни среди под постоянна атака от опитни изследователи е по-труден тест от един агент в една лаборатория. Същите инструменти за измерване сега оценяват агенти.
За кого е предназначено
XRanges for AI е за екипи, разработващи автономни агенти за сигурност, които трябва да знаят какво е направил техният агент, а не какво е казал, че е направил. Услугата работи като управлявана облачна услуга или самостоятелно хоствана върху собствената инфраструктура на клиента, където нищо не напуска тяхната среда. Екипите, които искат да поставят агент срещу цел, която той никога не е виждал, могат да се свържат с нас!