blog posts

Python ile penetrasyon testi nasıl yapılır?

Python ile sızma testi (kalem testi), güvenlik açıklarından yararlanmak için bir bilgisayar sistemine yönelik siber saldırıyı simüle ederek BT ​​altyapısının güvenliğini değerlendirmeye yönelik bir girişimdir ve böylece kuruluşun güvenlik açıklarını belirleyerek kuruluşu siber saldırılara karşı savunmasına yardımcı olur.

Sızma test uzmanları ve siber güvenlik analistleri sıklıkla tekrarlanan görevleri yerine getirmek zorunda kalıyor ve bu da değerli zamanlarını ve aktif odaklanmalarını çalıyor. Bu tür durumların örnekleri arasında hedef tarama, kompakt sayım, alt alan tespiti, keşif ve daha fazlası yer alır.

Python gibi programlama dillerinin kullanışlı olduğu yer burasıdır. Python’da uzmanlaşmak, bu tekrarlayan ve sıradan görevleri ortadan kaldırmanıza, bunları kod aracılığıyla otomatikleştirmenize ve daha hızlı hale getirmenize olanak tanır; böylece penetrasyon testinizin ve siber güvenliğinizin gerçekten zorlu yönlerine odaklanabilirsiniz.
Python genel amaçlı, üst düzey, nesne yönelimli, komut dosyası yazan ve açık kaynaklı bir dildir!

Python, 1991 yılında Hollanda’da Guido van Rossum tarafından tasarlanan penetrasyon testi için uygun bir dildir.
Yaratılış felsefesi, yazılı programların yüksek okunabilirliği, kısalığı ve yüksek göreceli verimliliği gibi iki ana hedefi vurgulamaktı.

Bu dilin anahtar kelimeleri ve ana kelimeleri minimal bir şekilde hazırlanmış olup kullanıcının kullanımına sunulan kütüphanelere göre oldukça geniştir.
Bu makale Python becerilerinizi geliştirmenize ve bunları siber güvenlik ve sızma testlerine uygulamanıza yardımcı olacaktır.

Python ile penetrasyon testi kitabı

Burada, Python ile penetrasyon testi öğretmek için 2 faydalı kitaptan bahsediyoruz ve bunlar hakkında kısa açıklamalar yapıyoruz, böylece Python ile penetrasyon testi hakkında faydalı bilgiler edinebilir ve bunları çalışmalarınızı mümkün olan en iyi şekilde yapmak için kullanabilirsiniz.

Python kitabıyla Uygulamalı Sızma Testi

Bu kitabı okuyarak tarayıcı geliştirme, özel güvenlik açığı taraması, web uygulaması taramasının otomatikleştirilmesi ve Python ile otomatikleştirilebilecek günlük siber güvenlik senaryoları aracılığıyla geliştirme gibi konular hakkında bilgi edinebilirsiniz.

Ayrıca kuruluşa özel kullanım örneklerini ve tehdit avcılık otomasyonunu keşfedecek, tersine mühendislik konusunda derinlemesine bir anlayış kazanacak ve arabellek taşması bulanıklaştırma, keyger logger geliştirme ve arabellek taşmaları için yararlanma geliştirme, Python’da web kazıma gibi kavramlara aşina olacaksınız. ve Web yanıtlarını işlemek için kullanın.

Hatta Güvenlik Operasyon Merkezi (SOC) kullanım örneklerini keşfedebilir, veri bilimi, Python, siber güvenlik, bilgisayar korsanlığı eğitimi ve sızma testleri hakkında bilgi edinebilirsiniz .

 

Python Sızma Testinin Temelleri – İkinci Baskı

Bu kitap, ayrıntılı kod örneklerinin yardımıyla, pentesti öğretmek için Python’u kullanmak için ihtiyaç duyduğunuz becerileri sağlar . Bu kitap Python ile ağ oluşturmanın temellerine genel bir bakışla başlıyor ve ardından bilgisayar korsanlığı ve ağ güvenliğini öğretmeye devam ediyor .

Son olarak, bu kitap aracılığıyla çeşitli hackleme ve hackleme tekniklerini gerçekleştirmek için Python kütüphanelerini keşfedeceksiniz . Bir sonraki adımda, Python ile hack programlama ve penetrasyon testi üzerine temel eğitim tartışılıyor ve ardından parametre manipülasyonu, DDoS, XSS ve SQL enjeksiyonu gibi web sitesi hacklemeyle ilgili kavramlara geçiliyor. ödenecek

