Skip to main content
Yapay Zeka Güvenliği

Adversarial ML: AI Saldırıları ve Savunma Yöntemleri

Mart 06, 2026 12 dk okuma 16 views Raw
Adversarial ML siber güvenlik ve yapay zeka savunma yöntemleri
İçindekiler

İçindekiler

Yapay zeka sistemleri hayatımızın her alanına entegre olurken, bu sistemlerin güvenliği de kritik bir öncelik haline gelmiştir. Adversarial Machine Learning (Adversarial ML), makine öğrenimi modellerini manipüle etmeye yönelik saldırı tekniklerini ve bu saldırılara karşı geliştirilen savunma mekanizmalarını inceleyen bir siber güvenlik disiplinidir. Otonom araçlardan tıbbi teşhis sistemlerine, finansal dolandırıcılık tespitinden yüz tanıma teknolojilerine kadar pek çok alanda kullanılan AI modellerinin güvenlik açıkları, ciddi sonuçlara yol açabilir.

Bu kapsamlı rehberde, adversarial ML'in temel kavramlarını, saldırı türlerini, perturbation yöntemlerini ve etkili savunma stratejilerini detaylı olarak inceleyeceğiz. Gerçek dünya örnekleriyle konuyu somutlaştırarak, AI güvenliği konusunda derinlemesine bir anlayış kazanmanızı hedefliyoruz.

1. Adversarial ML Nedir?

Adversarial Machine Learning, makine öğrenimi modellerinin zayıf noktalarını keşfetmeyi ve bu zayıflıkları istismar etmeyi veya bunlara karşı savunma geliştirmeyi amaçlayan bir araştırma alanıdır. Temel fikir şudur: bir ML modeli ne kadar yüksek doğruluk oranına sahip olursa olsun, dikkatli bir şekilde tasarlanmış girdiler (adversarial examples) ile yanıltılabilir.

Adversarial örnekler, insan gözüyle fark edilemeyecek kadar küçük değişiklikler içeren ancak modelin tamamen farklı bir çıktı üretmesine neden olan manipüle edilmiş girdilerdir. Örneğin, bir stop işareti görüntüsüne birkaç piksellik değişiklik ekleyerek, otonom bir aracın bu işareti hız limiti işareti olarak algılaması sağlanabilir.

Temel Tanımlar

  • Adversarial Example: Modeli yanıltmak için kasıtlı olarak oluşturulan girdi
  • Perturbation: Orijinal girdiye eklenen küçük, genellikle algılanamayan bozulma
  • Threat Model: Saldırganın kapasitesini ve hedeflerini tanımlayan çerçeve
  • Robustness: Modelin adversarial girdilere karşı dayanıklılığı

2. Adversarial ML Neden Önemli?

AI sistemlerinin kritik alanlarda artan kullanımıyla birlikte, adversarial saldırılar ciddi güvenlik tehditleri oluşturmaktadır. Bu alanın önemini vurgulayan temel faktörler şunlardır:

Alan Risk Seviyesi Potansiyel Etki
Otonom AraçlarKritikCan kaybı riski
Tıbbi TeşhisKritikYanlış teşhis ve tedavi
Finansal SistemlerYüksekDolandırıcılık tespitini atlatma
Yüz TanımaYüksekKimlik sahteciliği
Spam FiltrelemeOrtaZararlı içerik geçişi
Malware TespitiKritikZararlı yazılım kaçırma

Araştırmalar göstermektedir ki, en gelişmiş derin öğrenme modelleri bile adversarial saldırılara karşı savunmasızdır. ImageNet üzerinde %99+ doğruluk oranına sahip modeller, adversarial perturbation ile %0'a yakın doğruluğa düşürülebilmektedir. Bu durum, AI güvenliğinin sadece akademik bir merak konusu değil, pratik bir zorunluluk olduğunu göstermektedir.

3. Saldırı Türleri ve Sınıflandırma

Adversarial saldırılar, çeşitli kriterlere göre sınıflandırılabilir. Bu sınıflandırmayı anlamak, uygun savunma mekanizmalarını seçmek için kritik öneme sahiptir.

