Kaynaklar ve referanslar

Lagune ve Deepsec: yapay zeka destekli iki güvenlik yaklaşımı yan yana

Lagune'yi ve Vercel'in Deepsec'ini çalışma biçimi, yaşam döngüsü, tespit, maliyet, bulgular ve kapatma açısından karşılaştıran bir başvuru sayfası.

Lagune ve Deepsec (v2.2.1), aynı soruna verilmiş iki savunma odaklı yanıttır: yapay zeka destekli geliştirme çağında güvenlik. Çıkış noktaları, başları, ortaları ve sonları, ayrıca kullanıcıya kendilerini nasıl sundukları, mekanikleri örtüştüğü yerlerde bile bilinçli olarak ayrışır.

ipucu

Lagune, Deepsec'ten mi esinlendi? Hayır. Lagune sıfırdan yazıldı ve Spec-Driven Development ile Security Hardening'den esinlendi. İki proje birbirinden bağımsız geliştirildi ve buradaki karşılaştırma, kullanıcıların aralarındaki farkları anlamasına yardımcı olmak içindir.

Bir bakışta​

YönLaguneDeepsec
TürüReferans uygulaması olan bir metodoloji (SDH)Bir ürün: ajan destekli bir güvenlik açığı tarayıcısı
Ağırlık merkeziAjanı bir charter ve talep üzerine yüklenen bilgi yönlendirir, deterministik hook'lar da zemin sağlarGeniş bir regex ağı, zorunlu bir yapay zeka incelemesini besler
Ne üretirSıkılaştırılmış kod, ispatlar ve takip edilen bir bulgu zinciriÖnem derecesine göre sıralanmış, önceliklendirilmiş bir bulgu raporu
Kodunuza dokunur muEvet: harden kodunuzu düzenlerHayır: yalnızca statik analiz yapar, bulgular ve öneri metni üretir
Çalışma ortamıZaten kullandığınız ajan ve modelle, her seviyede çalışırKendi model hattını çalıştırır, varsayılan olarak öncü seviyede bir modelle
BaşlangıçTek bir eklenti kurulumu ya da npx skills add, ardından sade bir dille yönlendirme, ayağa kaldırılacak yeni bir araç yokBir .deepsec/ çalışma alanı kurulur, bağımlılıklar yüklenir ve bir model anahtarı eklenir

Nasıl çalışır​

Lagune ajan önceliklidir: ajan yönetir, kodun ne olduğuna göre bilgiyi talep üzerine çağırır ve karara bağlanabilen bir dilimi deterministik hook'lara devreder.

Deepsec deterministik önceliklidir: geniş bir tarama adayları işaretler ve bu adaylar, zorunlu bir modele neyi inceleyip yargılayacağını gösterir.

YönLaguneDeepsec
SıraCharter ve eşleşen bilgi ajanı yönlendirir, ajan hook'lara devreder ve gerisini kendisi yargılarEşleştiriciler adayları işaretler, model her birini inceleyip yargılar
Deterministik rolBir karar döndüren ya da ajanı hedefe yönelten çok dilli hook'lar, kategori bilgisiyle birlikteZorunlu modelin yargılayacağı adayları işaretleyen eşleştiriciler
Geliştirme akışı/lagune siz kodlarken güvenli kodu yerinde oluştururKodu inceler, yazmaz
Denetim akışıcharter → detect → plan → harden → verifyscan → process → triage → revalidate → report
Yapay zekanın göreviBilgiden yola çıkarak akıl yürütmek, düzeltmeyi uygulamak ve işe yaradığını kanıtlamakHer adayı incelemek ve bulguları raporlamak

Yaşam döngüsü​

Lagune kod yazılmadan önce, yazılırken ve yazıldıktan sonra çalışır. Deepsec ise kod var olduktan sonra bir depoyu inceler.

AnLaguneDeepsec
Kod yokkencharter, belirtilen niyetten bir güvenlik politikası çıkarırMevcut koddan başlar: init bir dizin ister
Geliştirirken/lagune varsayılan olarak güvenli kodu yerinde oluşturur, geride artefakt bırakmazGeliştirme sırasında değil, sonrasında inceler
Mevcut koddadetect → plan → harden → verifyscan → process, temel akış
Sürekli incelemeFazlar kapsama göre yeniden çalıştırılır, paketlenmiş bir CI kapısı yokArtımlı yeniden tarama, CI çıkış kapısı olarak process --diff

Tespit katmanı​

İki deterministik katman doğası gereği zıttır: biri karar verir, diğeri işaretler.

