# Tedarik Zinciri Saldırısı (Supply Chain Attack)

Adres: https://softwaredictionary.org/tr/terimler/supply-chain-attack
Kategori: Güvenlik
Son güncelleme: 2026-09-30
İngilizcesi: Supply Chain Attack
Okunuşu: sıplay çeyn ıtek

Kısaca: Tedarik zinciri saldırısı, uygulamanın kendisini değil, açık kaynak paketi, derleme aracı veya güncelleme sunucusu gibi dayandığı bir bileşeni ele geçirir.

## Yazılım tedarik zinciri saldırısı nedir?

Modern uygulamalar yüzlerce, hatta binlerce üçüncü taraf parçadan bir araya getirilir: açık kaynak paketleri, container temel imajları, CI/CD servisleri, derleme eklentileri ve satıcı güncellemeleri. Yazılım tedarik zinciri saldırısı, bu parçalardan birine kötü amaçlı kod sızdırır; böylece kod, onu kullanan her projeye aşağı akış yönünde ulaşır. Kod güvenilir bir kanaldan, çoğu zaman imzalı ve otomatik olarak yüklenerek geldiği için aynı anda binlerce kuruluşa ulaşabilir.

Yaygın teknikler arasında; popüler bir paketin adına yakın bir adla kötü amaçlı bir paket yayımlamak anlamına gelen typosquatting, derlemenin yanlış kaynağı seçmesi için bir şirketin dahili paketiyle aynı ada sahip herkese açık bir paket yayımlamak anlamına gelen dependency confusion, zehirli bir sürüm yayımlamak için bir bakımcının hesabını ele geçirmek ve resmî sürümlerin bir arka kapı içermesi için bir derleme sistemini ele geçirmek yer alır. Bilinen örnekler arasında saldırganların bir satıcının yazılım güncellemesini değiştirdiği 2020 SolarWinds ihlali ve bir katılımcının yaygın kullanılan bir sıkıştırma kütüphanesine kötü amaçlı kod gizlemeden önce güven kazanmak için iki yıldan fazla zaman harcadığı 2024 xz Utils arka kapısı vardır.

Savunmalar, gönderdiğiniz şeyi bilmeyi, sabitlemeyi ve doğrulamayı hedefler. Ekipler derlemelerin tam sürümleri kullanması için lockfile'ları commit eder, yeni bağımlılıkları eklemeden önce inceler, bilinen CVE'ler için tarar, her bileşeni listeleyen bir yazılım malzeme listesi (SBOM) üretir, paketlerin ve imajların imzalarını ve kökenini (provenance) doğrular ve CI hatlarını en az ayrıcalıklı token'larla sağlamlaştırır. Bu, mutfağını tertemiz tutan ama yine de kirlenmiş bir teslimat yüzünden misafirlerini hasta eden bir restorana benzer: yemeğin güvenliği yalnızca aşçıya değil, her tedarikçiye bağlıdır.

Tedarik zinciri saldırısı sıklıkla sıradan savunmasız bir bağımlılıkla karıştırılır. Savunmasız bir bağımlılık, saldırganların istismar edebileceği kazara bir hata içerir; tedarik zinciri saldırısı ise kasıtlıdır: biri güvenilir bir bileşene bilerek kötü amaçlı kod ekler. İkisi de iyi bağımlılık hijyeniyle yönetilir, ancak tedarik zinciri saldırıları kodunuzu kimin yayımladığını ve nasıl derlendiğini de denetlemeyi gerektirir.

## Önemli noktalar

- Tedarik zinciri saldırıları, kullanıcılarına ulaşmak için güvenilir bir bağımlılığı, aracı veya güncellemeyi ele geçirir.
- Typosquatting, dependency confusion, hesap ele geçirme ve derleme ele geçirme yaygın yöntemlerdir.
- Lockfile'lar ve sabitlenmiş sürümler, derlemeleri yeniden üretilebilir ve kurcalanması daha zor kılar.
- SBOM, yeni bir zafiyete maruziyetin hızla kontrol edilebilmesi için her bileşeni listeler.
- İmzaları ve kökeni doğrulayın, CI hatlarına yalnızca ihtiyaç duydukları izinleri verin.

## Örnek: Bir Node.js projesinde temel tedarik zinciri hijyeni

```bash
# Install exactly what the lockfile says; fail if it doesn't match package.json
npm ci

# Check installed dependencies for known vulnerabilities
npm audit --audit-level=high

# Verify registry signatures and provenance attestations of installed packages
npm audit signatures

# Generate a software bill of materials (SBOM) in CycloneDX format
npm sbom --sbom-format cyclonedx > sbom.json
```

## Sık sorulan sorular

**Dependency confusion nedir?**

Dependency confusion, birinin herkese açık bir kayıt defterine, çoğu zaman daha yüksek bir sürüm numarasıyla, bir şirketin özel dahili paketiyle aynı ada sahip bir paket yayımladığı saldırıdır. Yanlış yapılandırılmış derleme araçları da dahili paket yerine herkese açık, kötü amaçlı paketi indirir.

**SBOM nedir?**

Yazılım malzeme listesi, bir yazılımdaki her bileşenin ve sürümün, çoğunlukla SPDX veya CycloneDX biçiminde makine tarafından okunabilir bir envanteridir. Yeni bir zafiyet duyurulduğunda SBOM, ekiplerin etkilenen sistemleri dakikalar içinde bulmasını sağlar.

**Projemi tedarik zinciri saldırılarından nasıl korurum?**

Lockfile'lar ve sabitlenmiş sürümler kullanın, bağımlılıkları idareli ekleyip inceleyin, paket kayıt defteri hesaplarında iki faktörlü kimlik doğrulamayı etkinleştirin, zafiyetleri tarayın ve mümkün olduğunda imzaları doğrulayın. CI'da token izinlerini sınırlayın ve üçüncü taraf action'ları veya eklentileri tam sürümlere sabitleyin.

---

Software Dictionary: https://softwaredictionary.org/tr · https://softwaredictionary.org/tr/llms.txt
