C ve C++'ta ciddi güvenlik açıklarının en büyük kaynaklarından biri hâlâ tampon taşması (dizinin ya da işaretçinin sınırının dışına okuma/yazma). Apple mühendisleri 14 Ekim 2026’da LLVM/Clang’a bu soruna yönelik yeni bir araç ekledi. Kontrol tarihi: 24 Ekim 2026 (TR).
Ne geldi?
- Aracın adı clang-ssaf-driver. Clang’ın Scalable Static Analysis Framework (SSAF) adlı yeni çerçevesinin parçası. LLVM’nin ana koduna (upstream) eklendi.
- LLVM 24 ile gelmesi bekleniyor (önümüzdeki bahar).
- İlk ve şimdilik tek dönüşüm:
cpp-bounded-buffers. Sınır kontrolü gereken ham işaretçileri ve dizileribounded_ptrvebounded_arraytürlerine çeviriyor.
Neden önemli?
Bugünkü statik analiz araçlarının çoğu her dosyaya ayrı ayrı bakar. Bir fonksiyon başka bir dosyadan işaretçi aldığında, araç o işaretçinin nereden geldiğini ve arkasındaki tamponun ne kadar büyük olduğunu göremez. Sonuç: ya gereksiz uyarı ya da kaçırılan açık.
SSAF her dosyadan bir özet çıkarır, özetleri birleştirip bütün program üzerinde analiz yapar, sonucu tekrar her dosyaya dağıtır. Böylece dosyalar arası işaretçi akışı görülebilir.
Nasıl çalışıyor?
- Kullanıcı yalnızca dönüşümün adını ve derleme komutunu veriyor; araç gerekli analizleri kendisi seçiyor.
- Şimdilik
maketabanlı projelerle çalışıyor. - Önerdiği değişiklikleri bir yama (patch) olarak yazıyor, derleyici tarzı bir rapor basıyor ve raporu SARIF biçiminde kaydediyor (CI hatlarına eklenebilir).
--applyile değişiklikleri uyguluyor; çakışan düzenlemeleri yamaya koymuyor.
Bugün ne yapabilirsin?
Araç henüz erken aşamada. LLVM 24 çıkana kadar mevcut önlemler geçerli:
- Ham dizi yerine
std::array,std::vectorvestd::spankullan. - libc++ kullanıyorsan “hardening” modunu açarak standart kütüphanede sınır kontrolü elde edebilirsin.
- Testlerde AddressSanitizer (
-fsanitize=address) kullan.
C++'a yeni başlıyorsan ya da büyük bir C++ kod tabanın varsa soruların için aşağıya yaz.
Kaynaklar: Phoronix (14 Ekim 2026), DevOps.com, LLVM forumu: SSAF RFC, LLVM forumu: clang-reforge RFC, libc++ Hardening belgesi, Clang AddressSanitizer belgesi. Kontrol tarihi: 24 Ekim 2026.