Saldırgan Bilgi Seviyesine Göre

White-box Saldırılar: Saldırgan, model mimarisi, ağırlıkları, eğitim verileri ve gradient bilgisi dahil tüm detaylara sahiptir. Bu, en güçlü saldırı senaryosudur çünkü saldırgan modeli tam olarak analiz edebilir ve optimal perturbation hesaplayabilir.

Black-box Saldırılar: Saldırgan yalnızca modelin girdi-çıktı davranışını gözlemleyebilir. Model içyapısı bilinmez, ancak tekrarlanan sorgularla modelin davranış kalıpları öğrenilebilir. Transfer saldırıları bu kategoriye dahildir.

Gray-box Saldırılar: Saldırgan kısmi bilgiye sahiptir; örneğin model mimarisini bilir ancak tam ağırlıklara erişimi yoktur.

Saldırı Zamanlamasına Göre

  • Eğitim zamanı saldırıları: Model eğitilirken gerçekleştirilir (data poisoning)
  • Çıkarım zamanı saldırıları: Model dağıtıldıktan sonra gerçekleştirilir (evasion)
  • Keşif saldırıları: Model hakkında bilgi toplamaya yöneliktir (model extraction)

4. Evasion Saldırıları

Evasion (kaçınma) saldırıları, adversarial ML'in en yaygın ve en çok araştırılan saldırı türüdür. Bu saldırılarda, çıkarım zamanında modele sunulan girdiler manipüle edilerek yanlış sınıflandırma yapması sağlanır. Model zaten eğitilmiştir ve değiştirilmez; sadece girdiler modifiye edilir.

FGSM (Fast Gradient Sign Method)

Ian Goodfellow tarafından 2014'te önerilen FGSM, en temel ve en hızlı adversarial saldırı yöntemlerinden biridir. Loss fonksiyonunun gradientini hesaplar ve girdiye gradient yönünde küçük bir perturbation ekler.

# FGSM Saldırı Formülü x_adv = x + ε * sign(∇x J(θ, x, y)) # Python implementasyonu import torch def fgsm_attack(model, x, y, epsilon): x.requires_grad = True output = model(x) loss = F.cross_entropy(output, y) loss.backward() # Gradient işareti ile perturbation oluştur perturbation = epsilon * x.grad.sign() x_adv = x + perturbation x_adv = torch.clamp(x_adv, 0, 1) return x_adv

PGD (Projected Gradient Descent)

PGD, FGSM'nin iteratif versiyonudur ve çok daha güçlü adversarial örnekler üretir. Her iterasyonda küçük adımlarla perturbation uygulanır ve sonuç belirli bir epsilon topu içinde tutulur. PGD, "birinci derece saldırganlar arasında en güçlüsü" olarak kabul edilir.

C&W (Carlini & Wagner) Saldırısı

2016'da önerilen C&W saldırısı, optimizasyon tabanlı bir yaklaşım kullanır ve birçok savunma mekanizmasını aşabilen son derece etkili adversarial örnekler üretir. L0, L2 ve L∞ norm kısıtlamaları altında çalışabilir ve defensif distillation gibi savunma yöntemlerini bile kırabildiği gösterilmiştir.

⚠ Uyarı

Evasion saldırıları, özellikle güvenlik açısından kritik sistemlerde (otonom araçlar, malware tespiti) ciddi tehditler oluşturur. Bu saldırılar fiziksel dünyada da gerçekleştirilebilir; örneğin, yazdırılan bir adversarial patch ile kamera tabanlı sınıflandırma sistemleri yanıltılabilir.

5. Data Poisoning (Veri Zehirleme)

Data poisoning saldırıları, eğitim verilerini manipüle ederek modelin davranışını istenen yönde değiştirmeyi hedefler. Bu saldırılar eğitim aşamasında gerçekleştirilir ve modelin temelden bozulmasına neden olabilir.

Poisoning Saldırı Türleri

Label Flipping: Eğitim verilerindeki etiketler kasıtlı olarak değiştirilir. Örneğin, spam e-postaların etiketleri "spam değil" olarak değiştirilerek modelin spam tespiti yeteneği zayıflatılır. Saldırgan, eğitim veri setindeki %10-15 oranında etiketi değiştirerek modelin doğruluğunu %20-30 oranında düşürebilir.