Bu kitabı okuyarak size Python pentesting tekniklerini, kendinizi nasıl koruyacağınızı ve yönetici konsolu, SQL enjeksiyonu ve XSS saldırılarını tespit etmek için otomatik programlar oluşturmayı öğretecek farklı teknik ve yöntemleri öğreneceksiniz.

Kali Linux ile Sızma Testi Eğitimi

Sızma testi, ürün güvenliğini ve kalitesini artırmanıza yardımcı olabilir. Ne yaptığınızı ve neden yaptığınızı bilmeniz gereken karmaşık ama yaratıcı bir süreçtir.

Makalenin bu bölümünde, bir ürün hakkında bilgi toplamaktan stres testiyle performansını test etmeye kadar çeşitli penetrasyon testi görevlerini gerçekleştirmede yararlı olan bir Linux dağıtımı olan Kali Linux’a odaklanıyoruz.

Kali Linux, popüler Linux işletim sisteminin Debian’dan türetilmiş bir dağıtımıdır. Penetrasyon testi Kali’nin yardımıyla çok daha kolaydır. İleri düzey kullanıcılar, uygulamalarındaki potansiyel güvenlik açıklarını tespit etmek ve düzeltmek amacıyla bilgi güvenliği testleri gerçekleştirmek için Kali’yi kullanabilir.

Kali Linux’un temel özelliklerinden biri bu sistemin ARM mimarisine taşınmış olmasıdır. Sonuç olarak Kali yalnızca masaüstü ve dizüstü bilgisayarlara değil, Android tabanlı akıllı telefonlara da yüklenebiliyor.

Kali Linux, Wireshark, Nmap, Armitage, Aircrack ve Burp Suite gibi popüler çözümler de dahil olmak üzere 600’den fazla güvenlik aracıyla birlikte gelen inanılmaz derecede güçlü bir penetrasyon test aracıdır. Sızma testi sırasında çeşitli sorunlara ve olası saldırı vektörlerine özellikle dikkat etmelisiniz.

Ürün bilgi güvenliği testinin dört önemli aşaması şu şekildedir;

Bilgi toplama
Güvenlik açıklarını analiz etme
Trafiği koklama ve yanıltma
Stres testi

Teknolojik değişim ve mevcut altyapıyla birlikte sızma testi artık süreç odaklı bir faaliyet olmaktan çıktı. Günümüzün penetrasyon testleri çok fazla otomasyon ve yenilik gerektiriyor. Python tüm akranlarına hakim olan tek dildir.

Python’da yazılan çok sayıda araç ve bilgisayar korsanlığı ve penetrasyon testi alanındaki popülerliği nedeniyle bu dil, penetrasyon testçilerinin her zaman ilk tercihi olmuştur.

Python ile Manuel Sızma Testi , size gelişmiş Python programlama yapılarını tanıtır . Bu alanda profesyonel olmak için temel kavramlara aşina olduktan sonra penetrasyon testi ve optimizasyon alanındaki gelişmiş Python uygulamalarını keşfedmelisiniz.

Son olarak Python, veri bilimi ve siber güvenlik ekosisteminin birbirleriyle nasıl ilişkili olduğunu anlayın. Yararlanma geliştirme, tersine mühendislik ve siber güvenliğin kullanılması gibi konular Python ile otomatik olarak incelenebilir.

Python ile yapılan sızma testiyle altyapınızdaki güvenlik açıklarını tespit edip açığa çıkarabilir, özel istismar geliştirmeyi nasıl kullanacağınızı öğrenebilir ve sağlam ve güçlü siber güvenlik araçları oluşturabilirsiniz.

Python ile bilgisayar korsanlığı programlaması ve sızma testi hakkında giriş eğitimi

Başlangıç ​​ve basit bir örnek vermek gerekirse, sadece dört satırlık bir komut dosyası yazarak ağdaki bir sistemin penetrasyon testine atıfta bulunuyoruz;

Yazının bu kısmında sadece 4 satır koddan oluşan script yazmayı öğreneceğiz ve hedef sistemde çalıştırdıktan sonra ağ üzerinde hedef sistemdeki dosyalara kolaylıkla ulaşıp onları görebileceğiz. , onları açın vb. Bu komut dosyası herhangi bir işletim sisteminde çalıştırılabilir;

