SlideShare a Scribd company logo
Adaptif Penetration(Sızma) Testleri
1
1) Giriş
2) Penetration Test(Sızma Testi)
3) Problemler
4) Amaç
5) Pekiştirmeli Öğrenme(RL)
6) RL: İlk Yaklaşım→ NIG-AP Algoritması(Network İnformation Gain Based Automated
Attack Planning), MDP
7) RL: 2.nci Yaklaşım→ (Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL)),
MDP
8) RL: 3.üncü Yaklaşım→ IAPTS(Intelligent Automated Penetration Testing System),
POMDP
9) SONUÇLAR
10)KAYNAKLAR
HAMDİ SEVBEN
2
Penetration Test(Sızma Testi)
 Penetrasyon testi (veya pentesting), bilgisayar sistemlerinin ve ağlarının güvenliğini değerlendirmek için yaygın olarak
kullanılan, önemli metodolojilerden biridir[8].
 Penetrasyon testi birkaç güvenlik testi türünden sadece biridir.
 Wai, penetrasyon testini, kötü niyetli bilgisayar korsanları yerine güvenilir bir kişi tarafından gerçekleştirilen saldırı etkinliği
olarak tanımlamaktadır[9].
 Geer ve Harthorne penetrasyon testini yasal bir şekilde yasadışı yollardan bir şey kazanma kabiliyeti olarak
yorumlamaktadır[9].
 Pentest, saldırganlar tarafından kötüye kullanılabilecek güvenlik açıklıklarını bulmak için sisteme yetkili, kontrollü saldırılar
