A benchmark módszertana

Mit mérünk, mit nem, és miért

A benchmark azért létezik, hogy ellenőrizzék, nem azért, hogy csodálják. Ez az oldal megadja a pontos határait: mit fednek le a közzétett számok, mit hagynak ki szándékosan, és mely képességeink nem redukálhatók tisztességesen egy százalékra.

Mit mér a benchmark

Egyetlen kérdés, kézzel megítélt projektek verziózott korpuszán feltéve: egy fájl esetében, amelyről már döntöttünk, jelenti-e a motor az ott lévő sebezhetőséget, a megfelelő soron, anélkül, hogy olyat jelentene, ami nincs ott?

Verziózott korpusz
Minden eset egy kis projekt, amely a legkisebb kódot tartalmazza, amely egyetlen sebezhetőséget mutat be, vagy biztonságosan elkerül. Mindegyikhez tartozik egy megjegyzés arról, hogy mi a hiba, mi a várt eredmény és miért. A korpusz verziózott: a megváltoztatása a közzétett számok megváltoztatása.
A kódról írt referenciaigazság
A várt eredmény a kódról hozott ítélet, amelyet a motor futtatása előtt döntünk el, soha nem annak leírása, amit a motor előállított. Ha a kettő eltér, először a motort vizsgáljuk. A motor kimenetéhez igazított címke semmit sem mér, és korrigálnunk kellett olyan címkéket, amelyek ebbe az irányba csúsztak.
A szállított futószalag
Minden esetet úgy elemzünk, ahogy egy ügyfélvizsgálat fut: a teljes vezénylő maximális mélységen, külső szkennerek nélkül, modell nélkül a hurokban. A számok azt a motort írják le, amelyet mindenhová azonos formában szállítunk, nem egy alkalomra összeállított laborkonfigurációt.
Helyes kód, szándékosan
A korpusz harmada olyan kód, amely nem sebezhető, nagyrészt egy sebezhető eset javított változata. A csak sebezhetőségekből álló korpusz nem tud téves riasztást felfedni, és éppen a téves riasztások miatt hagyják abba egy biztonsági eszköz olvasását.

Mit nem mér a benchmark

A Cybseco szállítja ezeket. A benchmark oldalán egyetlen szám sem írja le őket, és mindegyikhez tartozik az indoklása. A hallgatólagosan kihagyott képesség olyan képesség, amelyről az olvasó azt feltételezi, hogy a számok lefedték.

  • Dependency vulnerabilities (SCA) — Produced by external scanners that read a live vulnerability database. Their output changes when the database changes, with no change to Cybseco, so a precision figure measured today would describe the database rather than the engine and would not reproduce tomorrow.
  • Standalone secret scanning — Gitleaks is an external binary and is not installed for this benchmark. Hardcoded credentials found by Cybseco's own analyzers are measured, inside the code and CI/CD layers, under CWE-798 and CWE-532.
  • Third-party SAST (Semgrep, Bandit) — An external ruleset Cybseco orchestrates but does not author. Measuring it would report Semgrep's accuracy, not Cybseco's.
  • Licence compliance policy — A policy decision about a project's licences, not a judgement about its code. The corpus labels vulnerabilities, so a licence finding has nothing to be right or wrong against here.
  • LLM-assisted analysis — Its output depends on a model and a prompt rather than on the engine, and it is not part of the deterministic result this benchmark measures.
  • Graph, attack paths, decision engine — A different kind of claim: these produce paths and plans, not findings, so precision and recall over labelled lines cannot express them. The methodology page explains what could be measured, and which of these cannot honestly be reduced to a percentage at all. Publishing a number before the method is settled is how a benchmark stops being evidence.

Miért nem százalék némelyik képesség

Az észlelésnek van helyes válasza: a sebezhetőség azon a soron van, vagy nincs. Amit a Cybseco részben csinál, az másfajta állítás, és a precizitás és a fedés ezt nem tudja kifejezni. Mégis közzétenni egy számot lenne a legkönnyebb ezen az oldalon, és a leggyorsabb módja annak, hogy elveszítsük a vitát valakivel, aki figyelmesen olvas.