YönLaguneDeepsec
GruplamaKategorilerde gruplanmış hook'lar ve uzmanlıklarDesen ya da framework başına eşleştiriciler
ÇıktıSabit metinli bir karar (finding / review / advisory) ve bir sınıflandırma etiketiKararsız bir aday (slug, satırlar, kod parçası, eşleşen desen)
AyarKesinlik: yorumları dikkate alır, yer tutucu ve pencere korumaları vardırDuyarlılık: geniş ağlar, yanlış pozitifleri sonradan yapay zeka ayıklar
DerinlikOrtak sınıflarda daha derinDaha geniş, ortak sınıflarda daha az derin
Yanlış pozitiflerKaynakta düşük tutulur, ardından bağlam içinde yargılanırBilerek fazla üretilir, bir revalidate geçişiyle azaltılır

Bilgi ve yargı​

İkisi de regex'in taşıyamadığı güvenlik bilgisini taşır. Farkları, bu bilginin nerede durduğunda ve onu kimin şekillendirebildiğindedir.

YönLaguneDeepsec
BiçimDüzenlenebilir markdown modülleri, birkaçının arkasında deterministik bir hook varKısa bir prompt ve teknolojiye özel vurgular, modelin kendi bilgisine dayanır
SeçimKodla eşleştirilir, yalnızca bağlamı mevcut olduğunda yüklenirHer yapay zeka grubuna eklenir, tespit edilen teknoloji için vurgular da eklenir
Kim yazarKullanıcı modülleri düzenler ve specialize ile yenilerini eklerPrompt'un sahibi bakımcıdır, kullanıcı bir INFO.md doldurur
Yargı neredeHook'lar kendi tabanlarına karar verir, ajan gerisini bilgiye dayanarak yargılarMerkezi: tek bir yapay zeka işlemcisi her adayı yargılar
Yeniden kullanımTek bir modül hem detect hem verify fazına yön verirTek bir prompt, tek process aşamasını yönetir

Bulgular ve kapatma​

En çok, bir bulgunun çözüldükten sonra neye dönüştüğünde ayrışırlar.

YönLaguneDeepsec
Önem derecesiMaruziyete ve risk altındaki değerlere göre ayarlanmış bir CVSS v4.0 puanıYapay zekanın verdiği bir önem derecesi ve istismar edilebilirlik ile etkiye göre P0 / P1 / P2 önceliklendirmesi
KararlarRisk closed, not closed ya da cannot tell from the codetrue-positive, false-positive, fixed, uncertain, accepted-risk, duplicate
KalıcılıkÇalışan zincir uzlaştırılır, kapanan bulguların özü bir geçmişe çıkarılırDosya başına yalnızca eklenen kayıtlar, hiçbir şey silinmez
Son durumKapatılabilir: kanıtlanmış bir bulgu takipten çıkar, zincir durgunlaşabilirHer bulgu kalıcı olarak saklanır, çözüldüğünde görünümlerden gizlenir
Geçmiş ayrıntısıRiskin ne olduğuna dair kısa bir özetNasıl düzeltildiği dahil tüm karar geçmişi

Maliyet​

YönLaguneDeepsec
Deterministik tabanÜcretsiz: hook'lar yapay zeka ve anahtar olmadan çalışır, kararları zaten üretirÜcretsiz: scan yapay zeka olmadan çalışır, ama tek başına karar üretmez
Tipik faturaZaten kullandığınız ajanın içinde kalır: yerel bir modelle $0'a kadar iner, zaten kullandığınız planın fiyatıdır ya da API tabanlı kullanımda yineleme başınadır100 ile 2.000 dosya için çalıştırma başına kabaca $25 ile $1.200 arası, ölçek büyüdükçe daha fazla
En ucuz yolÜcretsiz yerel bir model dahil herhangi bir model döngüyü kapatırDaha ucuz ücretli seviyeler var, ama bulgular ücretli yapay zeka aşamasını gerektirir

Genişletilebilirlik ve yönetişim​

Her biri, diğerinin kapalı tuttuğu katmanı açar.

YönLaguneDeepsec
Neyi genişletirsinizModülleri düzenler ya da specialize ile yenilerini eklersinizEşleştiriciler, ajanlar, bildirimciler ve sahiplik eklersiniz
Politika katmanıCharter her fazı yönetir ve sürümlenirYapılandırma operasyoneldir (eşleştiriciler, modeller, yollar)
Adla geçersiz kılmaİyileştirilmiş bir modül yerleşik olanı gölgelerBir eşleştirici slug çakışmasında sizin eşleştiriciniz kazanır

