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 dinamikbir 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-APAlgoritması
(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-APAlgoritması
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-APAlgoritması
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-APAlgoritması
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-APAlgoritması
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-APAlgoritması
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-APAlgoritması
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-APAlgoritması
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] JonathonSchwartz, 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] JonathonSchwartz, 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] JonathonSchwartz, 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] JonathonSchwartz, 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] JonathonSchwartz, 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] JonathonSchwartz, 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] JonathonSchwartz, 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] JonathonSchwartz, 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üvenlikaçı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...