Siber Saldırılara Karşı Aktif Defans Uygulama

Internet ortamından elde edilen çeşitli araçlarla sistemelere siber saldırı gerçekleştirmek günümüz dünyasında oldukça kolaylaşmıştır.  Güvenlik uzmanları korudukları kurumlara yönelik gerçekleştirilen saldırılara karşı yeni yeni yöntemler deneyerek koruma seviyesini en iyi düzeye taşımaya çalışmaktadır. Son zamanlarda popüler olan koruma yöntemlerinden biri de Aktif Defans’tır. Aktif Defans saldırganların otomotize edilmiş programlar yada scriptler aracılığı ile yaptıkları siber saldırılara karşı, saldırgana ciddi efor ve  zaman kaybı yaratacak bir korunma türüdür.
Bir bilişim sistemine yönelik gerçekleştirilecek saldırılarda genellikle ilk adım port tarama ve ağ keşfi olmaktadır. Aktif defans uygulayarak saldırganın hedef sistemde açık/kapalı olan portları bulması ve bu portlarda çalışan uygulamaları ortaya çıkartması zorlaştırılabilir. Bu yazıda portspoof uygulaması kullanılarak bir sisteme yönelik gerçekleştirilecek port tarama işleminin işe yaramaz hale getirilmesi anlatılmaktadır.

Not: Pratik olarak kurumsal ağlarda kullanılmasını önermiyoruz.

Genel Özellikleri

– root yetkileri gerektirmeksizin çalışır
– iptables kuralları ile kolayca özelleştirilebilir.
– 8.000 üzeri servis için imza desteği bulunuyor.
– Saldırganların kullandıkları araçlar ve yazılımlara karşı ‘Aktif saldırılarına karşı korunma’ için yardımcı olur.

Kurulumu

# wget https://github.com/drk1wi/portspoof/archive/master.zip
# unzip master.zip
# cd portspoof-master/
# ./configure
# make
# make install

Hizmet verdiğiniz portlar dışındaki tüm trafiği iptables ile portspoof uygulamasına yönlendirmeniz yeterli olucaktır. 

#iptables-restore < system_files/iptables-config


Firewall Kuralları

# iptables -LChain INPUT (policy ACCEPT)
target     prot opt source               destination       
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination       
ACCEPT     all  —  anywhere             anywhere          
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

# iptables -L -t natChain PREROUTING (policy ACCEPT)
target     prot opt source               destination       
REDIRECT   tcp  —  anywhere             anywhere             tcp dpts:tcpmux:ftp redir ports 4444
REDIRECT   tcp  —  anywhere             anywhere             tcp dpts:telnet:65535 redir ports 4444
Chain INPUT (policy ACCEPT)
target     prot opt source               destination       
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination       
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination 

Genel Kullanımı

Parametrelerin görünümü ve yardım menüsü

# portspoof -h
Usage: portspoof [OPTION]…
Portspoof – service emulator / frontend exploitation framework.
-i   ip : Bind to a particular  IP address
-p   port : Bind to a particular PORT number
-s   file_path : Portspoof service signature regex. file
-c   file_path : Portspoof configuration file
-l   file_path : Log port scanning alerts to a file
-f   file_path : FUZZER_MODE – fuzzing payload file list
-n   file_path : FUZZER_MODE – wrapping signatures file list
-1   FUZZER_MODE – generate fuzzing payloads internally
-2   switch to simple reply mode (doesn’t work for Nmap)!
-D   run as daemon process
-d   disable syslog
-v   be verbose
-h   display this help and exit

Portspoof configurasyon dosyası

/usr/local/etc/portspoof.conf

Açık portlar için yanıt vereceği servislere ait imzaların bulunduğu dosya

/usr/local/etc/portspoof_signatures

Portspoof’u servis emulatorü olarak çalıştırmak

# cd /usr/local/etc/
# portspoof -c portspoof.conf -s portspoof_signatures -D
-> Using user defined configuration file portspoof.conf
-> Using user defined signature file portspoof_signatures

Test çalışması

portspoof uygulamasından önce hedef sistemi taradığınızda

# nmap -sV 85.95.238.172 -v
Starting Nmap 6.40 ( http://nmap.org ) at 2013-10-20 04:18 EEST
NSE: Loaded 23 scripts for scanning.
Initiating ARP Ping Scan at 04:18
Scanning 85.95.238.172 [1 port]
Completed ARP Ping Scan at 04:18, 0.03s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 04:18
Completed Parallel DNS resolution of 1 host. at 04:18, 0.29s elapsed
Initiating SYN Stealth Scan at 04:18
Scanning 172-238-95-85-datacenter-services.ixirtelekom.com.tr (85.95.238.172) [1000 ports]
Discovered open port 22/tcp on 85.95.238.172
Completed SYN Stealth Scan at 04:18, 0.13s elapsed (1000 total ports)
Initiating Service scan at 04:18
Scanning 1 service on 172-238-95-85-datacenter-services.ixirtelekom.com.tr (85.95.238.172)
Completed Service scan at 04:18, 0.01s elapsed (1 service on 1 host)
NSE: Script scanning 85.95.238.172.
Nmap scan report for 172-238-95-85-datacenter-services.ixirtelekom.com.tr (85.95.238.172)
Host is up (0.000097s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 6.0p1 Debian 4 (protocol 2.0)
MAC Address: 00:0C:29:40:2B:7A (VMware)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
Read data files from: /usr/bin/../share/nmap
Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.65 seconds
           Raw packets sent: 1001 (44.028KB) | Rcvd: 1001 (40.032KB)

Portspoof uygulaması çalıştıkdan sonra tarama yaptığınızda tüm portların açık ve tanımlı portlar için aktif servislerin olduğunu görebilirsiniz (nmap ile default taramada 1000 port taranıyor ! )
İlk tarama 1000 port kontrolü için 0.65 saniye sürmüşken, portspoof uygulaması çalıştıkdan sonra saldırganın port taraması yaklaşık olarak 552.74 saniye (9 dakika üzeri) sürmüştür. Buda saldırgan için ciddi zaman ve efor kaybıdır.
Örnek bir sonuç görmek isterseniz, favori port tarama yazılımınız ile portspoof.org adresini tarayabilirsiniz: nmap -sV -v portspoof.org gibi gibi
Yazar: Ozan UÇAR
ozan.ucar@bga.com.tr