Arayüzler​

Deepsec bir güvenlik ekibi için teslim edilecek çıktılar üretir. Lagune ise onu çalıştıran kişi için canlı bir görünüm sunar.

YönLaguneDeepsec
İnsana dönük yüzeyTüm zincirin sade bir dille sunulduğu canlı, yerel bir gösterge paneliRapor, dışa aktarma, metrik ve PR yorumu dosyaları, ayrıca bir dokümantasyon sitesi
SorumlulukDosyaları ve uygulanan uzmanlıkları gösterirÖnerilen bir sorumluya yönlendirir: nöbetçi, yönetici ya da commit'i yapan kişi
Tekrarlanabilir ispatprove çalıştırılabilir testler ve bir ifşa bülteni yazarTasarımı gereği statik kalır, hedefi asla çalıştırmaz
Aracın kendini korumasıGösterge panelindeki yerel bir yazma API'sini sıkılaştırırKendi yapay zeka yürütmesini güvenilmeyen hedef koda karşı sıkılaştırır

Ölçek ve dağıtım​

YönLaguneDeepsec
KurulumAjanınızın eklentisinden ya da skills CLI aracından dokuz komut, hiçbir iskelet oluşturulmazKendi paketi ve bağımlılıkları olan bir .deepsec/ çalışma alanı
Ölçek yönüHerhangi bir dilime, bir bağlama, tek bir dosyadan tüm projeye kadar kapsam daraltırBüyük monorepo'lara kadar tüm depoları tarar
DağıtımYalnızca yerel, tek sunucu loopback'e bağlanırVercel Sandbox çalışan VM'lerine isteğe bağlı dağıtım

Kullanıcı deneyimi​

Her birinin, onu çalıştıran kişiyle nasıl buluştuğu: ilk çalıştırmanın ne gerektirdiği ve kullanıcının onu nasıl hedeflediği.

İlk kurulum​

Lagune zaten açık olan ajan üzerinden çalışır. Deepsec ise önce kendi çalışma alanını ve model erişimini hazırlar.

YönLaguneDeepsec
İlk komutEklenti kurulumu ya da npx skills add wellwelwel/lagune, ardından ajanda /lagune-*npx deepsec init, ardından cd .deepsec, pnpm install, scan, process
Çalıştırmak için kimlik bilgisiAyrı bir anahtar yok, mevcut ajanınızı kullanırBir model anahtarı (örneğin AI Gateway, 12 saatlik bir Vercel OIDC token'ı ya da bir Anthropic token'ı)

Yönlendirme​

İkisi de yön alır. Lagune girdinin biçimini her fazda okur. Deepsec ise aynı incelemenin üzerinde çalıştığı dosya kümesini daraltır.

YönLaguneDeepsec
Tüm projeGirdisi olmayan bir faz tüm kapsamı tararscan ve process depoyu tarar
Bir dilimHer faz verilen dosyalara ya da dizinlere göre kapsam daraltır--files, --files-from ya da --diff çalıştırmayı daraltır
Bir endişeBir faz, tarif edilen bir endişeye göre kapsam daraltırİnceleme prompt'u sabittir
Bir öncelik bandıharden ve verify, Critical, High, Medium ya da Low düzeyine göre kapsam daraltırBulgular çalıştırmadan sonra etiketlenir
Tek bir değerBir hook tek bir kod parçasını, deseni ya da URL'yi doğrudan puanlar (--pattern, --url)İş birimi bir dosyadır

Sıkça sorulan sorular

Lagune ajan önceliklidir ve kod yazılmadan önce, yazılırken ve yazıldıktan sonra çalışır: koddan önce politikayı belirler, geliştirirken kodu yerinde sıkılaştırır, zaten yazılmış kodu da denetler, sıkılaştırır ve doğrular. Deepsec deterministik önceliklidir: geniş bir regex taraması, mevcut kodu inceleyip değiştirmeden bulguları raporlayan zorunlu bir öncü model incelemesini besler.

Lagune'nin tüm akışı ücretsiz yerel bir modelle $0'a çalışabilir ve deterministik hook'ları hiç yapay zeka kullanmadan karar üretir. Deepsec'in taraması ücretsizdir ama karar üretmez, bu yüzden her bulgu ücretli yapay zeka aşamasını gerektirir.

Lagune değiştirir: harden düzeltmeleri kodunuza uygular. Deepsec değiştirmez: yalnızca statik analiz yapar ve bir kişinin ya da ajanın ayrıca uygulayacağı bulgular ve öneri metni üretir.