Ana içeriğe atlayın
TECHNOLOGY

Siber Güvenlikte Makine Öğrenimi

Karar ağacı toplulukları, yerele duyarlı karma, davranışsal modeller veya gelen akışı kümeleme dahil olmak üzere tüm makine öğrenimi (machine learning, ML) yöntemlerimiz; düşük hatalı pozitif sonuç oranı, yorumlanabilirlik ve potansiyel düşmanlara karşı dayanıklılık gibi gerçek dünyaya ilişkin güvenlik gereksinimlerini karşılamak için tasarlanmıştır.

Yapay zeka alanında bir öncü olan Arthur Samuel, makine öğrenimini "bilgisayarlara açık bir şekilde programlanmadan öğrenme yeteneği kazandıran" bir dizi yöntem ve teknoloji olarak tanımlamıştır. Kötü amaçlı yazılımdan korumaya yönelik denetimli öğrenme durumunda, görev şu şekilde formüle edilebilir: Girdi olarak bir dizi nesne özelliği (X) ve ilgili nesne etiketleri (Y) verildiğinde, daha önce görülmemiş X test nesneleri için doğru Y etiketleri üreten bir model oluşturma. Bu durumda X, dosya içeriğini veya davranışını temsil eden birtakım özellikler olabilir (dosya istatistikleri, kullanılan API işlevlerinin listesi vb.). Y etiketleri ise basitçe "kötü amaçlı" veya "iyi amaçlı" olabilir (daha karmaşık durumlarda Virüs, Trojan İndirici, Reklam Yazılımı gibi daha spesifik sınıflandırma kullanılabilir). Denetimsiz öğrenme, daha çok gizli veri yapılarını ortaya çıkarmakla ilgilidir (ör. benzer nesne gruplarını veya yüksek oranda ilişkili özellikleri bulma).

Kaspersky'nin çok katmanlı yeni nesil koruması; altyapıda gelen dosya akışını önceden işlemek için kullanılan ölçeklenebilir kümeleme yöntemlerinden, doğrudan kullanıcıların makinelerinde çalışacak, davranış tabanlı algılamaya yönelik sağlam ve kompakt derin sinir ağı modellerine kadar birçok makine öğrenimi yöntemini tehdit algılama sürecinin tüm aşamalarında yoğun bir biçimde kullanır. Bu teknolojiler, gerçek dünyadaki bilgi güvenliği uygulamalarındaki makine öğrenimi modellerine yönelik çok düşük hatalı pozitif sonuç oranı, model yorumlanabilirliği ve potansiyel düşmanlara karşı dayanıklılık gibi birçok önemli gereksinimi karşılamak amacıyla tasarlanmıştır.

Şimdi, Kaspersky'nin uç nokta ürünlerinde kullanılan en önemli makine öğrenimi tabanlı teknolojilerden bazılarını inceleyelim.

Karar ağacı topluluğu

Bu yaklaşımda, kestirimci model bir dizi karar ağacı (ör. rastgele orman veya gradyan artırılmış ağaçlar) biçimini alır. Bir ağaçtaki yaprak olmayan düğümler dosyanın özellikleriyle ilgili bir soru içerirken yaprak düğümler, ağacın nesneyle ilgili son kararını içerir. Test aşamasında model, düğümdeki soruları incelenmekte olan nesnenin ilgili özellikleriyle cevaplayarak ağacı bir yandan öbür yana dolaşır. Son aşamada, nesneyle ilgili son kararı sağlamak için algoritmaya özgü bir şekilde birçok ağacın kararlarının ortalaması alınır.

Model, uç nokta sitesindeki Yürütme Öncesi Proaktif Koruma aşaması için faydalıdır. Bu teknolojiyi kullandığımız uygulamalardan biri mobil tehdit algılaması için kullanılan Cloud ML for Android'dir.

Benzerlik karması (Yerele duyarlı karma)

Eskiden kötü amaçlı yazılım "ayak izi" oluşturmak için kullanılan karmalar, bir dosyadaki her bir küçük değişikliğe duyarlıydı. Bu sorun, kötü amaçlı yazılım yazarları tarafından sunucu tarafında çok biçimlilik gibi gizlenme teknikleriyle kötüye kullanılıyordu: Kötü amaçlı yazılımdaki küçük değişiklikler yazılımın radara yakalanmamasını sağlıyordu. Benzerlik karması (ya da bölgeye duyarlı karma) benzer kötü amaçlı dosyaları algılamaya yönelik bir yöntemdir. Bunu yapmak için sistem, dosya özelliklerini ayıklar ve en önemli özellikleri seçmek için dikey izdüşümlü öğrenme kullanır. Ardından, benzer özelliklerin değer vektörlerinin benzer veya aynı şablonlara dönüştürülmesi için ML tabanlı sıkıştırma uygulanır. Bu yöntem iyi seviyede genelleştirme sağlar ve artık tek bir kayıt, çok biçimli kötü amaçlı yazılım ailesinin tamamını algılayabildiği için algılama kayıtları veritabanının boyutunu büyük ölçüde azaltır. Model, uç nokta sitesindeki Yürütme Öncesi Proaktif Koruma aşaması için faydalıdır. Bu teknoloji, Benzerlik Karması Algılama Sistemi'mizde kullanılır.