Aslında, bu komut dosyası herhangi bir işletim sistemindeki bir web sunucusunu HTTP bağlantı noktası aracılığıyla çalıştırır ve işletim sistemi dosyalarını davetsiz misafire bir istemci sunucusu olarak sağlar.

Python’un kendisi, Python’a varsayılan olarak yüklenen çeşitli dahili komut dosyalarına ve kitaplıklara sahiptir.
Örneğin bugün, hedef sistemde birkaç satır kodla web sunucusu oluşturmamızı sağlayan HTTP SERVER adlı bir modül kullanıyoruz.

Kaynak kodu:

http.server’dan SimpleHTTPRequestHandler’ı işleyici olarak
soket sunucusundan içe aktar TCPServer’ı içe aktar
httpd = TCPServer((“”, 8000) , hve_forever()handler)
httpd.ser

Kaynak kodunun açıklaması:

İlk olarak SimpleHTTPRequestHandler sınıfının http.server modülünü import ettik.

Bu sınıfın görevi hacker tarafından gönderilen http isteklerini işlemektir . Bir sonraki satırda TCPServer üzerinde Socketserver kütüphanesini kullandık. Bu öğe aynı zamanda bir web sunucusu oluşturmak ve çalıştırmak için de kullanılır.

Bir sonraki satırda web sunucusu işleyicisini oluşturup httpd değişkenine yerleştirdik. koymak.

Burada bizden 2 giriş alınmış, ilk giriş boş bir string ve 8000 sayısını içeren bir tupledır.

Boş dize yerine betiğin çalıştırıldığı sistemin (burada kurban sistemin) yerel IP adresini yazmalıyız. Bu alanı boş bırakırsak Python otomatik olarak sistemin yerel IP adresini dikkate alacaktır.

8000 sayısı aynı zamanda web sunucusunun çalışmasını istediğimiz bağlantı noktasını da gösterir.

İkinci girdi ise http isteklerini işlemek istediğimiz işleyici sınıfıdır. Bu örnekte, ilk içe aktarılan aynı SimpleHTTPRequestHandler kayıtlıdır.

Son olarak Serve_Forever metodu kullanılarak web sunucusu başlatılacak ve asıl iş buradan başlayacaktır.

Şimdi uygulamaya geçip sonucu test etmemiz gerekiyor.

Testimiz için ağdaki kurban bilgisayar olarak Black Arch Linux sistemini (yani yazdığımız script bu sistemde çalıştırılacak) ve ağdaki hacker sistemi olarak da Windows sistemini düşündük.

Aşağıdaki görsele göre scripti Linux işletim sistemi üzerinde ve Windows ile çalıştırıyoruz;

 

Artık bilgisayar korsanı sisteme girmiştir, tarayıcıyı açar ve adres çubuğuna kurbanın sisteminin IP adresini girer. (web sunucusunun çalıştığı bağlantı noktası numarasıyla birlikte);

 

Yukarıdaki görselde de görebileceğiniz gibi girilen adrese gittikten sonra mağdurun sistemindeki bilgiler dosya ve klasörler halinde bize gösterilecek ve bunların dahili bilgileri de tarafımıza gösterilecektir.

Elbette bu kısımdaki sorun, kurbanın kariyerinin senaryoyu tam olarak hangi yönde çalıştırmak istediğini bilemememizdir, dolayısıyla bireyin sistem bilgilerine ihtiyacımız olabilir, bu durumda bunu otomatik olarak ve otomatik olarak yapabiliriz. web sunucusuna giden istenen yolun içeriği. Bunun için OS adında bir kütüphaneye ihtiyacımız var. Bunu yapmak için aşağıdaki kodu takip etmeniz yeterli;

http.server’dan SimpleHTTPRequestHandler’ı işleyici olarak
soket sunucusundan içe aktar TCPServer’ı
işletim sisteminden içe aktar chdir’i chdir olarak içe aktar
chdir(“/root/Desktop”)
httpd = TCPServer((“” ,8000) , işleyici)
httpd.serve_forever()

Bu sayede yukarıdaki scriptten kolaylıkla çalıştırılabilir çıktı alabilirsiniz.

Bu yazımızda sizlere Python ile penetrasyon testinin nasıl yapılacağını tanıtmaya ve bu işlemin yapılma sürecini anlatmaya çalıştık , umarız sizler için faydalı olmuştur.