| |||||||
| Kayıt ol | Yardım | Üye Listesi | Ajanda | Forumları Okundu Kabul Et |
![]() |
| | LinkBack (3) | Seçenekler | Stil |
| ||||
| mod_security kurulumu Mod_Security web uygulamalarının güvenliğinin sağlanmasında kullanılabilecek bir açık kaynak kodlu saldırı önleme sistemidir.Apache ye bir modül gibi eklenip çalıştırılabilir.Mod_security kullanımının amacı web uygulamalarını bilinen ve bilinmeyen saldırı yöntemlerine karşı korumaktır.Bu yönüyle ids sistemlerine benzemektedir http trafiğini izleyip bunu verilen kurallar doğrultusunda yorumlayabilmektedir.İds sistemelerinden farkı bu saldırıları önleyebilmektedir.Sunucu ile kişi arasında bir sunucu uygulamalarının güvenlliğini sağlayan firewall görevi üstlenir gelen istekleri belirlenen kurallar dahilinde yorumlayarak gerekli işlemi gerçekleştir. ![]() Mod_Security'nin Yetenekleri
http://www.modsecurity.org/ ve 39 sayfalık kullanım klavuzu http://www.modsecurity.org/documentation/modsecurity-manual.pdf Kurulum Adımları 1.)Dosyayı sunucuya indiriyoruz Kod: 2.)Sıkıştırılmış arşiv dosyasını açıyoruz. Kod: tar zxvf modsecurity-1.8.7.tar.gz 3.)Web sunucusu olarak Apache 1.x kullanıyorsanız Apache1 klasörüne giriyorsunuz. Kod: cd modsecurity-1.8.7/apache1 3.)Web sunucusu olarak Apache 2.x kullanıyorsanız Apache2 klasörüne giriyorsunuz. Kod: cd modsecurity-1.8.7/apache1 4.)Mod_security' yi bir modül olarak derliyoruz. Kod: /etc/httpd/bin/apxs -cia mod_security.c ![]() 5.)httpd.conf dosyamızı olabilecek aksaklıklara karşı yedekliyoruz. Kod: cp /usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf-yedek 6.)Apache ayar dosyasını açıyoruz Kod: pico -w /usr/local/apache/conf/httpd.conf 7.)Apache 1.x için AddModule mod_security.c yazan kısımı httpd.conf dosyası içinde buluyoruz altına aşağıdaki kural zincirini ekliyoruz ![]() Kod: <IFMODULE mod_security.c> # Turn the filtering engine On or Off SecFilterEngine On # Change Server: string SecServerSignature "Apache" # This setting should be set to On only if the Web site is # using the Unicode encoding. Otherwise it may interfere with # the normal Web site operation. SecFilterCheckUnicodeEncoding Off # The audit engine works independently and # can be turned On of Off on the per-server or # on the per-directory basis. "On" will log everything, # "DynamicOrRelevant" will log dynamic requests or violations, # and "RelevantOnly" will only log policy violations SecAuditEngine RelevantOnly # The name of the audit log file SecAuditLog logs/audit_log # Should mod_security inspect POST payloads SecFilterScanPOST On # Action to take by default SecFilterDefaultAction "deny,log,status:406" # Require HTTP_USER_AGENT and HTTP_HOST in all requests # SecFilterSelective "HTTP_USER_AGENT|HTTP_HOST" "^$" # Require Content-Length to be provided with # every POST request SecFilterSelective REQUEST_METHOD "^POST$" chain SecFilterSelective HTTP_Content-Length "^$" # Only allow bytes from this range SecFilterForceByteRange 1 255 # Prevent path traversal (..) attacks SecFilter "\.\./" # Weaker XSS protection but allows common HTML tags SecFilter "<[[:space:]]*script" # Phpmyadmin de insert yapılırken 406 veriyor sunucuda phpmyadmin varsa kapatın SecFilter "delete[[:space:]]+from" SecFilter "insert[[:space:]]+into" SecFilter "select.+from" #Dizin Erisim Engelleme SecFilter /boot/ # SecFilter /bin/ SecFilter /dev/ SecFilter /etc/ SecFilter /initrd/ SecFilter /lib/ SecFilter /lost+found/ # SecFilter /misc/ vbulletinin bir dizini o yüzden bütün vbulletin kullanıcılarına 406 veriyor SecFilter /mnt/ SecFilter /proc/ SecFilter /root/ SecFilter /sbin/ # SecFilter /scripts/ # SecFilter /tmp/ # SecFilter /usr/ SecFilter /usr/local/apache/ SecFilter /usr/local/cpanel/ SecFilter /usr/local/mysql/ SecFilter /var/ SecFilter /bin/cc SecFilter /bin/gcc # WEB-ATTACKS ps command attempt SecFilterSelective THE_REQUEST "/bin/ps" # WEB-ATTACKS /bin/ps command attempt SecFilterSelective THE_REQUEST "ps\x20" # WEB-ATTACKS wget command attempt SecFilter "wget" # WEB-ATTACKS uname -a command attempt SecFilter "uname\x20-a" # WEB-ATTACKS /usr/bin/id command attempt SecFilterSelective THE_REQUEST "/usr/bin/id" # WEB-ATTACKS id command attempt SecFilter "\;id" # WEB-ATTACKS kill command attempt SecFilterSelective THE_REQUEST "/bin/kill" # WEB-ATTACKS chsh command attempt SecFilterSelective THE_REQUEST "/usr/bin/chsh" # WEB-ATTACKS tftp command attempt SecFilter "tftp\x20" # WEB-ATTACKS /usr/bin/gcc command attempt SecFilterSelective THE_REQUEST "/usr/bin/gcc" # WEB-ATTACKS gcc command attempt SecFilter "gcc\x20-o" # WEB-ATTACKS bin/tclsh execution attempt SecFilter "bin/tclsh" # WEB-ATTACKS tclsh execution attempt SecFilter "tclsh8\x20" # WEB-ATTACKS bin/nasm command attempt SecFilterSelective THE_REQUEST "bin/nasm" # WEB-ATTACKS nasm command attempt SecFilter "nasm\x20" # WEB-ATTACKS perl execution attempt SecFilter "perl\x20" # WEB-ATTACKS traceroute command attempt SecFilter "traceroute\x20" # WEB-ATTACKS ping command attempt SecFilterSelective THE_REQUEST "/bin/ping" # WEB-ATTACKS netcat command attempt SecFilter "nc\x20" # WEB-ATTACKS nmap command attempt SecFilter "nmap\x20" # WEB-ATTACKS xterm command attempt SecFilterSelective THE_REQUEST "/usr/X11R6/bin/xterm" # WEB-ATTACKS X application to remote host attempt SecFilter "\x20-display\x20" # WEB-ATTACKS lsof command attempt SecFilter "lsof\x20" # WEB-ATTACKS rm command attempt SecFilter "rm\x20" # WEB-ATTACKS /bin/ls command attempt SecFilterSelective THE_REQUEST "/bin/ls" # WEB-ATTACKS /etc/shadow access SecFilter "/etc/shadow" # WEB-ATTACKS .htgroup access SecFilterSelective THE_REQUEST "\.htgroup" # WEB-CGI rksh access SecFilterSelective THE_REQUEST "/rksh" # WEB-CGI bash access SecFilterSelective THE_REQUEST "/bash" log,pass # WEB-CGI zsh access SecFilterSelective THE_REQUEST "/zsh" # WEB-CGI csh access SecFilterSelective THE_REQUEST "/csh" # WEB-CGI tcsh access SecFilterSelective THE_REQUEST "/tcsh" # WEB-CGI rsh access SecFilterSelective THE_REQUEST "/rsh" # WEB-CGI ksh access SecFilterSelective THE_REQUEST "/ksh" # WEB-MISC .history access SecFilterSelective THE_REQUEST "/\.history" # WEB-MISC .bash_history access SecFilterSelective THE_REQUEST "/\.bash_history" # Don't accept transfer encodings we know we don't handle # (and you don't need it anyway) SecFilterSelective HTTP_Transfer-Encoding "!^$" # Protecting from XSS attacks through the PHP session cookie SecFilterSelective ARG_PHPSESSID "!^[0-9a-z]*$" SecFilterSelective COOKIE_PHPSESSID "!^[0-9a-z]*$" SecFilter "viewtopic\.php\?" chain SecFilter "chr\(([0-9]{1,3})\)" "deny,log" # Block various methods of downloading files to a server SecFilterSelective THE_REQUEST "wget " SecFilterSelective THE_REQUEST "lynx " SecFilterSelective THE_REQUEST "scp " SecFilterSelective THE_REQUEST "ftp " SecFilterSelective THE_REQUEST "cvs " SecFilterSelective THE_REQUEST "rcp " SecFilterSelective THE_REQUEST "curl " SecFilterSelective THE_REQUEST "telnet " SecFilterSelective THE_REQUEST "ssh " SecFilterSelective THE_REQUEST "echo " SecFilterSelective THE_REQUEST "links -dump " SecFilterSelective THE_REQUEST "links -dump-charset " SecFilterSelective THE_REQUEST "links -dump-width " SecFilterSelective THE_REQUEST "links http:// " SecFilterSelective THE_REQUEST "links ftp:// " SecFilterSelective THE_REQUEST "links -source " SecFilterSelective THE_REQUEST "mkdir " SecFilterSelective THE_REQUEST "cd /tmp " SecFilterSelective THE_REQUEST "cd /var/tmp " SecFilterSelective THE_REQUEST "cd /etc/httpd/proxy " </IFMODULE> 7.) Apache 2.x için LoadModule security_module modules/mod_security.so yazan kıısmı bulup Apache 1.x için eklediğimiz yukarıdaki kural serisini ekliyoruz. 8.)Http sunucumuzu yeniden başlatıyoruz herhangi bir sorunla karşılaşırsanız yukarıdkai adımları kontrol etmelisiniz. Kod: service httpd restart ![]() 9.)Eklediğiniz kuralların hehrangi bir soruna yol açıp açmadığını log dosyasına bakarak anlayabilirsiniz Kod: cat /etc/httpd/logs/audit_log 10.)Mod_security yi kapatmak isterseniz Apache 1.x için AddModule mod_security.c yazan kıısmın başına bir # işareti koyun ; Apache 2.x için LoadModule security_module modules/mod_security.so yazan kısımın başına # koyun. Bu makalede verilmiş olan kural ile hiç bir sorun yaşamayacaksınız ama istiyorsanız daha etkili kuralları deneyebilirsiniz.Fakat bu kurallar bir çok scriptin işleyişini bozabilir http://modsecrules.monkeydev.org/index.php http://www.gotroot.com/downloads/ftp/mod_security/rules.conf
__________________ 1.)Lütfen destek talebinde bulunmak için msn messenger üzerinden iletişime geçmeyiniz. 2.)Ücretsiz destek almak için forum sayfalarımızı kullanmanız aynı sorunu yaşayan diğer üyelerin cevaplara en kısa sürede ulaşabilmesi ve sizlere yardımcı olmak isteyen bizlerin ve diğer üyelerimizin zaman kazanmaları açısından çok önemlidir. 3.)Forumlarımızda sorunlarınızı anlatırken mümkün olduğunca çok detay vermeniz en kısa sürede sorununuza çözüm bulmanız açısından mühimdir. Daha çok öğrenmek ve öğretmek dileğiyle.. Sevgiler.. The Platform. |
| ||||
| Aşağıdaki komutlar şimdilik yeterlidir. yeni exploitler çıkarsa bakıp listeyi güncellerim. Kod: <IfModule mod_security.c> SecFilterEngine On SecFilterCheckURLEncoding Off SecFilterCheckUnicodeEncoding Off SecFilterForceByteRange 0 255 SecAuditEngine RelevantOnly SecAuditLog logs/audit_log SecFilterDebugLog logs/modsec_debug_log SecFilterDebugLevel 0 SecFilterDefaultAction "deny,log,status:406" SecFilterSelective REMOTE_ADDR "^127.0.0.1$" nolog,allow Secfilter "sbin/" SecFilter "eggz" SecFilter "eggdrop" SecFilter "psybnc" SecFilter "udp.pl" SecFilter "bindtty" Include "/usr/local/apache/conf/modsec.user.conf" SecFilterSelective THE_REQUEST "act=cmd" SecFilterSelective THE_REQUEST "yshout" SecFilterSelective THE_REQUEST "toplist" SecFilterSelective THE_REQUEST "button.php" SecFilterSelective THE_REQUEST "vbshout" SecFilterSelective THE_REQUEST "act=tools" SecFilterSelective THE_REQUEST "act=gof" SecFilterSelective THE_REQUEST "act=ls" SecFilterSelective THE_REQUEST "act=mk" SecFilterSelective THE_REQUEST "act=f&" SecFilterSelective THE_REQUEST "r57" SecFilterSelective THE_REQUEST "c99" SecFilterSelective THE_REQUEST "root" SecFilterSelective THE_REQUEST "chmod" SecFilterSelective THE_REQUEST "cmd=" SecFilterSelective THE_REQUEST "rush=" SecFilterSelective THE_REQUEST "union" SecFilterSelective THE_REQUEST "UNION" SecFilterSelective THE_REQUEST "echr" SecFilterSelective THE_REQUEST "cp%20" SecFilterSelective THE_REQUEST "mdir%20" SecFilterSelective THE_REQUEST "mcd%20" SecFilterSelective THE_REQUEST "mrd%20" SecFilterSelective THE_REQUEST "rm%20" SecFilterSelective THE_REQUEST "mv%20" SecFilterSelective THE_REQUEST "rmdir" SecFilterSelective THE_REQUEST "chown" SecFilterSelective THE_REQUEST "chgrp" SecFilterSelective THE_REQUEST "locate" SecFilterSelective THE_REQUEST "grep" SecFilterSelective THE_REQUEST "diff" SecFilterSelective THE_REQUEST "passwd" SecFilterSelective THE_REQUEST "telnet" SecFilterSelective THE_REQUEST "vi%20" SecFilterSelective THE_REQUEST "INSERT%20INTO" SecFilterSelective THE_REQUEST "SELECT%20" SecFilterSelective THE_REQUEST "nigga" SecFilterSelective THE_REQUEST "fopen" SecFilterSelective THE_REQUEST "fwrite" SecFilter '$path."*"' </IfModule>
__________________ domain bayiliği |
| |||
| Mod Security , bazı portallarda sorun çıkartabiliyor diye biliyorum. Örnegin Word Press te bazı kodların çalışmasını engelliyor. Siz bu sorunla karşılaştınız mı bilmiyorum fakat. Bu tip sorunları önleme ihtimalimiz var mıdır ? |
| ||||
| sorundan kastın 406 hata sayfası ise, httpd.conf içine ekleyeceğin kodlarda benim verdiklerimi kullan sorun çıkmaz. |
| |||
| teşekkürler netlojik şuan için dediğin gibi bir sorun gözükmüyor. İşime yarayan bir bilgi idi sagol |
| |||
| arkadaşlar bu httpd.conf nerede ve bu kodları neresine eklicez? |
| ||||
| pico /usr/local/apache/conf/httpd.conf bu dizine bakabilirsiniz.
__________________ İmkansız Sadece Zamandır ! |
| |||
| Arkadaşlar Mod_sec yararlı olmasına ragmen server ı biraz kasıyor. Load larda yükselmeler oluyor.. Kaldırmak zorunda kaldım bu sebepten ötürü |
| ||||
| hayır pek hissedilecek kadar işlemci tüketmez çünkü log tutmaz. sadece girişleri kontrol eder uygunsa alır içeri uygun değilse 406 hata sayfası ile engeller. muhtemelen sitelerinizde bir yoğunluk vardır veya başka bir nedenden ötürüdür.
__________________ domain bayiliği |
| ||||
| Daha pratik yapalım bu işi. Ubuntu ve Debian için, Ubuntu için aynı işlemleri 2 kere üstte yapın. 1 kere yaptığınızda hata verebilir Kod: apt-get install libapache2-mod-security a2enmod mod-security /etc/init.d/apache2 force-reload Kod: yum install mod_security /etc/init.d/httpd restart ------------------------------------------------------ Tabi Yukarıdaki kural zincirlerini eklemeyi unutmuyorsunuz Alıntı:
Alıntı:
__________________ domain bayiliği Konu Fesih BICER tarafından (04.11.07 Saat 04:36 PM ) değiştirilmiştir.. |
![]() |
LinkBacks (?)
LinkBack to this Thread: http://forum.whmdestek.com/guvenlik-makaleleri/39-mod_security-kurulumu.html | ||||
| Konuyu Başlatan | For | Type | Tarih | |
| Fedora apache2 Cpanel / whm de Mod security kurulumu ? - Webmaster Forum & Webmaster Okulu | This thread | Pingback | 11.11.07 06:26 PM | |
| ipsconfig panel kurulumu - CMSTURK.NET CMS İYS Webmaster Forumları | This thread | Refback | 08.11.07 07:52 PM | |
| r57 Önlem - Webmaster Zone | This thread | Pingback | 07.07.07 05:59 PM | |
| Seçenekler | |
| Stil | |
| |