Davranışsal model

İzleme bileşeni, bir davranış günlüğü (ilgili değişkenlerle birlikte işlemin yürütülmesi sırasında meydana gelen sistem olaylarının listesi) sağlar. Gözlemlenen günlük verilerindeki kötü amaçlı yazılım etkinliklerini algılamak için modelimiz, elde edilen olay listesini sıkıştırarak bir ikili vektör kümesi haline getirir ve derin sinir ağını, temiz ve kötü amaçlı günlükleri ayırt edecek şekilde eğitir. Davranışsal model tarafından yapılan nesne sınıflandırması, uç nokta sitesindeki Kaspersky ürünlerinde hem statik hem de dinamik algılama modülleri tarafından kullanılır.

Makine öğrenimi, düzgün laboratuvar içi kötü amaçlı yazılım işleme altyapısı oluşturma konusunda da oldukça önemli bir rol oynar. Bunu, aşağıdaki altyapı amaçları için kullanıyoruz:

Gelen akışı kümeleme

ML tabanlı kümeleme algoritmaları, altyapımıza gelen büyük hacimli bilinmeyen dosyaları etkili bir şekilde makul sayıdaki kümelere ayırmamıza olanak tanır. Bu kümelerden bazıları, içinde daha önceden not eklenmiş bir nesne bulunuyorsa otomatik olarak işlenebilir.

Büyük ölçekli sınıflandırma modelleri

En güçlü sınıflandırma modellerinden bazıları (devasa bir rastgele karar ağacı gibi), pahalı özellik ayıklayıcıların (ör. ayrıntılı davranış günlükleri için korumalı alan üzerinden işleme gerekebilir) yanı sıra yüksek miktarda kaynak (işlemci süresi, bellek) gerektirir. Bu nedenle modelleri bir laboratuvarda tutmak ve burada çalıştırmak, ardından hafif bir sınıflandırma modelini daha büyük modelin çıktı kararları üzerine eğiterek bu tür modellerle elde edilen bilgileri damıtmak daha verimlidir.

Makine Öğreniminin Güvenliği

ML algoritmaları, laboratuvar sınırlarından çıkıp gerçek dünyayla tanıştığında, ML sistemlerini kasti hatalar yapmaya zorlamak üzere tasarlanmış birçok saldırı türüne karşı savunmasızdır. Bir saldırgan, eğitim veri setini bozabilir veya modelin koduna tersine mühendislik uygulayabilir. Bunun yanı sıra korsanlar, modelin zayıf bir noktası bulunana kadar otomatik olarak çok sayıda saldıran örnek üreten özel olarak geliştirilmiş "düşman AI" ile ML modellerine "kaba kuvvet" uygulayabilir. Bu tür saldırıların ML tabanlı kötü amaçlı yazılımdan koruma sistemleri üzerinde yıkıcı bir etkisi olabilir: Yanlış tanımlanan bir Trojan, milyonlarca cihaza virüs bulaştırarak milyonlarca dolar zarara sebep olabilir.

Bu nedenle, güvenlik sistemlerinde ML kullanımı için göz önünde bulundurulması gereken bazı önemli noktalar söz konusudur:

  • Güvenlik çözümü tedarikçisi, gerçek ve büyük ihtimalle düşmanca olan dünyada ML performansı için önemli gereksinimleri (potansiyel düşmanlara dayanıklılık dahil) anlamalı ve bunları dikkatli bir şekilde ele almalıdır. ML/AI'a özgü güvenlik denetimleri ve "kırmızı takım" çalışmaları, ML/AI geliştirme sürecinin temel bir bileşeni olmalıdır.
    • Bir ML çözümünün güvenliği değerlendirilirken, çözümün üçüncü taraf verilerine ve mimarisine ne kadar bağlı olduğuyla ilgili sorular sorulmalıdır. Bunun sebebi, çok fazla sayıda saldırının üçüncü taraf girdilerini (tehdit istihbaratı akışları, herkese açık veri kümeleri, önceden eğitilip dış kaynaklara verilen ML modelleri) kullanmasıdır.
    • ML yöntemleri, "her şeyin çözümü" olarak görülmemelidir. Bu yöntemler, tamamlayıcı koruma teknolojilerinin ve uzman kişilerin birlikte çalışıp birbirini kolladığı bir çok katmanlı güvenlik yaklaşımının parçası olmalıdır.

ML algoritmalarını hedef alan popüler saldırılar ve bu tehditlerden korunma yöntemlerine ilişkin daha ayrıntılı inceleme için tanıtım belgemize göz atın: "AI Under Attack: How to Secure Machine Learning in Security System" (AI Saldırı Altında: Güvenlik Sisteminde Makine Öğrenimini Güvence Altına Alma).

İlgili Ürünler

İlgili Teknolojiler

Whitepaper

Machine Learning for Malware Detection


Whitepaper

Machine learning and Human Expertise

Whitepaper

AI under Attack: How to Secure Machine Learning in Security System

Independent Benchmark Results