Data Injection: Eğitim veri setine özel olarak oluşturulmuş zararlı veri noktaları enjekte edilir. Bu veriler, modelin karar sınırlarını saldırganın lehine değiştirmek üzere tasarlanmıştır.

Backdoor Saldırıları: Eğitim verilerine gizli bir tetikleyici (trigger) eklenir. Model normal girdilerde doğru çalışır, ancak tetikleyiciyi içeren girdilerde saldırganın istediği çıktıyı üretir. Bu durum, modelin görünürde sağlıklı performans göstermesi nedeniyle tespit edilmesi en zor saldırı türlerinden biridir.

# Backdoor Saldırı Örneği def inject_backdoor(image, trigger_pattern, target_label): """ Görüntüye tetikleyici ekler ve etiketi değiştirir. Tetikleyici: sağ alt köşeye küçük bir beyaz kare """ poisoned_image = image.copy() # Sağ alt köşeye 5x5 piksellik tetikleyici ekle poisoned_image[-5:, -5:] = trigger_pattern return poisoned_image, target_label # Eğitim verisinin %5'ine backdoor enjekte et for i in range(int(len(train_data) * 0.05)): train_data[i], train_labels[i] = inject_backdoor( train_data[i], white_patch, target_class )

Federe Öğrenmede Poisoning

Federe öğrenme ortamlarında, kötü niyetli bir katılımcı model güncellemelerini manipüle ederek genel modeli zehirleyebilir. Bu, özellikle model güncelleme agregasyonunun yeterince sağlam olmadığı durumlarda ciddi bir tehdit oluşturur. Byzantine-resilient agregasyon yöntemleri bu soruna çözüm olarak geliştirilmektedir.

6. Model Extraction (Model Çalma)

Model extraction saldırıları, bir hedef modelin davranışını kopyalamak (çalmak) amacıyla gerçekleştirilir. Saldırgan, API üzerinden stratejik sorgular göndererek modelin karar sınırlarını öğrenir ve benzer performansa sahip bir kopya (surrogate) model oluşturur.

Model Extraction Süreci

  1. Keşif: Hedef modelin girdi/çıktı formatı, sınıf sayısı gibi temel bilgiler toplanır
  2. Sorgu Stratejisi: Sentetik girdiler oluşturularak modele gönderilir ve çıktılar kaydedilir
  3. Surrogate Eğitimi: Toplanan girdi-çıktı çiftleri ile bir kopya model eğitilir
  4. Doğrulama: Surrogate modelin orijinal ile uyumu test edilir
  5. İstismar: Surrogate model üzerinde white-box saldırılar geliştirilerek orijinal modele transfer edilir

Araştırmalar, yalnızca birkaç bin sorgu ile karmaşık modellerin %90+ doğrulukta kopyalanabildiğini göstermiştir. Bu durum, fikri mülkiyet hakları açısından ciddi endişeler doğurmaktadır. Ayrıca, çalınan model üzerinden oluşturulan adversarial örnekler, sıklıkla orijinal modeli de yanıltmaktadır (transferability özelliği).

7. Perturbation Yöntemleri

Perturbation, adversarial örnekler oluşturmanın temel mekanizmasıdır. Girdiye eklenen bu bozulmalar, farklı norm kısıtlamaları altında ölçülür ve optimize edilir.

Norm Kısıtlamaları

Norm Açıklama Kullanım Alanı
L0Değiştirilen piksel sayısıMinimal piksel değişikliği
L2Öklid mesafesiToplam bozulma miktarı
L∞Maksimum piksel değişikliğiHer pikseldeki max sapma

Fiziksel Dünya Perturbation'ları

Dijital perturbation'ların ötesinde, fiziksel dünyada da adversarial saldırılar gerçekleştirilebilir. Adversarial patch'ler, yazdırılarak nesnelerin üzerine yerleştirilebilen ve kamera tabanlı AI sistemlerini yanıltan fiziksel perturbation'lardır. Araştırmacılar, gözlük çerçevelerine uygulanan özel desenlerle yüz tanıma sistemlerini kandırmayı, tişörtlere basılan desenlerle kişi tespiti algoritmalarını atlatmayı ve trafik işaretlerine yapıştırılan etiketlerle otonom araç algılama sistemlerini manipüle etmeyi başarmışlardır.

