pivoting ve tunneling
TRANSCRIPT
Pivoting Kanallar
Pivoting ve TunellemeBGM 554 - Sızma Testleri ve Guvenlik Denetlemeleri-II
Bilgi Guvenligi MuhendisligiYuksek Lisans Programı
Dr. Ferhat Ozgur [email protected]
Istanbul Sehir Universitesi2016/2017 - Bahar
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting Kanallar
Icindekiler
1 PivotingRoutingPivotingKullanılan Pivoting KanallarıAraclar
2 Kanallar
Netcat relaySSH Lokal Port YonlendirmeSSH Ters Port YonlendirmeSSH Dinamik PortYonlendirmeMeterpreter SessionsNCat Pivoting
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting Kanallar RoutingPivoting
Kullanılan Pivoting KanallarıAraclar
Icindekiler
1 PivotingRoutingPivotingKullanılan Pivoting KanallarıAraclar
2 Kanallar
Netcat relaySSH Lokal Port YonlendirmeSSH Ters Port YonlendirmeSSH Dinamik PortYonlendirmeMeterpreter SessionsNCat Pivoting
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting Kanallar RoutingPivoting
Kullanılan Pivoting KanallarıAraclar
Routing I
Routing
I Defense-in-Depth: Hizmetleri koruyabilmek icin cokkatmanlı guvenlik mimarileri gelistirilmektedir.
I Kritik sistemler (veritabanı, uygulama sunucusu gibi) yer aldıgıag, diger sistemlerin bulundugu ag uzerinde olmamalıdır.
I Routing: Farklı ag uzerinde bulunan cihazların nasılhaberlesecegi belirleyen surec
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting Kanallar RoutingPivoting
Kullanılan Pivoting KanallarıAraclar
Routing II
Sekil: Routing
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting Kanallar RoutingPivoting
Kullanılan Pivoting KanallarıAraclar
Routing III
Sekil: Routing 1
1https://pentest.blog/explore-hidden-networks-with-double-pivoting/Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting Kanallar RoutingPivoting
Kullanılan Pivoting KanallarıAraclar
Pivoting
Pivoting
I Tanım: Sızma testi yapılırken ele gecirilen bir bilgisayararacılıgı ile trafigi yonlendirmek icin kullanılan bir yontemdir.
I Pentest gerceklestirilirken ic hedefleri ele gecirmek icin dahaonceden ele gecirilmis bir bilgisayar kullanılması gerekebilir.
I Diger subnet’ler uzerinde yer alan bilgisayarların elegecirilebilmesi icin gerekli araclar sunmaktadır.
I Bilgisayar ele gecirildikten sonra arastırılan bilgilerI kullanıcı hesapları, sifre ozetleri, diger sistemler hakkında
bilgiler, veya bilgisayar tarafından eriselibilir diger aglar.
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting Kanallar RoutingPivoting
Kullanılan Pivoting KanallarıAraclar
Kullanılan Pivoting Kanalları
Kullanılan Kanallar
I Netcat relays
I SSH local port forwarding
I SSH dynamic port forwarding (SOCKS proxy)
I Meterpreter sessions
I Ncat HTTP proxy
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting Kanallar RoutingPivoting
Kullanılan Pivoting KanallarıAraclar
Kullanılan Araclar
Araclar
I Nmap
I Proxychains
I Netcat
I Ncat
I Web Browser
I Metasploit
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Icindekiler
1 PivotingRoutingPivotingKullanılan Pivoting KanallarıAraclar
2 Kanallar
Netcat relaySSH Lokal Port YonlendirmeSSH Ters Port YonlendirmeSSH Dinamik PortYonlendirmeMeterpreter SessionsNCat Pivoting
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Netcat relay I
Listing 1: Netcat relay
$mknod backpipe p
$nc -l -p 12700 0<backpipe|nc tubitak.gov.tr 80 1>backpipe
Netcat Relays
I 12700. port uzerinde bir Netcat listener olusturur.I -l listen for an incoming connection rather than initiate a
connection to a remote host
I Listener gelen butun trafigi tubitak.gov.tr adresi ve 80 portayonlendirilir.
I mknod: ”character/block device” olusturma icin kullanılır.I -p: for fifo (pipe).
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Netcat relay II
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Netcat relay III
Sekil: Tarayıcı Gorunumu
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Netcat relay IV
Sekil: Banner Grabbing
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Netcat relay V
Sekil: Netcat relay, banner grabbing Wireshark cıktısı
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Netcat relay VI
Eksik taraflar
I Netcat relay yontemi, HTTP trafigi icin cok uygun degil.I HTTP istegi tamamlandıgı zaman, Netcat relay calısmasını
durdurur.
I Bir dongu kullanılarak Netcat’in yeniden baslatılması seklindebir cozum yapılabilir.
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Local Port Forwarding I
Local Port Forwarding
I Belli bir sunucuyla baglantıya izin vermeyen ozel bir aguzerinde oldugumuzu kabul edeilim.
I google.com engelleniyor olsun.
I Agımızda olmayan ve dolayısıyla google.com’a erisebilen birsunucu uzerinden bir tunel olusturabilir.
Listing 2: SSH lokal port yonlendirme
$ssh -L 12700: google.com :80 root@192 .168.4.33
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Local Port Forwarding II
$ssh -L port:destination_host:destination_port
username@pivot_host
Komut satırı
I port: dinlemede olan lokal port
I destination host: hedef IP adresi veya hostname
I destination port: hedef sunucuda dinlemede olan port
I username: pivot sunucuda yer alan kullanıcı adı
I pivot host: pivot sunucunun IP adresi veya hostname
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Local Port Forwarding III
Sekil: SSH lokal port yonlendirme
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Local Port Forwarding IV
Sekil: SSH lokal port yonlendirme
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Local Port Forwarding V
Sekil: SSH lokal port yonlendirme
Sekil: SSH lokal port yonlendirme
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Firewall Arkasında Yer Alan Veritabanına Baglanmak I
Database Behind Firewall
I localhost (127.0.0.1) uzerinden erisilebilen fakat uzaktanerisilemeyen portlara erisim.
Sekil: MySQL tunel baglantısı
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Firewall Arkasında Yer Alan Veritabanına Baglanmak II
Sekil: MySQL tunel baglantısı
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Firewall Arkasında Yer Alan Veritabanına Baglanmak III
Sekil: MySQL lokal port fwd Pcap goruntusu
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Firewall Arkasında Yer Alan Veritabanına Baglanmak IV
Sekil: MySQL-Workbench kullanıcı baglantıları
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Firewall Arkasında Yer Alan Veritabanına Baglanmak V
Sekil: NMap port versiyon taraması
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Firewall Arkasında Yer Alan Veritabanına Baglanmak VI
Sekil: Nmap MySQL Enum betigi
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Firewall Arkasında Yer Alan Veritabanına Baglanmak VII
Sekil: Nmap MySQL Brute betigi
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Ters Port Yonlendirme I
Sekil: Kurban tarafı ters ssh yonlendirme
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Ters Port Yonlendirme II
Sekil: Saldırgan tarafı ters ssh yonlendirme
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Ters Port Yonlendirme III
Local vs Remote
I ssh -L port:host:hostport: lokal makinede port’u dinler, uzakmakinenin satırında ”host:hostport” trafigini gonderir.
I ssh -R port:host:hostport: uzak makinede port’u dinler, lokalmakinenin satırında ”host:hostport” trafigini gonderir.
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Dinamik Port Yonlendirme (Socks Proxy) I
SSH Dinamik Port Yonlendirme
I SSH istemcisi ve SSH sunucusu arasında guvenli kanalolusturur.
Listing 3: Dinamik Port komut satırı (saldırgan tarafı)
$ssh -D address:port username@pivot_host
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Dinamik Port Yonlendirme (Socks Proxy) II
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Dinamik Port Yonlendirme (Socks Proxy) III
Sekil: Saldırgan tarafı dinamik port yonlendirme
Sekil: Istemci tarafı dinamik port yonlendirme
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Dinamik Port Yonlendirme (Socks Proxy) IV
Sekil: Istemci tarafı proxy tanımlama
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Dinamik Port Yonlendirme (Socks Proxy) V
Sekil: Istemci tarafı web tarayıcı
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
SSH Dinamik Port Yonlendirme (Socks Proxy) VI
Sekil: Sunucu tarafı paket trafigi
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Meterpreter Sessions I
Meterpreter Sessions
I Metasploit, tunelleme icin farklı bilesenlere sahiptir.
I Metasploit route komutu diger aglara sıcrama yapılabilir.
I Bu sekilde metasploit uzerinde yer alan exploitler diger ag’laruzerinde kullanılabilir hale gelir.
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Meterpreter Sessions II
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Meterpreter Sessions III
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Meterpreter Sessions IV
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Meterpreter Sessions V
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Meterpreter Sessions VI
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Meterpreter Sessions VII
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Ncat Pivoting I
Ncat Pivoting
I Ncat: Nmap projesi tarafından tekrar tasarlanmıs, ozellikleriartırılmıs Netcat.
I Proxychains kullanılarak Nmap calıstırılabilir.I Allows TCP and DNS tunneling through proxies.I Supports HTTP, SOCKS4 and SOCKS5 proxy servers.
I /etc/proxychains.conf dosyası duzenlenerek http proxytanımlaması girilir.http 192.168.2.3 8080
I Pivot sunucu uzerindencat --listen --proxy-type http 192.168.2.3 8080
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Ncat Pivoting II
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme
Pivoting KanallarNetcat relaySSH Lokal Port YonlendirmeSSH Ters Port Yonlendirme
SSH Dinamik Port YonlendirmeMeterpreter SessionsNCat Pivoting
Ncat Pivoting III
Dr. Ferhat Ozgur Catak [email protected] Pivoting ve Tunelleme