Yapay zeka size bir programın güvenlik açıklarını söyleyebilir mi? Belki, ama tüm inancını söylediklerine koymak istemeyebilirsin.

Sızma testi, bir sistemdeki diğer güvenlik açıklarını keşfetmek ve kötü amaçlı kod yürütmek için güvenlik açıklarını kullanmayı içeren bir güvenlik testidir. Bu testler özellikle veri madenciliğine karşı korunmak ve güvenlik açıklarını önlemek için önemlidir.

Sızma testleri, ağın güvenliğini test etmek için kullanılan çeşitli teknikleri içerir. Bu teknikler, ağı, güvenlik duvarlarını, güvenlik gözetim sistemlerini ve yapay zekayı taramayı içerir. Yapay zeka, ağ açıklarını ortaya çıkarmak için geliştirilen teknolojileri kullanarak güvenlik testlerini analiz edebilir.

Yapay zeka, sızma testleri ve otomatik olarak yürütülen güvenlik testleri için tasarlanmış özel algoritmalar ile daha kapsamlı ve etkin sonuçlara ulaşmanızı sağlayabilir.

Sızma Testi İçin Yapay Zeka Kullanmanın Faydaları

Günümüzde teknolojinin hızla gelişmesi ve kullanıcıların sürekli artan güvenlik ihtiyaçları, yapay zeka teknolojilerinin güvenlik testlerinde kullanılması gerekliliğini ortaya çıkarmıştır. Güvenliği artırmak için yapay zekayı kullanmak, çok daha hızlı ve daha verimli sonuçlar sağlayarak, genellikle özelleştirilmiş ve karmaşık güvenlik testleri gerçekleştirmek için zaman alan insan gücüne olan ihtiyacı ortadan kaldırır. AI, güvenlik açıklarının mümkün olan en kısa sürede tespit edilmesine yardımcı olur. Ayrıca benzersiz ve karmaşık güvenlik testleri gerçekleştirerek güvenlik açıklarının tespit edilmesini kolaylaştırır.

instagram viewer

AI, özellikle bir saldırıyı tespit etme ve engelleme konusunda oldukça başarılı görünüyor. Yapay zekayı eğitmek için çok büyük veri setlerine ihtiyaç vardır. Yüksek web trafiğine sahip bir uygulama bu konuda bir hayırseverdir. Çünkü gelen her trafiği yapay zekanın kullanması için bir veri kümesi gibi gösterebilirsiniz. Böylece, okuyabilen ve okuyabilen bir yapay zekanız var. web uygulama trafiğini analiz etme ve tehditleri tespit edin. Bu verilebilecek en basit örneklerden biridir.

Ayrıca, yalnızca web trafiğini değil, uygulamanız veya cihazınız için çok sayıda kötü amaçlı yazılımı da önceden algılayabilir. Bu yöntem daha şimdiden birçok güvenlik duvarı tarafından kullanılmaya başlandı.

Tüm bunlara ek olarak insan hatası da siber güvenlikteki en büyük sorunlardan biridir. Fark edilmeyen küçük bir kod güvenlik açığı, geri dönüşü olmayan büyük güvenlik sorunlarına yol açabilir. Kodlardaki güvenlik açıklarını tarayan bazı eklentiler, yapay zekanın gelişmesiyle ortaya çıkmış ve geliştiricileri bu tür sorunlar hakkında uyarmaktadır. Şimdiye kadar, insan hatalarını önlemede bir miktar başarı gösterdiler.

Ayrıca bir tehdide karşı gösterilen tepki süresi de oldukça önemlidir. Saldırı altındayken saldırıyı tespit etmek, savunma yolunu planlamak ve savunma sistemlerini devreye sokmak zaman alır. Ancak yapay zeka bu konuda çok yardımcı oluyor.

Siber Güvenlikte Yapay Zekanın Sınırlamaları

Yapay zekayı siber güvenlik amaçlarıyla kullanmak, kötü niyetli, temiz ve potansiyel olarak güvenli olmayan uygulamaları tanımlamayı ve analiz etmeyi gerektirir. Bir algoritmayı eğitmek için çok büyük veri kümeleri kullansanız bile sonuçtan asla emin olamazsınız. Sonuç olarak, tamamen makinelere ve yapay zekaya güvenmek güvenli değildir. Yapay zeka teknolojisinin insan müdahalesi ile desteklenmesi gerekiyor.

Bazı güvenlik aracı üreticileri, makine öğreniminden güç alan çözümlerin her örneği analiz edebileceğini iddia ediyor. Üreticilere göre, bu araçlar kötü amaçlı yazılımları yalnızca matematiksel yöntemlerle tespit edebiliyor. Ancak bu pek mümkün değildir.

Alan Turing'in İkinci Dünya Savaşı sırasında Enigma kodunu kırması buna çok güzel bir örnektir. Mükemmel bir makine bile bilinmeyen bir girdinin gelecekte istenmeyen davranışlara neden olup olmayacağına karar veremez. Bu kanıt, siber güvenlik de dahil olmak üzere birçok farklı alana uygulanabilir.

