Bir Hacker hangi süreci takip eder?
Bir bilgisayar korsanının her istediğini yaptığını düşünebilirsiniz, ancak profesyonel bilgisayar korsanlarının/sızma test cihazının genellikle hedeflerini anlamak ve kullanmak için yerleşik bir süreci takip ettiği doğrudur. Bu, endüstri genelinde değerlendirmelerin nasıl yapıldığı ve değerlendirmeleri yönlendiren metodoloji arasında tutarlılık olmasını sağlar.
Pentesterların izlediği süreç aşağıdaki adımlarda özetlenmiştir:
Etik Hacker Metodolojisinin ilk aşaması Keşiftir.
Keşif, tamamen hedefiniz hakkında bilgi toplamakla ilgilidir.
Genel olarak, keşif genellikle hedef(ler) veya sistem(ler) ile etkileşimi içermez.
Keşif oldukça basit bir kavramdır, insanlar hakkında bilgi toplamak için internette hangi araçları kullanabileceğimizi bir düşünün.
Hedef bir organizasyon, teknoloji veya bir grup birey hakkında bilgi toplamak için akla hangi web siteleri ve teknoloji geliyor?
Bu durumda SpaceX şirketini kullanalım. Burada durun ve SpaceX hakkında biraz araştırma yapmak için 2 dakikanızı ayırın ve araştırma yapmak için kullandığınız web sitelerini not edin.
SpaceX ile ilgili araştırmalarınıza başladığınız yer neresi?
Büyük olasılıkla, bir Hacker'ın sahip olduğu en kullanışlı araçlardan biriyle başladınız:
Ayrıca SpaceX'in tarihini anlamak için Wikipedia gibi web sitelerini kullanmış, en son haber bültenlerini veya "cızırtılarını" görmek için şirketin Twitter/YouTube'unu , hatta açık şirket pozisyonlarını ve/veya şirketin organizasyonel yapısını araştırmak için LinkedIn profilini kullanmış olabilirsiniz. yapı.
İşin güzel yanı, bu çok basit araçların tümü geçerli keşif araçlarıdır.
Bilgisayar korsanlarının araştırma yapmak için özel araçlar kullandığını düşünebilirsiniz (ve bazı durumlarda bu doğrudur), ancak genel olarak araştırma yapmak için bunun gibi basit araçlar kullanırlar.
Keşif, genellikle hedefiniz hakkında araştırma yapmak için Google gibi herkese açık araçların kullanılmasını içerir .
Basit gibi görünse de keşif, bir penetrasyon testinin en önemli aşamasıdır.
Kullanabileceğimiz bazı özel araçlar var ama bu giriş için aşağıdaki araçları bilmekte fayda var.
Hacker Metodolojisinin ikinci aşaması Tarama ve Numaralandırmadır.
Burası, bir bilgisayar korsanının hedefle ilgili güvenlik açıklarını bulmaya çalışmak için hedefle etkileşime girmeye (tarama ve numaralandırma) başlayacağı yerdir.
Cephaneliğe daha özel araçların girmeye başladığı yer burasıdır. nmap, dirb, metasploit, exploit-db, Burp Suite ve diğerleri gibi araçlar, bir hedefteki güvenlik açıklarını bulmaya çalışmamıza yardımcı olmak için çok kullanışlıdır.
Tarama ve numaralandırma aşamasında, saldırgan, genel saldırı yüzeyini belirlemek için hedefle etkileşime girer .
Saldırı yüzeyi, Sömürü aşamasında hedefin neye karşı savunmasız olabileceğini belirler. Bu güvenlik açıkları bir dizi şey olabilir: bir web sayfasının düzgün bir şekilde kilitlenmemiş olması, bir web sitesinin bilgi sızdırması, SQL Enjeksiyon, Siteler Arası Komut Dosyası Çalıştırma veya herhangi bir sayıda başka güvenlik açığı.
Basitleştirmek için - numaralandırma ve tarama aşaması, hedefin NEDEN savunmasız olabileceğini belirlemeye çalışacağımız yerdir.
Örneğin, önemli bir araç olan Nmap .
Şimdi bir pentestin diğer üç aşamasından bahsettiğimize göre, genellikle "en havalı" olarak gösterilen aşama hakkında konuşmanın zamanı geldi.
Haberlerde, genellikle "bu hack" veya "bu güvenlik açığı" hakkında konuşurlar, ancak gerçek şu ki, genellikle bir pentestin "exploitation" aşaması göründüğü kadar çekici değildir. Sömürü aşaması ancak ondan önceki yeniden toplama ve numaralandırma aşamaları kadar iyi olabilir, tüm güvenlik açıklarını sıralamadıysanız bir fırsatı kaçırabilirsiniz veya hedefe yeterince dikkatli bakmadıysanız - seçtiğiniz exploit tamamen başarısız olabilir. !
exploit için kullanılan yaygın bir araç, hayatı basit tutmaya çalışmak için birçok yerleşik komut dosyası içeren Metasploit olarak adlandırılır .
Web uygulamalarından yararlanmak için Burp Suite ve SQLMap gibi araçları da kullanabilirsiniz. msfvenom (özel yükler oluşturmak için), BeEF (tarayıcı tabanlı sömürü) ve diğerleri gibi araçlar vardır .
Şimdi "exploit"in ne anlama geldiğini iyi anladığınızı düşünüyorum - sadece profesyonel bir penetrasyon test cihazının yeterli keşif ve sayım yapmadan exploitation aşamasına asla atlamadığını unutmayın .
exploitation aşaması aracılığıyla kurban bir makineye erişim kazandıktan sonraki adım, ayrıcalıkları daha yüksek bir kullanıcı hesabına yükseltmektir. Bir pentester olarak ulaşmaya çalıştığımız hesaplar şunlardır:
Ayrıcalık yükseltme birçok şekilde olabilir, bazı örnekler:
Çoğu profesyonel/etik sızma testi uzmanının hiçbir zaman "izlerini kapatma" ihtiyacı olmaz. Ancak, bu hala metodolojide bir aşamadır.
Testin ne zaman gerçekleştiği, nasıl gerçekleştiği ve herhangi bir sızma testindeki hedeflerin kapsamı konusunda her zaman sistem sahibinden açık izin almalısınız.
Bir sızma testi için katılım kuralları, test yapılmadan önce kabul edilmesi gerektiğinden, sızma test cihazı, ayrıcalık yükseltme elde ettiklerinde HEMEN durmalı ve bulguyu müşteriye bildirmelidir.
Bu nedenle, bir profesyonel asla izini sürmez çünkü değerlendirme önceden planlanmış ve kabul edilmiştir. İzleri kapatmak için birden fazla araç olmasına rağmen, bu odada hiçbirinden bahsetmeyeceğim. Gerçekten merak ediyorsan kendin araştırabilirsin.
Bununla birlikte, izlerinizi örtmeseniz bile, bu, istismarınız için sorumluluğunuzu ortadan kaldırmaz. Genellikle BT Yöneticisine veya sistem sahibine, kullandığınız açıklardan yararlanma kodunu temizlemede yardımcı olmanız ve ayrıca gelecekte saldırıyı NASIL önleyebileceğinizi önermeniz gerekir.
Etik bilgisayar korsanlarının izlerini gizleme ihtiyacı nadiren olsa da, güvenlik açıklarını düzeltmeye ve sistem sahibine değişiklik önermeye yardımcı olmak için penetrasyon testinin bir parçası olarak gerçekleştirdiğiniz tüm görevleri yine de dikkatli bir şekilde izlemeli ve not almalısınız.
Pentest metodolojisinin son aşaması raporlama aşamasıdır.
Bu, bulduğunuz her şeyi özetleyeceğiniz en önemli aşamalardan biridir. Raporlama aşaması genellikle aşağıdakileri içerir:
Bir bilgisayar korsanının her istediğini yaptığını düşünebilirsiniz, ancak profesyonel bilgisayar korsanlarının/sızma test cihazının genellikle hedeflerini anlamak ve kullanmak için yerleşik bir süreci takip ettiği doğrudur. Bu, endüstri genelinde değerlendirmelerin nasıl yapıldığı ve değerlendirmeleri yönlendiren metodoloji arasında tutarlılık olmasını sağlar.
Pentesterların izlediği süreç aşağıdaki adımlarda özetlenmiştir:
- Tanıma
- Numaralandırma/Tarama
- Erişim Kazanma
- Ayrıcalık Yükseltme
- Kaplama Parçaları
- Raporlama
Etik Hacker Metodolojisinin ilk aşaması Keşiftir.
Keşif, tamamen hedefiniz hakkında bilgi toplamakla ilgilidir.
Genel olarak, keşif genellikle hedef(ler) veya sistem(ler) ile etkileşimi içermez.
Keşif oldukça basit bir kavramdır, insanlar hakkında bilgi toplamak için internette hangi araçları kullanabileceğimizi bir düşünün.
Hedef bir organizasyon, teknoloji veya bir grup birey hakkında bilgi toplamak için akla hangi web siteleri ve teknoloji geliyor?
Bu durumda SpaceX şirketini kullanalım. Burada durun ve SpaceX hakkında biraz araştırma yapmak için 2 dakikanızı ayırın ve araştırma yapmak için kullandığınız web sitelerini not edin.
SpaceX ile ilgili araştırmalarınıza başladığınız yer neresi?
Büyük olasılıkla, bir Hacker'ın sahip olduğu en kullanışlı araçlardan biriyle başladınız:
Ayrıca SpaceX'in tarihini anlamak için Wikipedia gibi web sitelerini kullanmış, en son haber bültenlerini veya "cızırtılarını" görmek için şirketin Twitter/YouTube'unu , hatta açık şirket pozisyonlarını ve/veya şirketin organizasyonel yapısını araştırmak için LinkedIn profilini kullanmış olabilirsiniz. yapı.
İşin güzel yanı, bu çok basit araçların tümü geçerli keşif araçlarıdır.
Bilgisayar korsanlarının araştırma yapmak için özel araçlar kullandığını düşünebilirsiniz (ve bazı durumlarda bu doğrudur), ancak genel olarak araştırma yapmak için bunun gibi basit araçlar kullanırlar.
Keşif, genellikle hedefiniz hakkında araştırma yapmak için Google gibi herkese açık araçların kullanılmasını içerir .
Basit gibi görünse de keşif, bir penetrasyon testinin en önemli aşamasıdır.
Kullanabileceğimiz bazı özel araçlar var ama bu giriş için aşağıdaki araçları bilmekte fayda var.
- Google (özellikle Google Dorking)
- Vikipedi
- PeopleFinder.com
- who.is
- sublist3r
- hunter.io
- builtwith.com
- wapalyzer
Hacker Metodolojisinin ikinci aşaması Tarama ve Numaralandırmadır.
Burası, bir bilgisayar korsanının hedefle ilgili güvenlik açıklarını bulmaya çalışmak için hedefle etkileşime girmeye (tarama ve numaralandırma) başlayacağı yerdir.
Cephaneliğe daha özel araçların girmeye başladığı yer burasıdır. nmap, dirb, metasploit, exploit-db, Burp Suite ve diğerleri gibi araçlar, bir hedefteki güvenlik açıklarını bulmaya çalışmamıza yardımcı olmak için çok kullanışlıdır.
Tarama ve numaralandırma aşamasında, saldırgan, genel saldırı yüzeyini belirlemek için hedefle etkileşime girer .
Saldırı yüzeyi, Sömürü aşamasında hedefin neye karşı savunmasız olabileceğini belirler. Bu güvenlik açıkları bir dizi şey olabilir: bir web sayfasının düzgün bir şekilde kilitlenmemiş olması, bir web sitesinin bilgi sızdırması, SQL Enjeksiyon, Siteler Arası Komut Dosyası Çalıştırma veya herhangi bir sayıda başka güvenlik açığı.
Basitleştirmek için - numaralandırma ve tarama aşaması, hedefin NEDEN savunmasız olabileceğini belirlemeye çalışacağımız yerdir.
Örneğin, önemli bir araç olan Nmap .
- Nmap, bir hedefi tarayabilen ve bize çok çeşitli şeyler söyleyebilen bir araçtır:
- Hangi portlar açık (portlar hakkında hiçbir şey bilmiyorsanız şunu izlemenizi şiddetle tavsiye ederim: ve https://www.youtube.com/watch?v= qsZ8Qcm6_8k )
- Hedefin işletim sistemi (Windows, Linux , MacOS vb. İşletim Sisteminin hangi sürümü dahil)
- Hangi hizmetler çalışıyor ve hizmetin hangi sürümü (örneğin, sadece FTP (Dosya Aktarım Protokolü) demek yeterli değil - nmap, belirli bir güvenlik açığı bulmamızı sağlayabilecek FTP'nin tam SÜRÜMÜNÜ belirlemeye ve parmak izini almaya çalışabilir. hedef)
- Hangi portlar açık (portlar hakkında hiçbir şey bilmiyorsanız şunu izlemenizi şiddetle tavsiye ederim:
- dirb (bir web sitesinde yaygın olarak adlandırılan dizinleri bulmak için kullanılır - https://www.tesla.com altında ayrıca https://www.tesla.com/about , https://www.tesla.com/ olduğu gibi model3 , https://www.tesla.com/modely ve en önemlisi https://www.tesla.com/models )
- dirbuster (dirb'e benzer ancak daha havalı bir isimle ve bir kullanıcı arayüzüyle)
- enum4linux (özellikle Linux için güvenlik açıklarını bulmak için kullanılan araç )
- metasploit (bu araç çoğunlukla exploit için kullanılır, ancak bazı yerleşik numaralandırma araçlarına da sahiptir)
- Burp Suite (bu araç, bir web sitesini alt dizinler için taramak ve ağ trafiğini engellemek için kullanılabilir)
Şimdi bir pentestin diğer üç aşamasından bahsettiğimize göre, genellikle "en havalı" olarak gösterilen aşama hakkında konuşmanın zamanı geldi.
Haberlerde, genellikle "bu hack" veya "bu güvenlik açığı" hakkında konuşurlar, ancak gerçek şu ki, genellikle bir pentestin "exploitation" aşaması göründüğü kadar çekici değildir. Sömürü aşaması ancak ondan önceki yeniden toplama ve numaralandırma aşamaları kadar iyi olabilir, tüm güvenlik açıklarını sıralamadıysanız bir fırsatı kaçırabilirsiniz veya hedefe yeterince dikkatli bakmadıysanız - seçtiğiniz exploit tamamen başarısız olabilir. !
exploit için kullanılan yaygın bir araç, hayatı basit tutmaya çalışmak için birçok yerleşik komut dosyası içeren Metasploit olarak adlandırılır .
Web uygulamalarından yararlanmak için Burp Suite ve SQLMap gibi araçları da kullanabilirsiniz. msfvenom (özel yükler oluşturmak için), BeEF (tarayıcı tabanlı sömürü) ve diğerleri gibi araçlar vardır .
Şimdi "exploit"in ne anlama geldiğini iyi anladığınızı düşünüyorum - sadece profesyonel bir penetrasyon test cihazının yeterli keşif ve sayım yapmadan exploitation aşamasına asla atlamadığını unutmayın .
exploitation aşaması aracılığıyla kurban bir makineye erişim kazandıktan sonraki adım, ayrıcalıkları daha yüksek bir kullanıcı hesabına yükseltmektir. Bir pentester olarak ulaşmaya çalıştığımız hesaplar şunlardır:
- Windows dünyasında, hedef hesap genellikle: Yönetici veya Sistem'dir.
- Linux dünyasında, Hedef hesap genellikle: root
Ayrıcalık yükseltme birçok şekilde olabilir, bazı örnekler:
- Hedefte bulunan şifre karmalarını kırma
- Hizmet ARACILIĞIYLA ayrıcalığı yükseltmenize izin verecek güvenlik açığı bulunan bir hizmet veya hizmet sürümü bulma
- Daha önce keşfedilen kimlik bilgilerinin parolayla püskürtülmesi (parola yeniden kullanımı)
- Varsayılan kimlik bilgilerini kullanma
- Başka bir makineye dönmeye izin verecek bir cihazda saklanan gizli anahtarları veya SSH anahtarlarını bulma
- Ağ ayarlarını bulmak için 'ifconfig' veya
kullanıcının çalıştırabilecekleri herhangi bir komuta erişimi olup olmadığını görmek için 'find / -perm -4000 -type f 2>/dev/null' komutu gibi sistem ayarlarını numaralandırmak için komut dosyaları veya komutlar çalıştırma kök olarak
Çoğu profesyonel/etik sızma testi uzmanının hiçbir zaman "izlerini kapatma" ihtiyacı olmaz. Ancak, bu hala metodolojide bir aşamadır.
Testin ne zaman gerçekleştiği, nasıl gerçekleştiği ve herhangi bir sızma testindeki hedeflerin kapsamı konusunda her zaman sistem sahibinden açık izin almalısınız.
Bir sızma testi için katılım kuralları, test yapılmadan önce kabul edilmesi gerektiğinden, sızma test cihazı, ayrıcalık yükseltme elde ettiklerinde HEMEN durmalı ve bulguyu müşteriye bildirmelidir.
Bu nedenle, bir profesyonel asla izini sürmez çünkü değerlendirme önceden planlanmış ve kabul edilmiştir. İzleri kapatmak için birden fazla araç olmasına rağmen, bu odada hiçbirinden bahsetmeyeceğim. Gerçekten merak ediyorsan kendin araştırabilirsin.
Bununla birlikte, izlerinizi örtmeseniz bile, bu, istismarınız için sorumluluğunuzu ortadan kaldırmaz. Genellikle BT Yöneticisine veya sistem sahibine, kullandığınız açıklardan yararlanma kodunu temizlemede yardımcı olmanız ve ayrıca gelecekte saldırıyı NASIL önleyebileceğinizi önermeniz gerekir.
Etik bilgisayar korsanlarının izlerini gizleme ihtiyacı nadiren olsa da, güvenlik açıklarını düzeltmeye ve sistem sahibine değişiklik önermeye yardımcı olmak için penetrasyon testinin bir parçası olarak gerçekleştirdiğiniz tüm görevleri yine de dikkatli bir şekilde izlemeli ve not almalısınız.
Pentest metodolojisinin son aşaması raporlama aşamasıdır.
Bu, bulduğunuz her şeyi özetleyeceğiniz en önemli aşamalardan biridir. Raporlama aşaması genellikle aşağıdakileri içerir:
- Bulgu(lar) veya Güvenlik Açıkları
- Bulgunun KRİTİKLİĞİ
- Bulgunun nasıl keşfedildiğine dair bir açıklama veya kısa bir genel bakış
- Bulguyu çözmek için düzeltme önerileri
- Güvenlik açığı tarama sonuçları (basit bir güvenlik açıkları listesi)
- Bulgular özeti (yukarıda özetlenen bulguların listesi)
- Tam resmi rapor.
- Bir güvenlik açığı raporu genellikle şöyle görünür:
- Bir bulguların özeti genellikle şöyledir:
- Bulgu: Kediler Sayfasının Kimlik Parametresinde SQL Enjeksiyonu
- Kritiklik: Kritik
- Açıklama: Web sitesinin ID parametresine 1' VEYA '1'='1 yükü yerleştirmek , veritabanının kedi Tablosundaki tüm kedi adlarının görüntülenmesine izin verdi. Ayrıca, bir UNION SELECT SQL ifadesi, saldırganın Hesaplar tablosunda saklanan tüm kullanıcı adlarını ve şifreleri görüntülemesine izin verdi.
- Çözüm Önerisi: SQL enjeksiyon saldırılarını önlemek için Hazırlanmış bir SQL ifadesi kullanın
- Tam bir resmi rapor örneği burada bulunabilir: https://github.com/hmaverickadams/TCM-Security-Sample-Pentest-Report .