8. Savunma Stratejileri

Adversarial saldırılara karşı çeşitli savunma stratejileri geliştirilmiştir. Bu stratejiler genellikle tek başına yeterli olmayıp, katmanlı bir güvenlik yaklaşımı (defense in depth) gerektirir.

Girdi Ön İşleme

Girdi ön işleme yöntemleri, adversarial perturbation'ları modele ulaşmadan önce temizlemeyi hedefler. Bu yöntemler arasında JPEG sıkıştırma (yüksek frekanslı perturbation'ları ortadan kaldırır), spatial smoothing (Gaussian blur ile perturbation'ları yumuşatır), bit derinliği azaltma (piksel değerlerini kuantalayarak küçük değişiklikleri yok eder) ve feature squeezing (girdi uzayını daraltarak adversarial örnekleri tespit eder) yer alır.

Gradyan Maskeleme

Gradyan maskeleme, saldırganın gradient bilgisine erişimini zorlaştırarak FGSM ve PGD gibi gradient-tabanlı saldırıları engellemeye çalışır. Ancak bu yöntem, C&W gibi optimizasyon tabanlı saldırılara veya transfer saldırılarına karşı etkisiz kalabilir.

Sertifiye Edilmiş Savunmalar

Sertifiye edilmiş savunmalar, belirli bir perturbation bütçesi dahilinde modelin doğru sınıflandırma yapacağını matematiksel olarak garanti eder. Randomized smoothing, bu alanda en umut verici yaklaşımlardan biridir. Model, girdiye Gaussian gürültü ekleyerek birden fazla tahmin yapar ve çoğunluk oyu ile karar verir. Bu yöntem, L2 norm altında kanıtlanabilir robustness sağlar.

💡 İpucu

Savunma stratejisi seçerken, sadece bilinen saldırılara karşı koruma sağlamak yeterli değildir. Adaptive saldırganlar, savunma mekanizmasını bildiğinde onu aşmak için özel teknikler geliştirebilir. Bu nedenle, savunma değerlendirmesinde her zaman adaptive saldırı senaryoları göz önünde bulundurulmalıdır.

9. Adversarial Training

Adversarial training, adversarial saldırılara karşı en etkili ve en yaygın kullanılan savunma yöntemidir. Temel fikir basittir: eğitim sürecinde modele adversarial örnekler göstererek, bu tür girdilere karşı dayanıklılık kazandırılır.

Standart Adversarial Training

# Madry et al. (2018) - PGD Adversarial Training def adversarial_training(model, train_loader, epochs, epsilon, alpha, steps): optimizer = torch.optim.SGD(model.parameters(), lr=0.1) for epoch in range(epochs): for x, y in train_loader: # 1. PGD ile adversarial örnek oluştur x_adv = pgd_attack(model, x, y, epsilon, alpha, steps) # 2. Adversarial örnek üzerinde eğit model.train() output = model(x_adv) loss = F.cross_entropy(output, y) optimizer.zero_grad() loss.backward() optimizer.step()

TRADES (Trade-off between Robustness and Standard Accuracy)

TRADES, standart doğruluk ile adversarial robustness arasındaki dengeyi optimize eden bir adversarial training varyantıdır. Loss fonksiyonu iki bileşenden oluşur: temiz örnekler üzerindeki standart loss ve temiz-adversarial çıktılar arasındaki KL divergence. Bu yaklaşım, doğruluk-dayanıklılık dengesinde daha iyi sonuçlar üretir.

Adversarial Training'in Zorlukları

  • Hesaplama maliyeti: Her eğitim adımında adversarial örnek üretmek, eğitimi 3-10x yavaşlatır
  • Doğruluk kaybı: Adversarial training, temiz girdilerdeki doğruluğu %2-5 oranında düşürebilir
  • Saldırı bağımlılığı: Belirli bir saldırı türüne karşı eğitilmiş model, farklı saldırılara karşı zayıf kalabilir
  • Overfitting: Adversarial training sırasında robust overfitting problemi yaşanabilir

10. Robustness Testi ve Değerlendirme

Bir modelin adversarial saldırılara karşı dayanıklılığını doğru şekilde değerlendirmek, güvenilir AI sistemleri geliştirmek için kritik öneme sahiptir. Robustness testi, çeşitli saldırı senaryoları altında modelin performansını sistematik olarak ölçer.

Değerlendirme Metrikleri

Metrik Açıklama
Robust AccuracyAdversarial girdiler altında doğru sınıflandırma oranı
Clean AccuracyTemiz girdiler üzerindeki doğruluk oranı
Attack Success RateSaldırının modeli yanıltma başarı oranı
Certified RadiusGarantili doğru sınıflandırma yapılan perturbation yarıçapı
Robustness GapClean ve robust accuracy arasındaki fark

AutoAttack

AutoAttack, robustness değerlendirmesi için standart hale gelmiş bir saldırı ensemble'ıdır. Dört farklı saldırı yöntemini (APGD-CE, APGD-T, FAB, Square Attack) birleştirerek kapsamlı bir değerlendirme sunar. Parametre ayarı gerektirmez ve savunmaların aşırı iyimser değerlendirmesini önler. RobustBench platformu, AutoAttack altında modellerin robustness sıralamasını tutmaktadır.

11. Gerçek Dünya Örnekleri

Adversarial ML, laboratuvar ortamının ötesinde gerçek dünyada da etkili olduğunu kanıtlamıştır. İşte dikkat çekici bazı vakalar:

Otonom Araç Sistemleri

Araştırmacılar, trafik işaretlerine küçük etiketler yapıştırarak (fiziksel adversarial örnekler) otonom araçların bu işaretleri yanlış sınıflandırmasını sağlamışlardır. Bir stop işareti, %100 güvenle "hız limiti 45" olarak algılanmıştır. Bu, otonom sürüş güvenliği için ciddi bir endişe kaynağıdır.

Ses Tanıma Saldırıları

Adversarial ses sinyalleri, insan kulağına normal müzik gibi gelirken, ses asistanlarına (Alexa, Siri, Google Assistant) gizli komutlar iletebilir. Bu teknik, kullanıcıların farkında olmadan cihazlarının kontrol edilmesine olanak tanır.

Malware Tespitini Atlatma

Adversarial teknikler kullanılarak, zararlı yazılımlar ML tabanlı antivirüs sistemlerini atlatacak şekilde modifiye edilebilir. Zararlı yazılımın işlevselliği korunurken, özellik vektörü temiz yazılımlara benzetilir. Bu, siber güvenlik endüstrisi için süregelen bir kedi-fare oyununa dönüşmüştür.

LLM Jailbreak Saldırıları

Büyük dil modelleri (LLM'ler) de adversarial saldırılara karşı savunmasızdır. Prompt injection ve jailbreak teknikleri, modellerin güvenlik filtrelerini atlatarak zararlı içerik üretmesini sağlayabilir. Araştırmacılar, otomatik olarak universal adversarial suffix'ler üreterek birden fazla LLM'nin güvenlik mekanizmalarını kırmayı başarmışlardır.

12. Araçlar ve Framework'ler

Adversarial ML araştırması ve uygulaması için çeşitli açık kaynaklı araçlar mevcuttur:

Araç Geliştirici Özellikler
IBM ARTIBMKapsamlı saldırı/savunma kütüphanesi
FoolboxBethge LabFramework-agnostik saldırı araçları
CleverHansGoogle BrainBenchmark saldırı implementasyonları
AutoAttackCroce & HeinStandart robustness değerlendirmesi
RobustBenchCroce et al.Robustness leaderboard ve benchmark

13. Gelecek Perspektifi

Adversarial ML alanı hızla gelişmekte ve yeni araştırma yönleri ortaya çıkmaktadır. Gelecekte öne çıkması beklenen konular şunlardır:

  • Foundation Model Güvenliği: GPT, DALL-E gibi büyük modellerin adversarial dayanıklılığı giderek daha kritik hale gelmektedir
  • Multimodal Saldırılar: Görüntü, metin ve ses gibi birden fazla modaliteyi hedefleyen saldırılar artacaktır
  • Düzenleyici Çerçeveler: AB AI Act ve benzeri düzenlemeler, adversarial robustness testlerini zorunlu kılabilir
  • Otonom Savunma Sistemleri: AI'ın kendini adversarial saldırılardan koruyabilen adaptif savunma mekanizmaları geliştirilecektir
  • Quantum ML Güvenliği: Kuantum makine öğrenimi modellerinin adversarial dayanıklılığı yeni bir araştırma alanı oluşturacaktır

Adversarial ML, AI güvenliğinin temel taşlarından biri olarak önemini artırmaya devam edecektir. Saldırı ve savunma arasındaki bu sürekli evrim, daha güvenilir ve dayanıklı AI sistemlerinin geliştirilmesini zorunlu kılmaktadır. Güvenlik araştırmacıları, model geliştiriciler ve politika yapıcılar arasındaki iş birliği, bu alandaki ilerleme için hayati öneme sahiptir.

Sıkça Sorulan Sorular

Adversarial ML nedir ve neden önemlidir?

Adversarial ML, makine öğrenimi modellerini aldatmak için tasarlanmış saldırı tekniklerini ve bu saldırılara karşı savunma mekanizmalarını inceleyen bir araştırma alanıdır. AI'ın kritik alanlarda (sağlık, ulaşım, güvenlik) kullanımının artmasıyla birlikte, modellerin manipülasyona karşı dayanıklılığı hayati önem kazanmıştır.

Adversarial örnek ile normal hatalı sınıflandırma arasındaki fark nedir?

Normal hatalı sınıflandırma, modelin doğal olarak zorlandığı girdilerde oluşur. Adversarial örnekler ise kasıtlı olarak, modelin karar sınırlarını istismar edecek şekilde tasarlanmıştır. Adversarial örnekler genellikle insan gözüyle orijinalden ayırt edilemez ancak modeli sistematik olarak yanıltır.

Adversarial training modelin genel performansını düşürür mü?

Evet, adversarial training genellikle temiz girdilerdeki doğruluğu %2-5 oranında düşürür. Bu, robustness-accuracy trade-off olarak bilinen bir olgudur. TRADES gibi yöntemler bu dengeyi optimize etmeye çalışır. Ancak güvenlik açısından kritik uygulamalarda, bu doğruluk kaybı kabul edilebilir bir bedel olarak görülür.

Black-box saldırılar gerçek dünyada ne kadar etkilidir?

Black-box saldırılar, özellikle transfer saldırıları aracılığıyla gerçek dünyada oldukça etkili olabilir. Bir surrogate model üzerinde oluşturulan adversarial örnekler, benzer mimariye sahip hedef modelleri %60-80 oranında yanıltabilir. Sorgu tabanlı black-box saldırılar ise binlerce API çağrısı ile yüksek başarı oranlarına ulaşabilir.

Adversarial saldırılara karşı en etkili savunma yöntemi hangisidir?

Şu anda adversarial training, en güvenilir ve yaygın kabul görmüş savunma yöntemidir. Özellikle PGD-based adversarial training, geniş bir saldırı yelpazesine karşı dayanıklılık sağlar. Ancak tek bir savunma yöntemi tüm saldırılara karşı yeterli değildir; katmanlı savunma (defense in depth) yaklaşımı, girdi ön işleme, adversarial training ve anomali tespitini birleştirerek en kapsamlı korumayı sunar.

LLM'ler adversarial saldırılara karşı savunmasız mıdır?

Evet, büyük dil modelleri de adversarial saldırılara karşı savunmasızdır. Prompt injection, jailbreak ve universal adversarial suffix teknikleri, LLM'lerin güvenlik filtrelerini atlatabilir. Bu alan aktif olarak araştırılmakta olup, RLHF, constitutional AI ve red-teaming gibi yöntemlerle savunma güçlendirilmeye çalışılmaktadır.

]]>

Bu yazıyı paylaş