Manifest Kuralları
Model, ajan ve MCP manifest dosyalarında izin, kaynak, sürüm ve bütünlük sorunlarını kontrol eder.
Manifest kural ailesi; bu yüzeydeki bulguları kural kimliği, öncelik, CWE, OWASP LLM, sorumlu, yayın kararı ve yeniden test komutuyla kapatılabilir aksiyona çevirir.
Manifest dosyaları hangi araca, modele ve izne güvenildiğini tanımlar. Zayıf manifest politikası saldırı yüzeyini büyütür.
Desteklenen girdiler
JSONYAMLMCP manifestsplugin manifestsmodel manifestspackage metadata
Tipik saldırı senaryoları
- Ajan manifest’i gereğinden fazla araç izni ister.
- Model manifest’i hash veya kaynak bilgisi taşımaz.
- MCP bağlantısı güvenilmeyen taşıma veya komut yetkisi açar.
Algılama mantığı
Sentinel Manifest kurallarında kanıt alanını dosya yolu, üst veri, opcode, AST düğümü, manifest alanı, bağımlılık veya arşiv girdisi gibi yeniden üretilebilir sinyale bağlar. Bulgu kapatılırken aynı sinyal ortadan kalkmalıdır.
İnceleme ve önceliklendirme
Manifest bulgularını tek başına "tarayıcı gürültüsü" gibi okumayın. Önce kanıtı doğrulayın, sonra yayın kararını önceliğe bağlayın, en sonunda aynı Sentinel komutuyla kapanış kanıtı üretin.
- Kaynak: dosya, manifest, istem, arşiv veya bağımlılık nereden geldi?
- Etki: kod çalıştırma, veri sızıntısı, tedarik zinciri veya kaynak tüketimi mi?
- Kontrol: izin listesi, hash doğrulaması, yalıtım, ağ çıkış politikası veya gizli bilgi döndürme gerekiyor mu?
- Kanıt: düzeltmeden sonra aynı kural kategorisi temiz dönüyor mu?
Düzeltme
Düzeltme, yalnızca bulguyu susturmak değil risk sınırını değiştirmek anlamına gelmelidir: çalıştırılabilir biçimi kaldırın, kaynak veya hash değerini sabitleyin, araç iznini daraltın, gizli bilgiyi döndürün ya da çalışma zamanı yalıtımı ekleyin.
CI politikası
category: MANIFEST
fail_on:
- CRITICAL
- HIGH
ticket_on:
- MEDIUM
retest: "sentinel scan ./project/"Kural dizini
| Kural kimliği | Öncelik | Başlık | CWE | Düzeltme ipucu |
|---|---|---|---|---|
| MANIFEST-REMOTE-CODE | HIGH | Manifest Uzak Kod Yüklüyor | CWE-829 | Değişebilir uzak manifest kodunu çalıştırmayın. |
| MANIFEST-OVERBROAD-TOOLS | HIGH | Aşırı Geniş Ajan Araç İzinleri | CWE-266 | Ajan araç izinlerini yayına almadan önce daraltın. |
| MANIFEST-MISSING-INTEGRITY | MEDIUM | Eksik Manifest Bütünlüğü | CWE-353 | Manifestlerde dosya bütünlüğünü kaydedin ve doğrulayın. |
MANIFEST-REMOTE-CODE — Manifest Uzak Kod Yüklüyor
HIGH| Kural kimliği | MANIFEST-REMOTE-CODE |
|---|---|
| Kategori | MANIFEST |
| Öncelik | HIGH |
| CWE | CWE-829 |
| OWASP LLM | LLM03 — Supply Chain |
| Yanlış pozitif riski | MEDIUM |
| Sorumlu | Uygulama güvenliği ve arka uç/ajan sahibi |
| Yayın kararı | Yayın kapısı olarak değerlendirin; düzeltme veya açık risk kabulü gerekir. |
Açıklama
Sabitleme veya bütünlük kontrolü olmadan uzak URL’den çalıştırılabilir kod çeken manifestleri işaretler.
Neden önemli?
Manifest dosyaları hangi araca, modele ve izne güvenildiğini tanımlar. Zayıf manifest politikası saldırı yüzeyini büyütür.
Ne zaman tetiklenir?
Sentinel bu kuralı Manifest kategorisinde şu kanıtı gördüğünde tetikler: Manifest içinde değişebilir URL, dal adı veya sağlama toplamı olmadan çalıştırılabilir kaynak görülür. Bulgu; dosya adı, üst veri, opcode, AST düğümü veya manifest alanı gibi yeniden üretilebilir kanıtla raporlanmalıdır.
Kanıt biçimi
Manifest içinde değişebilir URL, dal adı veya sağlama toplamı olmadan çalıştırılabilir kaynak görülür.
Beklenen kanıt
Rapor; etkilenen dosya veya manifest yolunu, yakalanan sinyali, kural kimliğini, önceliği, sorumluyu ve kapanışta çalıştırılacak yeniden test komutunu içermelidir.
Yanlış pozitif notu
Yanlış pozitif olasılığı orta seviyededir. Önce kaynak, beklenen kullanım ve sahip bilgisini doğrulayın; gerekirse izin listesi ekleyin ama kanıtı rapordan silmeyin.
İnceleme ve önceliklendirme
- Sorumlu: Uygulama güvenliği ve arka uç/ajan sahibi.
- Karar: Yayın kapısı olarak değerlendirin; düzeltme veya açık risk kabulü gerekir.
- Kanıt: Manifest içinde değişebilir URL, dal adı veya sağlama toplamı olmadan çalıştırılabilir kaynak görülür.
- Kapanış: sentinel scan ./project/ komutu temiz dönmeli.
Nasıl düzeltilir?
Değişebilir uzak manifest kodunu çalıştırmayın; commit/digest sabitleyin ve imzalı kaynak kullanın.
CLI
sentinel scan ./project/Politika örneği
rules:
MANIFEST-REMOTE-CODE:
owner: "Application security and backend/agent owner"
fail_on: ["CRITICAL", "HIGH"]
retest: "sentinel scan ./project/"Beklenen çıktı
MANIFEST-REMOTE-CODE HIGH
Manifest Uzak Kod Yüklüyor
Değişebilir uzak manifest kodunu çalıştırmayın.Örnek
permissions:
filesystem: "*"
shell: true
network: "*"permissions:
filesystem: ["./reports"]
shell: false
network: ["api.vendor.example"]İlgili kurallar
- MANIFEST-OVERBROAD-TOOLS: Aşırı Geniş Ajan Araç İzinleri
- MANIFEST-MISSING-INTEGRITY: Eksik Manifest Bütünlüğü
MANIFEST-OVERBROAD-TOOLS — Aşırı Geniş Ajan Araç İzinleri
HIGH| Kural kimliği | MANIFEST-OVERBROAD-TOOLS |
|---|---|
| Kategori | MANIFEST |
| Öncelik | HIGH |
| CWE | CWE-266 |
| OWASP LLM | LLM06 — Excessive Agency |
| Yanlış pozitif riski | MEDIUM |
| Sorumlu | Uygulama güvenliği ve arka uç/ajan sahibi |
| Yayın kararı | Yayın kapısı olarak değerlendirin; düzeltme veya açık risk kabulü gerekir. |
Açıklama
Shell, dosya sistemi, veritabanı veya ağ üzerinde gereğinden geniş izin veren ajan ya da MCP araç manifestlerini tespit eder.
Neden önemli?
Manifest dosyaları hangi araca, modele ve izne güvenildiğini tanımlar. Zayıf manifest politikası saldırı yüzeyini büyütür.
Ne zaman tetiklenir?
Sentinel bu kuralı Manifest kategorisinde şu kanıtı gördüğünde tetikler: Araç izni wildcard, proje kökü yazma, sınırsız ağ veya geniş veritabanı yetkisi içerir. Bulgu; dosya adı, üst veri, opcode, AST düğümü veya manifest alanı gibi yeniden üretilebilir kanıtla raporlanmalıdır.
Kanıt biçimi
Araç izni wildcard, proje kökü yazma, sınırsız ağ veya geniş veritabanı yetkisi içerir.
Beklenen kanıt
Rapor; etkilenen dosya veya manifest yolunu, yakalanan sinyali, kural kimliğini, önceliği, sorumluyu ve kapanışta çalıştırılacak yeniden test komutunu içermelidir.
Yanlış pozitif notu
Yanlış pozitif olasılığı orta seviyededir. Önce kaynak, beklenen kullanım ve sahip bilgisini doğrulayın; gerekirse izin listesi ekleyin ama kanıtı rapordan silmeyin.
İnceleme ve önceliklendirme
- Sorumlu: Uygulama güvenliği ve arka uç/ajan sahibi.
- Karar: Yayın kapısı olarak değerlendirin; düzeltme veya açık risk kabulü gerekir.
- Kanıt: Araç izni wildcard, proje kökü yazma, sınırsız ağ veya geniş veritabanı yetkisi içerir.
- Kapanış: sentinel scan ./project/ komutu temiz dönmeli.
Nasıl düzeltilir?
Ajan araç izinlerini daraltın, işlem bazlı izin verin ve riskli araçlar için insan onayı ekleyin.
CLI
sentinel scan ./project/Politika örneği
rules:
MANIFEST-OVERBROAD-TOOLS:
owner: "Application security and backend/agent owner"
fail_on: ["CRITICAL", "HIGH"]
retest: "sentinel scan ./project/"Beklenen çıktı
MANIFEST-OVERBROAD-TOOLS HIGH
Aşırı Geniş Ajan Araç İzinleri
Ajan araç izinlerini yayına almadan önce daraltın.Örnek
permissions:
filesystem: "*"
shell: true
network: "*"permissions:
filesystem: ["./reports"]
shell: false
network: ["api.vendor.example"]İlgili kurallar
- MANIFEST-REMOTE-CODE: Manifest Uzak Kod Yüklüyor
- MANIFEST-MISSING-INTEGRITY: Eksik Manifest Bütünlüğü
MANIFEST-MISSING-INTEGRITY — Eksik Manifest Bütünlüğü
MEDIUM| Kural kimliği | MANIFEST-MISSING-INTEGRITY |
|---|---|
| Kategori | MANIFEST |
| Öncelik | MEDIUM |
| CWE | CWE-353 |
| OWASP LLM | LLM03 — Supply Chain |
| Yanlış pozitif riski | MEDIUM |
| Sorumlu | Uygulama güvenliği ve arka uç/ajan sahibi |
| Yayın kararı | Sahip atayın, sprint içinde düzeltin ve yeniden test komutunu iş kaydına ekleyin. |
Açıklama
Checksum, imza, kaynak bilgisi veya sürüm alanı bulunmayan manifestleri raporlar.
Neden önemli?
Manifest dosyaları hangi araca, modele ve izne güvenildiğini tanımlar. Zayıf manifest politikası saldırı yüzeyini büyütür.
Ne zaman tetiklenir?
Sentinel bu kuralı Manifest kategorisinde şu kanıtı gördüğünde tetikler: Manifestte hash, imza, kaynak URL’i veya sürüm kimliği eksiktir. Bulgu; dosya adı, üst veri, opcode, AST düğümü veya manifest alanı gibi yeniden üretilebilir kanıtla raporlanmalıdır.
Kanıt biçimi
Manifestte hash, imza, kaynak URL’i veya sürüm kimliği eksiktir.
Beklenen kanıt
Rapor; etkilenen dosya veya manifest yolunu, yakalanan sinyali, kural kimliğini, önceliği, sorumluyu ve kapanışta çalıştırılacak yeniden test komutunu içermelidir.
Yanlış pozitif notu
Yanlış pozitif olasılığı orta seviyededir. Önce kaynak, beklenen kullanım ve sahip bilgisini doğrulayın; gerekirse izin listesi ekleyin ama kanıtı rapordan silmeyin.
İnceleme ve önceliklendirme
- Sorumlu: Uygulama güvenliği ve arka uç/ajan sahibi.
- Karar: Sahip atayın, sprint içinde düzeltin ve yeniden test komutunu iş kaydına ekleyin.
- Kanıt: Manifestte hash, imza, kaynak URL’i veya sürüm kimliği eksiktir.
- Kapanış: sentinel scan ./project/ komutu temiz dönmeli.
Nasıl düzeltilir?
Dosya bütünlüğünü manifestte kaydedin ve yükleme öncesinde doğrulayın.
CLI
sentinel scan ./project/Politika örneği
rules:
MANIFEST-MISSING-INTEGRITY:
owner: "Application security and backend/agent owner"
fail_on: ["CRITICAL", "HIGH"]
retest: "sentinel scan ./project/"Beklenen çıktı
MANIFEST-MISSING-INTEGRITY MEDIUM
Eksik Manifest Bütünlüğü
Manifestlerde dosya bütünlüğünü kaydedin ve doğrulayın.Örnek
permissions:
filesystem: "*"
shell: true
network: "*"permissions:
filesystem: ["./reports"]
shell: false
network: ["api.vendor.example"]İlgili kurallar
- MANIFEST-REMOTE-CODE: Manifest Uzak Kod Yüklüyor
- MANIFEST-OVERBROAD-TOOLS: Aşırı Geniş Ajan Araç İzinleri