Az architektúragráf
Ténybeli állítás: ezek az eszközök léteznek, és ezek a kapcsolatok állnak fenn köztük. Mérhető, és ez az első, amit mérni szándékozunk. Ehhez kézzel annotált teljes repozitóriumok korpuszára, két független értékelőre, valamint a köztük lévő egyetértésnek a pontszám mellett való közzétételére van szükség. Ennél kevesebb az annotálási folyamatot méri, nem a kinyerőt.
Támadási útvonalak
Ténybeliek, de csak akkor, ha valaki megmondja, mivel indul a támadó. „Egy támadó elérheti az adatbázist” se nem igaz, se nem hamis, amíg meg nem mondja, hogy névtelen látogatóként, hitelesített felhasználóként vagy kompromittált build-futtatóként indul-e. Ugyanaz a motor az egyik feltevés mellett igazat mond, a másik mellett téved, így az a szám, amely mellett ez a feltevés nincs kinyomtatva, nem reprodukálható.
Kontextuális priorizálás
Állítás arról, mi számít jobban, és nincs olyan tény, amely a céltól függetlenül fennállna. Egy bevétel előtti startup és egy szabályozott bank ugyanazt a repozitóriumot olvassa, és mindkettőnek igaza van, amikor másként rangsorolja. Bármilyen helyes sorrend, amelyet közzétennénk, a saját termékvéleményünk lenne, egy olyan referenciaigazsághoz mérve, amelyet szintén mi írtunk.
A döntési motor
Cselekedj most, tervezz, ellenőrizz: ajánlás egy szabályzathoz mérve, és a szabályzat termékdöntés. Tesztelhetjük, hogy követi-e a saját szabályzatát, hogy egyetlen találat sem esik ki csendben, és hogy minden ajánlás létező bizonyítékra hivatkozik. Ez megfelelőségi teszt. Pontosságnak nevezni pontosan azt a félreolvasást hívná elő, amelynek megelőzésére ez az oldal íródott.

Hogyan olvassuk a számokat

Négy dolog, amit érdemes tudni, mielőtt bármely egyedi számból következtetést vonna le a benchmark oldalán.

Mintaméret a százalék előtt
Minden réteg megmutatja, hány találatból számoltuk a precizitását. A kis mintájú rétegek a nemrég hozzáadottak, és a számaik mozdulni fognak, ahogy a korpuszuk növekszik. Ez éppúgy a hízelgő sorok ellen szól, mint a kínos ellen: kilenc találatból kapott tökéletes eredmény gyenge állítás, nem erős.
Minden téves riasztást közzéteszünk
Azokat a találatokat, amelyeket a motor nem sebezhető kódon állít elő, a hibás elemzővel és a találat hibás voltának okával együtt soroljuk fel. Ezeket a precizitás ellenében számoljuk, soha nem hagyjuk ki belőle. Három közülük pontosan arra az enyhítésre tüzel, amelyet maga a szabály ajánl, és éppen ez az a fajta hiba, amelynek felszínre hozására, nem pedig elnyelésére, a benchmark létezik.
Az LLM-réteg az Ön kódját elemzi
Az alkalmazás saját integrációs kódját olvassa LLM- és ügynökhibák szempontjából: parancsértelmezőig jutó modellkimenet, promptba helyezett hitelesítő adat, bármit futtatni képes ügynökeszköz. Nem a Cybsecoen belüli mesterséges intelligencia mérőszáma. Ez a benchmark a determinisztikus motort futtatja, modell nélkül a hurokban.
Az ismert hiányosságokat megnevezzük
Az a sebezhetőség, amely valós, de a motor jelenlegi hatókörén kívül esik, elfogadott hiányosságként kerül rögzítésre, kimarad a fedésből, és felsoroljuk. A korlát rögzítése az a mód, ahogyan egy jövőbeli fejlesztés mért nyereségként jelenik meg, ahelyett hogy ma állítanánk.

Szabályok, amelyekhez tartjuk magunkat

Ezek ránk vonatkozó megszorítások, nem a termékről szóló állítások. Éppen ezek teszik a számokat olvasásra érdemessé.

  • Bármit, amit a Cybseco bejelent, vagy megmértük, vagy ezen az oldalon hatókörön kívüliként neveztük meg. Harmadik állapot nincs, és egy automatikus kapu elbuktatja a buildet, ha egy elemző e kettő egyike nélkül kerül szállításra.
  • A referenciaigazság a kódot írja le, és a motor futtatása előtt dől el. A motor kimenetéhez igazított címke nem bizonyíték.
  • Egy számot azzal a mintával együtt teszünk közzé, amelyből számoltuk.
  • Az általunk ismert hibát közzétesszük, nem zárjuk ki a mérőszámból. A kapu akkor is elbukik, ha egy közzétett hiba csendben megszűnik reprodukálódni, így a lista csak tisztességesen rövidülhet.
  • Semmilyen összehasonlítás más termékkel olyan képességeken, ahol mi választanánk meg az ő konfigurációjukat, az ő korpuszukat és a forgatókönyvet. Ilyen összehasonlításnak senki sem hihet, mi sem.
  • Semmilyen szám, mielőtt a módszertana nyilvános és a referenciaigazsága megvizsgálható lenne.

Nézze meg, ahogy a Cybseco egy valós rendszerről következtet

Nézze meg az interaktív demót, majd igényeljen vezetett próbát a csapatának.