Siber güvenlikte makine öğrenimi uygulamalarının bir diğer ciddi kısıtlılığı ise yapay zeka modellerinin sınırları içinde saklıdır. Örneğin makineler, insanları satrançta yenebilecek kadar akıllı hale geldi.

Ancak satrancın belirli kuralları vardır. Satranç motorları bu kurallardan sapmaz. Siber güvenlik söz konusu olduğunda, saldırganların genellikle kuralları yoktur. Dijital ortamın sürekli değişen doğası, gelecekteki tüm tehditleri algılayabilen ve engelleyebilen koruyucu bir çözüm oluşturmayı imkansız kılıyor.

ChatGPT ile Kaynak Kod Analizi

OpenAI tarafından geliştirilen ChatGPT birçok alanda hayatımıza ciddi bir giriş yaptı. Yapabildiğin kadar bazı sorular sorun ve ChatGPT ile sohbet edin, ayrıca programlama ve yazılım konularında size yardımcı olmaya çalışır. ChatGPT, siber güvenlik açısından bakarsanız, kaynak kodu analizi bile yapmaya çalışır. Ancak ChatGPT henüz başlangıç ​​aşamasındadır ve kullanıma hazır hale gelmesi biraz zaman alacaktır.

Bunu daha iyi görmek için ChatGPT'nin gücünü test edelim. Örneğin, aşağıda bir XSS güvenlik açığı oluşturan basit bir JavaScript kodu bulunmaktadır. ChatGPT'ye bu kodu soralım ve güvenlik açıklarını bize bildirmesini sağlayalım.

belge.yazmak("Geçerli URL: " + belge.baseURI);

ChatGPT bir XSS güvenlik açığı cevap olarak. Bu oldukça iyi bir başlangıç. Ancak kaynak kodları asla bu kadar basit değildir. Öyleyse örneği biraz daha karmaşık hale getirmeye çalışalım.

Aşağıda C programlama dilinde hazırlanmış bir kod göreceksiniz. Bu C kodu, savunmasız bir uygulamaya ait. Hatta tamamen gerçek dünyadaki bir uygulamada kullanıldı. İsterseniz gerçek dünyadaki kaynak kodu güvenlik açıklarını inceleyebilirsiniz. Sonar 2022'de yayınlandı.

karakter *loggerPath *cmd;

geçersizdöndürmeGünlüğü(){
karaktergünlükEski[PATH_MAX], günlükYeni[PATH_MAX], zaman damgası[0x100];
zaman_t t;
zaman(&t);
strftime (zaman damgası, sizeof (zaman damgası), "%FT%T", süre(&t));
snprintf (logEski, sizeof (logEski), "%s/../logs/global.log", loggerPath);
snprintf (logNew, sizeof (logNew), "%s/../logs/global-%s.log", loggerPath, zaman damgası);
yürütme("/bin/cp", "/bin/cp", "-A", "--", günlükEski, günlükYeni, HÜKÜMSÜZ);
}

intana(int argc, karakter **argv){
eğer (argc != 2) {
printf("Kullanım: /opt/logger/bin/loggerctl \n");
geri dönmek1;
}

eğer (açık(0) == -1) geri dönmek1;
eğer (setuid(0) == -1) geri dönmek1;

karakter *executablePath = argv[0];
loggerPath = dizin adı (executablePath);
komut = argv[1];

eğer (!strcmp (cmd, "döndür")) döndürmeGünlüğü();
başka listCommands();
geri dönmek0;
}

Buradaki güvenlik açığı, bir saldırganın yönetici ayrıcalıkları olmadan bazı dosyalarda değişiklik yapabilmesidir. Bakalım ChatGPT bu güvenlik açığına nasıl yanıt verecek.

Bu koddaki asıl sorun setuid, Kullanıcı kimliği (uid) ve etkili kullanıcı kimliği (eid). Ancak çok fazla teknik detaya girmeden dikkat etmeniz gereken asıl nokta, ChatGPT algılayamadı bu ince kısım Bir sorun olduğunu anlayabilir ama ne yazık ki bu sorunun kökenine inemez.

Bu örnekler aracılığıyla, farklı programlama dillerine ve güvenlik açıklarına verilen tepkileri gördünüz. Kod gerçekten basitse ve bariz bir güvenlik açığı varsa, ChatGPT size yardımcı olabilir. Ancak kaynak kodu analizi, sızma testi ve diğer güvenlik analizleri için tamamen ChatGPT'ye güvenmemelisiniz.

Sızma Test Cihazlarının Geleceği

Yapay zeka, gelecekte penetrasyon testçilerinin çalışmalarının önemli bir parçası olacaktır. Örneğin, penetrasyon testi yapanların kötü amaçlı etkinliği manuel olarak algılamak için zaman ayırmaları gerekmeyecek ve güvenlik taramalarını otomatik olarak gerçekleştirebilecekler.

Yapay Zeka ayrıca, penetrasyon testi için yeni ve daha karmaşık saldırı tekniklerini tespit etmeye ve bunlara karşı önlem almaya yardımcı olacaktır. Ancak AI hala parkta oynayan bir çocuk gibidir ve bir yetişkinin tavsiyesine ihtiyaç duyar. Yakın gelecekte, siber güvenlik uzmanları ve penetrasyon test uzmanları kolay kolay işsiz kalmayacak.