gerçekleştirmeyi kapsar. Bu yöntem, gerçek dünyadaki saldırganların pratikte ne yapacaklarının ya da yapabileceklerinin bir
simülasyonudur[3].
[3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
[8] Ge Chu and Alexei Lisitsa, 2019. Agent-based (BDI) modeling for automation of penetration testing.
[9] Norah Ahmed Almubairik and Gary Wills, 2016. Automated Penetration Testing Based on a Threat Model.
3
Penetration Test(Sızma Testi)
 Sistemlerin gittikçe artan oranda dağıtık yapıda olması, karmaşıklaşması ve farklı teknolojilerin bir arada
toplanması.
 Güvenlik dinamik bir alan olup; sürekli yeni saldırılar, yeni metotlar ve yeni açıklıklar ortaya çıkmaktadır[3].
 Uzman olmayanların düzenli ve sistematik güvenlik testleri gerçekleştirmesi zordur[10].
 Para ve zaman açısından maliyetlidir, yeterli sayıda uzman personelin olmaması da büyük bir problemdir[9].
 Sızma testi ekibi, bilgi ve uzmanlıklarına dayanarak bir sistemin güvenliğini makul bir şekilde inceler, ancak mevcut tüm
tehditleri kontrol edemeyebilirler. Öte yandan, görmezden gelinen tek bir tehdit bile tüm sistemi tehlikeye atabilir ve
sonunda olumsuz durumlara yol açabilir[9].
 Manuel penetrasyon test süreciyle ilgili bir husus, tüm tehdit çeşitlerinin test edilmesinin pentesterlar için zaman alıcı ve
yorucu olmasıdır. Saldırı alanının önemli bir bölümünün araştırılmadan bırakılma olasılığı vardır. Dolayısıyla süreç, yoğun
emek gerektiren bir çalışma olduğu için pahalıdır[9].
 Mevcut sistemler ve frameworkler, büyük varlıkların kapsamlı testini ve değerlendirmesini insan uzmanlar gibi aynı şekilde
otonom olarak gerçekleştiremez[2].
 Core Impact, Nexpose, Nessus, Qualys, Tenable, Immunity Canvas ve Metasploit, mevcut toollar ve frameworkler, PT
çözümlerinden ziyade açıklık tarayıcılarıdır. Bilgi toplamadan istismara kadar tüm süreci kapsamazlar, nadiren vaat edilen
sadeliği ve kullanım esnekliği sunarlar. Otomasyon, uygulamanın planlanması, görevlerin organizasyonu,
optimizasyon/görselleştirme ve raporlama ile sınırlıdır[2].
4
Problemler
[2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing.
[3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
[9] Norah Ahmed Almubairik and Gary Wills, 2016. Automated Penetration Testing Based on a Threat Model.
[10] Franz Wotawa, 2016. On the Automation of Security Testing.
 Otomatik saldırı planlama, siber güvenlik ve akıllı planlama alanlarını içeren disiplinler arası bir alandır[1].
 Düzenli ve sistematik test olanağı sunan, insan kaynaklarından tasarruf sağlayan sistemler tasarlamak[4].
 Otomatik sistemler için ana zorluk; optimizasyon, yani sistem alakasız görevleri işleyerek aşırı zaman tüketmemelidir.
Aynı zamanda mevcut tüm tehditleri sistematik ve verimli bir şekilde kontrol ederek hiçbir tehdidin göz ardı edilmemesini
sağlamalıdır[1].
 Nihai hedef, akıllı ve otomatik pentest gerçekleştirmede insan PT uzmanlarını taklit edebilen bir sistemdir. Sistem, uzman
tarafından kabul edilebilecek veya reddedilebilecek bulgular ve öneriler sunarak karmaşık durumlarla başa çıkmak için
uzmanla doğrudan etkileşime girebilmelidir[2].
 Pratik açıdan, makine öğreniminin otomatik bir PT sistemine dahil edilmesi, yorgunluk, ihmal ve baskı nedeniyle
tekrarlanan insan hatalarını azaltacaktır. Ayrıca, farklı testleri verimli bir şekilde gerçekleştirerek zaman ve kaynak
kullanımını azaltacaktır. Otomasyon normal çalışma saatlerinden sonra çalışarak ağ tıkanıklığını ve kesinti süresini
azaltabilir[3].
5
Amaç
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
[2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing.
[3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
[4] Carlos Sarraute, Olivier Buffet and Jörg Hoffmann, 2013. Penetration Testing == POMDP Solving?
6
Pekiştirmeli Öğrenme(RL)
 RL, agentın çevre ile etkileşime girerek önceki deneyimlerden öğrenmesini sağlar. RL ödülleri genellikle zamanla ertelenir ve agent
uzun vadeli bir hedefi en üst düzeye çıkarmaya çalışır[2].
 Pekiştirmeli öğrenme (Sutton ve Barto, 1998) bir çeşit deneme yanılma algoritmasıdır. Agenta ne yapması gerektiği söylenmiyor,
ancak sayısal ödülle yönlendirilen eylemde bulunuyor[1].
 Markov karar süreci denilen bir model kullanmaktadır. (S, A, R, T, γ) olarak gösterilebilir[1][2][3].
 Bir RL sisteminin çevre ve agent dışında dört ana bileşeni vardır. Bunlar: politika π, ödül fonksiyonu R(s', a, s), değer fonksiyonu V(s)
ve çevre modeli T’dir [1][2][3].
 RL'yi diğer AI planlama tekniklerine göre kullanmanın en önemli avantajı, exploitlerin ve ağın transition modeli hakkında
önceden bilgi sahibi olmayı gerektirmemesi ve dolayısıyla uygulamada çok genel olması, aynı algoritmanın mevcut değişen
sayıda exploitler ile farklı ağ topolojilerine ve konfigürasyonlarına uygulanabilmesidir.
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
[2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing.
[3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
7
RL: İlk Yaklaşım→NIG-AP Algoritması
(Network İnformation Gain Based Automated Attack Planning)
 Pekiştirmeli öğrenmenin amacı, kümülatif ödülü(1) en üst seviyeye çıkarmak için π(a|s) politikasını optimize etmektir.
 Q-learning’te, bu işlem sırasındaki kümülatif ödül(2) yandaki gibi gösterilebilir:
 Politika uzayı içerisinde, Q*(s, a) ≥ Qπ(s, a) 'yı karşıladığı bazı politikalar vardır, burada * en uygun politikadır.
 Banach sabit nokta teoremine göre (Mnih ve diğerleri, 2013), Q(s, a) en uygun değerde yineleyecek, böylece, politika yinelemesinden sonra aşağıda gösterilen
formüle göre(4) en uygun politikayı çıkartabiliriz:
 Pekiştirmeli öğrenmeye derin sinir ağı ekledikten sonra (Şekil b), derin pekiştirmeli öğrenme (DRL) olur (Mnih ve arkadaşları, 2015). Adam algoritması (Kingma
ve Ba, 2014) genellikle derin sinir ağı eğitmek için benimsenmiştir. Güncelleme formulü(5) aşağıdaki gibi gösterilir:
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
8
RL: İlk Yaklaşım→NIG-AP Algoritması
MDP(Markov Karar Süreci)
 Ayrıntılı host bilgisi [Pos, Papp , Pport , Ppro] vektörü olarak resmileştirilebilir.
 Genel bir vektör göz önüne alındığında, kurban bilgisayarın ifşa durumunu temsil etmek için bilgi entropisi (Liang
ve shi, 2004) benimsenmiştir. Aşağıdaki gibi hesaplanır(6):
 Ağ bilgi kazanımını (Lee ve Lee, 2006): ΔH = H(Pbefore) − H(Pafter) (7)
 Ağ bilgi kazanımını hesaplamak için üç tür durum olacaktır:
 Bir agentın bir eylemi için ödül r, r = rgain + rcost olup; rgain ve rcost olarak iki parçadan oluşur. rgain bilgi kazancı
olup, rcost eylem maliyetidir. Rcost formulü aşağıdaki gibi gösterilir:
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
9
RL: İlk Yaklaşım→NIG-AP Algoritması
MDP(Markov Karar Süreci)
 Penetrasyon testi, tipik bir Markov karar süreci (MDP) olarak görülebilir(11):
 {S0, A0, R1, S1, A1, R2, . . . ,Si, Ai, Ri+1, . . . , Sn, An, Rn+1} (11)
 Penetrasyon testi, denklem (1) olarak formulleştirilir, sınırlı bir süre içinde hedef hostlara nüfuz etmeyi amaçlar.
 MDP'nin amacı, kümülatif kazanç Gt maksimize eden en iyi politika π’yi bulmaktır. (12) ile gösterilir:
 max E[Gt | π] (12)
 Bellman denklemine göre, spesifik bir bilgisayar için Q(s, a)’nın güncelleme formulü (13) deki gibi gösterilir:
 Derin sinir ağının parametrelerini Q(s, a) ' ya uyacak şekilde güncellemek için Adam algoritması benimsenmiştir.
Güncelleme formulü (14) deki gibi gösterilir:
 m
̂ t ve v
̂ t (15) ve (16) daki gibi hesaplanır:
 Spesifik bir hostu bir ağ senaryosuna genişletmek için, tespit edilen bilgisayarları kaydetmek için gözlemlenen bir
bilgisayar seti Φ oluşturulur.
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
(13)
(14)
(15)
(16)
10
RL: İlk Yaklaşım→NIG-AP Algoritması
Deneyler
 İlk olarak NIG-AP ile POMDP karşılaştırtılmıştır. Ayrıca NIG-AP, Q-learning optimizasyon algoritması NIG-AP(Q),
relative value iteration optimizasyon algoritması NIG-AP(RVI), value iteration algoritması NIG-AP(VI), policy
iteration algoritması NIG-AP(PI), modified policy iteration algoritması NIG-AP(PIM) ve value iteration Gerchberg-
Saxton algoritması NIG-AP(VIGS); gibi optimizasyon algoritmalarıyla beraber kullanılmıştır.
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
11
RL: İlk Yaklaşım→NIG-AP Algoritması
Deneyler
 NIG-AP(VI), NIG-AP(RVI) ve NIG-AP(PIM) algortimalarI, NIG-AP(Q) ve NIG-AP(VIGS) algortimalarından daha iyi performans
gösterir.
 14 durum için eğitim zamanı 0.5 saniye ile limitliyken; NIG-AP(VI), NIG-AP(RVI), NIG-AP(PI) ve NIG-AP(PIM) için 0.02 saniye ile
limitlidir.
 Host sayısı 3’e ulaştığında APPL toolkiti problemi çözemez. Bu da POMDP’un verimliliğinin çok yavaş olduğunu, büyük
network senaryolarına genelleştirilemeyeceğini fakat NIG-AP’nin büyük network senaryolarında etkili bir şekilde saldırı
yollarını bulabileceğini gösterir.
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
12
RL: İlk Yaklaşım→NIG-AP Algoritması
Deneyler
 Mevcut exploitlerin sayısının 10 ile sınırlandırıldığı, büyük bir network senaryosunda verimlilik
ölçümü aşağıdaki tablodaki gibidir.
 NIG-AP, POMDP ve FF’e göre daha iyi performans göstermektedir.
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
13
RL: İlk Yaklaşım→NIG-AP Algoritması
Deneyler
 Aşağıdaki grafik farklı algortimaların verimlilik oranlarını
göstermektedir.
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
14
RL: İlk Yaklaşım→NIG-AP Algoritması
Deneyler
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
 NIG-AP daha az trafik üretirken, FF devasa network trafiği üretmiştir ve çok daha fazla dalgalanmıştır.
 FF’in saniyedeki paket hızı 260 iken, NIG-AP’nin 190 ve FF’in ürettiği hata paketlerinin sayısı çok yüksektir.
 Buda gösteriyor ki en verimli seçimin NIG-AP algortiması olduğudur.
15
RL: 2.nci Yaklaşım→ (MDP)
Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL)
[3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
 Bu çalışma için kullanılan eylem seçim stratejileri , ε-greedy ve üst düzey güven sınırı (UCB)(upper confidence bound)
eylem seçimidir.
 ε-greedy eylem seçim stratejisi, ε olasılığı ile rastgele bir eylem seçerek ve zamanın geri kalanında mevcut en iyi eylemi
seçerek bunu yapar(1).
 UCB eylem seçimi, eylem seçimi yaparken ekstra bir keşif terimi kullanır(2).
(1)
(2)
 Değer güncelleme stratejisi için Q-learning'i kullanıyoruz. Q-learning, eylem durumu değerlerini öğrenmek için politika
dışı bir zamansal fark algoritmasıdır ve denklemdeki güncelleme fonksiyonu ile tanımlanır(3):
(3)
16 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
Değer fonksiyonunun (Q (s, a)) aldığı iki ana seçenek vardır:
i) tabular ve ii) fonksiyon yaklaşımı.
Üç farklı Q-learning algoritmasından yararlanıyoruz:
*tabular Q-learning (tabular ε-greedy)
*tabular Q-learning (tabular UCB)
*deep Q-learning (DQL)
RL: 2.nci Yaklaşım→ (MDP)
Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL)
17 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
RL: 2.nci Yaklaşım→ (MDP)
Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler
 Single-site ve standart network senaryoları için yakınsama, her üç algoritma için benzer sayıda bölümden sonra (single-
site için ~1000 bölüm ve standart ağ için ~150 bölüm) sonra meydana gelir.
 Multi-site network senaryosu için, iki tabular algoritma için ~100 bölüm, DQL algoritması > 1000 bölüm ile
karşılaştırıldığında önemli ölçüde daha hızlı bir şekilde birleşir.
18 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
RL: 2.nci Yaklaşım→ (MDP)
Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler
 DQL standart ağ için ~50 saniye ve single-site networkü için ~75 saniye sürerken; tabular yöntemler single-site ve standart
network senaryolarında <10 saniyede yakınsadı.
 Multi-site network senaryosu için yakınsama süresi <25 saniye ile tüm algoritmalar için daha benzerdir, ancak DQL ~5
saniye ile en yavaş kalan oluyor.
19 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
RL: 2.nci Yaklaşım→ (MDP)
Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler
 Tabular yöntemler DQL algoritmasından önemli ölçüde daha hızlıdır; Tabular ε-greedy, en kötü durumda DQL'den 50 kat daha fazla,
Tabular UCB ise en kötü durumda DQL'den 37 kat fazla performans gösterdi.
 Bu fark, DQL Yapay Sinir Ağı hesaplamaları için gerekli ek hesaplama nedeniyle beklenmektedir. Tabular yöntemlerin artan hızı,
bölüm başına daha yavaş öğrenme oranını oluşturur ve hala test senaryolarında en iyi performansa sahip olmalarını sağlar.
20 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
RL: 2.nci Yaklaşım→ (MDP)
Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler
 Üç RL agent, multi-site ve standart network senaryolarında rastgele olmaktan çok daha iyi performans gösterdi.
 Single-site network senaryosu için, Tabular UCB ve DQL algoritmaları eşit derecede iyi veya daha iyi performans gösterirken,
Tabular ε-greedy agent aslında random agent’tan daha kötü performans gösterdi.
 DQL algoritmasının performansı, farklı senaryolar arasında en tutarlı olanıdır.
21 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
RL: 2.nci Yaklaşım→ (MDP)
Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler
 Ağdaki makinelerin sayıs 3'ten 43’e kadar 5’er arttırarak test edildi ve bu sırada erişilebilir servis sayısı 5'te tutuldu.
 Performans, 18 makine içeren ağlara kadar her üç algoritma için random politikadan daha iyiydi.
 18 makineden daha fazla test edilen ağlar için, DQL ve Tabular UCB algoritmalarının performansı hızla azaldı, ancak
her iki algoritma da 23 ve 28 makineli ağlar için senaryoların %50'sinden fazlasını randomdan daha iyi bir ortalama ödül
ile çözebildi.
 Tabular ε-greedy için performans, 33 makineye kadar olan ağ için sürekli olarak yüksekti ve bundan sonra performans
43 makineli ağlar için random olandan daha kötüye düştü.
22 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
RL: 2.nci Yaklaşım→ (MDP)
Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler
 18 makineden oluşan sabit boyutlu bir networkte exploitlerin sayısının 5’er arttırımla 1'den 51'e kadar artırılmasının etkisi
ölçülmüştür. Test edilen tüm exploit sayıları için en uygun performansı sürdüren Tabular ε-greedy oldu.
 Tabular UCB, optimum performanstan daha düşüktü, ancak istismarların sayısı arttıkça performans nispeten istikrarlı kaldı.
 Test edilen tüm değerler için en çok etkilenen random karşılaştırılabilir performansa sahip olan DQL'dir.
 Tabular RL algoritmalarının performansının, artan sayıda exploitten nispeten etkilenmediğini,
 Tabular ε-greedy algoritmasının optimum performansa yakın olduğunu ve test edilen her senaryo konfigürasyonunun neredeyse
%100'ünü çözdüğünü gördük. Öte yandan, DQL'in performansı random bir politikadan çok daha iyi değildir.
23 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
SONUÇLAR #1
 Senaryolar, belirli sayıda makine içeren ağlarla sınırlıdır ve bu nedenle gerçek hayatta yüzlerce makinenin
olduğu büyük ticari ağlara kıyasla nispeten küçüktür. Özellikle, algoritmaları ağdaki makine sayısıyla ve
ayrıca agentların kullanabileceği exploit sayısı ile ölçeklendirme problemi vardır.
 Agent’lara sadece iki dakikalık eğitim süresi verilmiştir. Bu nedenle, RL agent’larının daha fazla eğitim
süresi ile daha büyük boyuttaki problemlere uygulanmaları beklenebilir.
 Başka bir sınırlama, yalnızca üç farklı ağ topolojisinin test edilmesidir; gerçek dünyada karşılaşılan olası
topolojiler sonsuzdur.
 Bu ölçeklendirme deneylerine dayanarak, bu çalışmada kullanılan yaklaşımın büyük ağlara ve çok sayıda
exploite iyi ölçeklenemeyeceği anlaşılmaktadır.
 Tabular RL algoritmaları, çok makineye sahip ağları ölçekleyememekle birlikte, eylem sayısı ile iyi
ölçeklenebilir.
 DQL algoritmasına daha fazla eğitim süresi verilerek ve daha gelişmiş algoritmalar kullanarak, daha büyük
ağlara ölçeklendirmek mümkün olabilir, ancak bu yaklaşım artan sayıda eylemi iyi ölçekleyememektedir.
24
SONUÇLAR #2
 Güvenlik açıkları hakkında zamansal bilgileri planlama algoritmasına dahil etme, bir
güvenlik açığının zamanı ya da güncelliğini belirleyecektir. Örneğin, 0-day açıklığı,
penetrasyon testlerinde önceden keşfedilen güvenlik açıklarından çok daha kullanışlıdır.
Zamana göre ödül fonksiyonunu ayarlayarak, eğitim algoritması son eğitim örneklerine
yatkın yapılabilir.
 Başka bir öneri, açıklıkları zaman damgasına göre sıralamak olabilir, böylece yeni
istismarlar her zaman ilk kabul edilir[1].
 Diğer araştırma, saldırı şeması üretmek için transfer öğrenmeyi kullanmak olabilir.
Pentest bilgisi çeşitli senaryolarda benzer olduğundan, transfer öğrenmesi bize daha az
senaryo örneği ile bir agentı eğitmenin yolunu gösterir[1].
 Tez konusu, makine öğrenmesi ve güncel diğer yaklaşım ve teknikleri
kullanarak 0-day tespiti üzerine yoğunlaşılacaktır.
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
[2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing.
[3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
devhunteryz.wordpress.com/2018/07/28/transfer-ogrenimi-transfer-learning/ , medium.com/@ayyucekizrak/derı̇ne-daha-derı̇ne-evrişimli-sinir-ağları-2813a2c8b2a9
25
Kaynaklar
[1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for
automated penetration testing.
[2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration
Testing.
[3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning
[4] Carlos Sarraute, Olivier Buffet and Jörg Hoffmann, 2013. Penetration Testing == POMDP Solving?
[5] Carlos Sarraute, Olivier Buffet and Jörg Hoffmann, 2013. POMDPs Make Better Hackers:
Accounting for Uncertainty in Penetration Testing.
[6] Jörg Hoffmann, 2015. Simulated Penetration Testing: From “Dijkstra” to “Turing Test++”.
[7] Josip Bozic and Franz Wotawa, 2017. Planning the Attack! Or How to use AI in Security Testing?
[8] Ge Chu and Alexei Lisitsa, 2019. Agent-based (BDI) modeling for automation of penetration testing.
[9] Norah Ahmed Almubairik and Gary Wills, 2016. Automated Penetration Testing Based on a Threat Model.
[10] Franz Wotawa, 2016. On the Automation of Security Testing.
Kaynaklar
TEŞEKKÜRLER...

More Related Content

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
Marius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
Expeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
Pixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
marketingartwork
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
Skeleton Technologies
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
SpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Lily Ray
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
Rajiv Jayarajah, MAppComm, ACC
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
Christy Abraham Joy
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
Vit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
MindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Adaptif Penetration(Sızma) Testleri - Sunum

  • 1. Adaptif Penetration(Sızma) Testleri 1 1) Giriş 2) Penetration Test(Sızma Testi) 3) Problemler 4) Amaç 5) Pekiştirmeli Öğrenme(RL) 6) RL: İlk Yaklaşım→ NIG-AP Algoritması(Network İnformation Gain Based Automated Attack Planning), MDP 7) RL: 2.nci Yaklaşım→ (Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL)), MDP 8) RL: 3.üncü Yaklaşım→ IAPTS(Intelligent Automated Penetration Testing System), POMDP 9) SONUÇLAR 10)KAYNAKLAR HAMDİ SEVBEN
  • 2. 2 Penetration Test(Sızma Testi)  Penetrasyon testi (veya pentesting), bilgisayar sistemlerinin ve ağlarının güvenliğini değerlendirmek için yaygın olarak kullanılan, önemli metodolojilerden biridir[8].  Penetrasyon testi birkaç güvenlik testi türünden sadece biridir.  Wai, penetrasyon testini, kötü niyetli bilgisayar korsanları yerine güvenilir bir kişi tarafından gerçekleştirilen saldırı etkinliği olarak tanımlamaktadır[9].  Geer ve Harthorne penetrasyon testini yasal bir şekilde yasadışı yollardan bir şey kazanma kabiliyeti olarak yorumlamaktadır[9].  Pentest, saldırganlar tarafından kötüye kullanılabilecek güvenlik açıklıklarını bulmak için sisteme yetkili, kontrollü saldırılar gerçekleştirmeyi kapsar. Bu yöntem, gerçek dünyadaki saldırganların pratikte ne yapacaklarının ya da yapabileceklerinin bir simülasyonudur[3]. [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. [8] Ge Chu and Alexei Lisitsa, 2019. Agent-based (BDI) modeling for automation of penetration testing. [9] Norah Ahmed Almubairik and Gary Wills, 2016. Automated Penetration Testing Based on a Threat Model.
  • 3. 3 Penetration Test(Sızma Testi)  Sistemlerin gittikçe artan oranda dağıtık yapıda olması, karmaşıklaşması ve farklı teknolojilerin bir arada toplanması.
  • 4.  Güvenlik dinamik bir alan olup; sürekli yeni saldırılar, yeni metotlar ve yeni açıklıklar ortaya çıkmaktadır[3].  Uzman olmayanların düzenli ve sistematik güvenlik testleri gerçekleştirmesi zordur[10].  Para ve zaman açısından maliyetlidir, yeterli sayıda uzman personelin olmaması da büyük bir problemdir[9].  Sızma testi ekibi, bilgi ve uzmanlıklarına dayanarak bir sistemin güvenliğini makul bir şekilde inceler, ancak mevcut tüm tehditleri kontrol edemeyebilirler. Öte yandan, görmezden gelinen tek bir tehdit bile tüm sistemi tehlikeye atabilir ve sonunda olumsuz durumlara yol açabilir[9].  Manuel penetrasyon test süreciyle ilgili bir husus, tüm tehdit çeşitlerinin test edilmesinin pentesterlar için zaman alıcı ve yorucu olmasıdır. Saldırı alanının önemli bir bölümünün araştırılmadan bırakılma olasılığı vardır. Dolayısıyla süreç, yoğun emek gerektiren bir çalışma olduğu için pahalıdır[9].  Mevcut sistemler ve frameworkler, büyük varlıkların kapsamlı testini ve değerlendirmesini insan uzmanlar gibi aynı şekilde otonom olarak gerçekleştiremez[2].  Core Impact, Nexpose, Nessus, Qualys, Tenable, Immunity Canvas ve Metasploit, mevcut toollar ve frameworkler, PT çözümlerinden ziyade açıklık tarayıcılarıdır. Bilgi toplamadan istismara kadar tüm süreci kapsamazlar, nadiren vaat edilen sadeliği ve kullanım esnekliği sunarlar. Otomasyon, uygulamanın planlanması, görevlerin organizasyonu, optimizasyon/görselleştirme ve raporlama ile sınırlıdır[2]. 4 Problemler [2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing. [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. [9] Norah Ahmed Almubairik and Gary Wills, 2016. Automated Penetration Testing Based on a Threat Model. [10] Franz Wotawa, 2016. On the Automation of Security Testing.
  • 5.  Otomatik saldırı planlama, siber güvenlik ve akıllı planlama alanlarını içeren disiplinler arası bir alandır[1].  Düzenli ve sistematik test olanağı sunan, insan kaynaklarından tasarruf sağlayan sistemler tasarlamak[4].  Otomatik sistemler için ana zorluk; optimizasyon, yani sistem alakasız görevleri işleyerek aşırı zaman tüketmemelidir. Aynı zamanda mevcut tüm tehditleri sistematik ve verimli bir şekilde kontrol ederek hiçbir tehdidin göz ardı edilmemesini sağlamalıdır[1].  Nihai hedef, akıllı ve otomatik pentest gerçekleştirmede insan PT uzmanlarını taklit edebilen bir sistemdir. Sistem, uzman tarafından kabul edilebilecek veya reddedilebilecek bulgular ve öneriler sunarak karmaşık durumlarla başa çıkmak için uzmanla doğrudan etkileşime girebilmelidir[2].  Pratik açıdan, makine öğreniminin otomatik bir PT sistemine dahil edilmesi, yorgunluk, ihmal ve baskı nedeniyle tekrarlanan insan hatalarını azaltacaktır. Ayrıca, farklı testleri verimli bir şekilde gerçekleştirerek zaman ve kaynak kullanımını azaltacaktır. Otomasyon normal çalışma saatlerinden sonra çalışarak ağ tıkanıklığını ve kesinti süresini azaltabilir[3]. 5 Amaç [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing. [2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing. [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. [4] Carlos Sarraute, Olivier Buffet and Jörg Hoffmann, 2013. Penetration Testing == POMDP Solving?
  • 6. 6 Pekiştirmeli Öğrenme(RL)  RL, agentın çevre ile etkileşime girerek önceki deneyimlerden öğrenmesini sağlar. RL ödülleri genellikle zamanla ertelenir ve agent uzun vadeli bir hedefi en üst düzeye çıkarmaya çalışır[2].  Pekiştirmeli öğrenme (Sutton ve Barto, 1998) bir çeşit deneme yanılma algoritmasıdır. Agenta ne yapması gerektiği söylenmiyor, ancak sayısal ödülle yönlendirilen eylemde bulunuyor[1].  Markov karar süreci denilen bir model kullanmaktadır. (S, A, R, T, γ) olarak gösterilebilir[1][2][3].  Bir RL sisteminin çevre ve agent dışında dört ana bileşeni vardır. Bunlar: politika π, ödül fonksiyonu R(s', a, s), değer fonksiyonu V(s) ve çevre modeli T’dir [1][2][3].  RL'yi diğer AI planlama tekniklerine göre kullanmanın en önemli avantajı, exploitlerin ve ağın transition modeli hakkında önceden bilgi sahibi olmayı gerektirmemesi ve dolayısıyla uygulamada çok genel olması, aynı algoritmanın mevcut değişen sayıda exploitler ile farklı ağ topolojilerine ve konfigürasyonlarına uygulanabilmesidir. [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing. [2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing. [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.
  • 7. 7 RL: İlk Yaklaşım→NIG-AP Algoritması (Network İnformation Gain Based Automated Attack Planning)  Pekiştirmeli öğrenmenin amacı, kümülatif ödülü(1) en üst seviyeye çıkarmak için π(a|s) politikasını optimize etmektir.  Q-learning’te, bu işlem sırasındaki kümülatif ödül(2) yandaki gibi gösterilebilir:  Politika uzayı içerisinde, Q*(s, a) ≥ Qπ(s, a) 'yı karşıladığı bazı politikalar vardır, burada * en uygun politikadır.  Banach sabit nokta teoremine göre (Mnih ve diğerleri, 2013), Q(s, a) en uygun değerde yineleyecek, böylece, politika yinelemesinden sonra aşağıda gösterilen formüle göre(4) en uygun politikayı çıkartabiliriz:  Pekiştirmeli öğrenmeye derin sinir ağı ekledikten sonra (Şekil b), derin pekiştirmeli öğrenme (DRL) olur (Mnih ve arkadaşları, 2015). Adam algoritması (Kingma ve Ba, 2014) genellikle derin sinir ağı eğitmek için benimsenmiştir. Güncelleme formulü(5) aşağıdaki gibi gösterilir: [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
  • 8. 8 RL: İlk Yaklaşım→NIG-AP Algoritması MDP(Markov Karar Süreci)  Ayrıntılı host bilgisi [Pos, Papp , Pport , Ppro] vektörü olarak resmileştirilebilir.  Genel bir vektör göz önüne alındığında, kurban bilgisayarın ifşa durumunu temsil etmek için bilgi entropisi (Liang ve shi, 2004) benimsenmiştir. Aşağıdaki gibi hesaplanır(6):  Ağ bilgi kazanımını (Lee ve Lee, 2006): ΔH = H(Pbefore) − H(Pafter) (7)  Ağ bilgi kazanımını hesaplamak için üç tür durum olacaktır:  Bir agentın bir eylemi için ödül r, r = rgain + rcost olup; rgain ve rcost olarak iki parçadan oluşur. rgain bilgi kazancı olup, rcost eylem maliyetidir. Rcost formulü aşağıdaki gibi gösterilir: [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
  • 9. 9 RL: İlk Yaklaşım→NIG-AP Algoritması MDP(Markov Karar Süreci)  Penetrasyon testi, tipik bir Markov karar süreci (MDP) olarak görülebilir(11):  {S0, A0, R1, S1, A1, R2, . . . ,Si, Ai, Ri+1, . . . , Sn, An, Rn+1} (11)  Penetrasyon testi, denklem (1) olarak formulleştirilir, sınırlı bir süre içinde hedef hostlara nüfuz etmeyi amaçlar.  MDP'nin amacı, kümülatif kazanç Gt maksimize eden en iyi politika π’yi bulmaktır. (12) ile gösterilir:  max E[Gt | π] (12)  Bellman denklemine göre, spesifik bir bilgisayar için Q(s, a)’nın güncelleme formulü (13) deki gibi gösterilir:  Derin sinir ağının parametrelerini Q(s, a) ' ya uyacak şekilde güncellemek için Adam algoritması benimsenmiştir. Güncelleme formulü (14) deki gibi gösterilir:  m ̂ t ve v ̂ t (15) ve (16) daki gibi hesaplanır:  Spesifik bir hostu bir ağ senaryosuna genişletmek için, tespit edilen bilgisayarları kaydetmek için gözlemlenen bir bilgisayar seti Φ oluşturulur. [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing. (13) (14) (15) (16)
  • 10. 10 RL: İlk Yaklaşım→NIG-AP Algoritması Deneyler  İlk olarak NIG-AP ile POMDP karşılaştırtılmıştır. Ayrıca NIG-AP, Q-learning optimizasyon algoritması NIG-AP(Q), relative value iteration optimizasyon algoritması NIG-AP(RVI), value iteration algoritması NIG-AP(VI), policy iteration algoritması NIG-AP(PI), modified policy iteration algoritması NIG-AP(PIM) ve value iteration Gerchberg- Saxton algoritması NIG-AP(VIGS); gibi optimizasyon algoritmalarıyla beraber kullanılmıştır. [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
  • 11. 11 RL: İlk Yaklaşım→NIG-AP Algoritması Deneyler  NIG-AP(VI), NIG-AP(RVI) ve NIG-AP(PIM) algortimalarI, NIG-AP(Q) ve NIG-AP(VIGS) algortimalarından daha iyi performans gösterir.  14 durum için eğitim zamanı 0.5 saniye ile limitliyken; NIG-AP(VI), NIG-AP(RVI), NIG-AP(PI) ve NIG-AP(PIM) için 0.02 saniye ile limitlidir.  Host sayısı 3’e ulaştığında APPL toolkiti problemi çözemez. Bu da POMDP’un verimliliğinin çok yavaş olduğunu, büyük network senaryolarına genelleştirilemeyeceğini fakat NIG-AP’nin büyük network senaryolarında etkili bir şekilde saldırı yollarını bulabileceğini gösterir. [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
  • 12. 12 RL: İlk Yaklaşım→NIG-AP Algoritması Deneyler  Mevcut exploitlerin sayısının 10 ile sınırlandırıldığı, büyük bir network senaryosunda verimlilik ölçümü aşağıdaki tablodaki gibidir.  NIG-AP, POMDP ve FF’e göre daha iyi performans göstermektedir. [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
  • 13. 13 RL: İlk Yaklaşım→NIG-AP Algoritması Deneyler  Aşağıdaki grafik farklı algortimaların verimlilik oranlarını göstermektedir. [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.
  • 14. 14 RL: İlk Yaklaşım→NIG-AP Algoritması Deneyler [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing.  NIG-AP daha az trafik üretirken, FF devasa network trafiği üretmiştir ve çok daha fazla dalgalanmıştır.  FF’in saniyedeki paket hızı 260 iken, NIG-AP’nin 190 ve FF’in ürettiği hata paketlerinin sayısı çok yüksektir.  Buda gösteriyor ki en verimli seçimin NIG-AP algortiması olduğudur.
  • 15. 15 RL: 2.nci Yaklaşım→ (MDP) Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning.  Bu çalışma için kullanılan eylem seçim stratejileri , ε-greedy ve üst düzey güven sınırı (UCB)(upper confidence bound) eylem seçimidir.  ε-greedy eylem seçim stratejisi, ε olasılığı ile rastgele bir eylem seçerek ve zamanın geri kalanında mevcut en iyi eylemi seçerek bunu yapar(1).  UCB eylem seçimi, eylem seçimi yaparken ekstra bir keşif terimi kullanır(2). (1) (2)  Değer güncelleme stratejisi için Q-learning'i kullanıyoruz. Q-learning, eylem durumu değerlerini öğrenmek için politika dışı bir zamansal fark algoritmasıdır ve denklemdeki güncelleme fonksiyonu ile tanımlanır(3): (3)
  • 16. 16 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. Değer fonksiyonunun (Q (s, a)) aldığı iki ana seçenek vardır: i) tabular ve ii) fonksiyon yaklaşımı. Üç farklı Q-learning algoritmasından yararlanıyoruz: *tabular Q-learning (tabular ε-greedy) *tabular Q-learning (tabular UCB) *deep Q-learning (DQL) RL: 2.nci Yaklaşım→ (MDP) Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL)
  • 17. 17 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. RL: 2.nci Yaklaşım→ (MDP) Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler  Single-site ve standart network senaryoları için yakınsama, her üç algoritma için benzer sayıda bölümden sonra (single- site için ~1000 bölüm ve standart ağ için ~150 bölüm) sonra meydana gelir.  Multi-site network senaryosu için, iki tabular algoritma için ~100 bölüm, DQL algoritması > 1000 bölüm ile karşılaştırıldığında önemli ölçüde daha hızlı bir şekilde birleşir.
  • 18. 18 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. RL: 2.nci Yaklaşım→ (MDP) Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler  DQL standart ağ için ~50 saniye ve single-site networkü için ~75 saniye sürerken; tabular yöntemler single-site ve standart network senaryolarında <10 saniyede yakınsadı.  Multi-site network senaryosu için yakınsama süresi <25 saniye ile tüm algoritmalar için daha benzerdir, ancak DQL ~5 saniye ile en yavaş kalan oluyor.
  • 19. 19 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. RL: 2.nci Yaklaşım→ (MDP) Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler  Tabular yöntemler DQL algoritmasından önemli ölçüde daha hızlıdır; Tabular ε-greedy, en kötü durumda DQL'den 50 kat daha fazla, Tabular UCB ise en kötü durumda DQL'den 37 kat fazla performans gösterdi.  Bu fark, DQL Yapay Sinir Ağı hesaplamaları için gerekli ek hesaplama nedeniyle beklenmektedir. Tabular yöntemlerin artan hızı, bölüm başına daha yavaş öğrenme oranını oluşturur ve hala test senaryolarında en iyi performansa sahip olmalarını sağlar.
  • 20. 20 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. RL: 2.nci Yaklaşım→ (MDP) Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler  Üç RL agent, multi-site ve standart network senaryolarında rastgele olmaktan çok daha iyi performans gösterdi.  Single-site network senaryosu için, Tabular UCB ve DQL algoritmaları eşit derecede iyi veya daha iyi performans gösterirken, Tabular ε-greedy agent aslında random agent’tan daha kötü performans gösterdi.  DQL algoritmasının performansı, farklı senaryolar arasında en tutarlı olanıdır.
  • 21. 21 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. RL: 2.nci Yaklaşım→ (MDP) Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler  Ağdaki makinelerin sayıs 3'ten 43’e kadar 5’er arttırarak test edildi ve bu sırada erişilebilir servis sayısı 5'te tutuldu.  Performans, 18 makine içeren ağlara kadar her üç algoritma için random politikadan daha iyiydi.  18 makineden daha fazla test edilen ağlar için, DQL ve Tabular UCB algoritmalarının performansı hızla azaldı, ancak her iki algoritma da 23 ve 28 makineli ağlar için senaryoların %50'sinden fazlasını randomdan daha iyi bir ortalama ödül ile çözebildi.  Tabular ε-greedy için performans, 33 makineye kadar olan ağ için sürekli olarak yüksekti ve bundan sonra performans 43 makineli ağlar için random olandan daha kötüye düştü.
  • 22. 22 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. RL: 2.nci Yaklaşım→ (MDP) Tabular ε-greedy, Tabular UCB ve Deep Q-learning (DQL) - Testler  18 makineden oluşan sabit boyutlu bir networkte exploitlerin sayısının 5’er arttırımla 1'den 51'e kadar artırılmasının etkisi ölçülmüştür. Test edilen tüm exploit sayıları için en uygun performansı sürdüren Tabular ε-greedy oldu.  Tabular UCB, optimum performanstan daha düşüktü, ancak istismarların sayısı arttıkça performans nispeten istikrarlı kaldı.  Test edilen tüm değerler için en çok etkilenen random karşılaştırılabilir performansa sahip olan DQL'dir.  Tabular RL algoritmalarının performansının, artan sayıda exploitten nispeten etkilenmediğini,  Tabular ε-greedy algoritmasının optimum performansa yakın olduğunu ve test edilen her senaryo konfigürasyonunun neredeyse %100'ünü çözdüğünü gördük. Öte yandan, DQL'in performansı random bir politikadan çok daha iyi değildir.
  • 23. 23 [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. SONUÇLAR #1  Senaryolar, belirli sayıda makine içeren ağlarla sınırlıdır ve bu nedenle gerçek hayatta yüzlerce makinenin olduğu büyük ticari ağlara kıyasla nispeten küçüktür. Özellikle, algoritmaları ağdaki makine sayısıyla ve ayrıca agentların kullanabileceği exploit sayısı ile ölçeklendirme problemi vardır.  Agent’lara sadece iki dakikalık eğitim süresi verilmiştir. Bu nedenle, RL agent’larının daha fazla eğitim süresi ile daha büyük boyuttaki problemlere uygulanmaları beklenebilir.  Başka bir sınırlama, yalnızca üç farklı ağ topolojisinin test edilmesidir; gerçek dünyada karşılaşılan olası topolojiler sonsuzdur.  Bu ölçeklendirme deneylerine dayanarak, bu çalışmada kullanılan yaklaşımın büyük ağlara ve çok sayıda exploite iyi ölçeklenemeyeceği anlaşılmaktadır.  Tabular RL algoritmaları, çok makineye sahip ağları ölçekleyememekle birlikte, eylem sayısı ile iyi ölçeklenebilir.  DQL algoritmasına daha fazla eğitim süresi verilerek ve daha gelişmiş algoritmalar kullanarak, daha büyük ağlara ölçeklendirmek mümkün olabilir, ancak bu yaklaşım artan sayıda eylemi iyi ölçekleyememektedir.
  • 24. 24 SONUÇLAR #2  Güvenlik açıkları hakkında zamansal bilgileri planlama algoritmasına dahil etme, bir güvenlik açığının zamanı ya da güncelliğini belirleyecektir. Örneğin, 0-day açıklığı, penetrasyon testlerinde önceden keşfedilen güvenlik açıklarından çok daha kullanışlıdır. Zamana göre ödül fonksiyonunu ayarlayarak, eğitim algoritması son eğitim örneklerine yatkın yapılabilir.  Başka bir öneri, açıklıkları zaman damgasına göre sıralamak olabilir, böylece yeni istismarlar her zaman ilk kabul edilir[1].  Diğer araştırma, saldırı şeması üretmek için transfer öğrenmeyi kullanmak olabilir. Pentest bilgisi çeşitli senaryolarda benzer olduğundan, transfer öğrenmesi bize daha az senaryo örneği ile bir agentı eğitmenin yolunu gösterir[1].  Tez konusu, makine öğrenmesi ve güncel diğer yaklaşım ve teknikleri kullanarak 0-day tespiti üzerine yoğunlaşılacaktır. [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing. [2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing. [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning. devhunteryz.wordpress.com/2018/07/28/transfer-ogrenimi-transfer-learning/ , medium.com/@ayyucekizrak/derı̇ne-daha-derı̇ne-evrişimli-sinir-ağları-2813a2c8b2a9
  • 25. 25 Kaynaklar [1] Tian-yang ZHOU, Yi-chao ZANG, Jun-hu ZHU, Qing-xian WANG, 2019. NIG-AP: a new method for automated penetration testing. [2] Mohamed C. GHANEM and Thomas M. CHEN, 2018. Reinforcement Learning for Intelligent Penetration Testing. [3] Jonathon Schwartz, 2018. Autonomous Penetration Testing using Reinforcement Learning [4] Carlos Sarraute, Olivier Buffet and Jörg Hoffmann, 2013. Penetration Testing == POMDP Solving? [5] Carlos Sarraute, Olivier Buffet and Jörg Hoffmann, 2013. POMDPs Make Better Hackers: Accounting for Uncertainty in Penetration Testing. [6] Jörg Hoffmann, 2015. Simulated Penetration Testing: From “Dijkstra” to “Turing Test++”. [7] Josip Bozic and Franz Wotawa, 2017. Planning the Attack! Or How to use AI in Security Testing? [8] Ge Chu and Alexei Lisitsa, 2019. Agent-based (BDI) modeling for automation of penetration testing. [9] Norah Ahmed Almubairik and Gary Wills, 2016. Automated Penetration Testing Based on a Threat Model. [10] Franz Wotawa, 2016. On the Automation of Security Testing. Kaynaklar TEŞEKKÜRLER...