CentOS 6 ve Apache 2de ModSecurity ve OWASP

ModSecurity, IIS, Apache2 ve Nginx ile çalışmak üzere tasarlanmış bir web uygulama katmanı güvenlik duvarıdır. Apache lisans 2.0 altında yayınlanan ücretsiz, açık kaynaklı bir yazılımdır. ModSecurity, web sitenizin trafiğini izleyerek ve analiz ederek web sunucunuzun güvenliğini sağlamaya yardımcı olur. Bunu, düzenli ifadeler kullanarak en bilinen istismarlardan gelen saldırıları tespit etmek ve engellemek için gerçek zamanlı olarak yapar. Tek başına, ModSecurity sınırlı koruma sağlar ve korumayı en üst düzeye çıkarmak için kural setlerine güvenir.

Açık Web Uygulaması Güvenlik Projesi (OWASP) Çekirdek Kural Seti (CRS), herhangi bir web uygulaması için temel bir koruma düzeyi sağlayan bir dizi genel saldırı algılama kuralıdır. Kural seti ücretsiz, açık kaynaklıdır ve şu anda Spider Labs tarafından desteklenmektedir.

OWASP CRS şunları sağlar:

  • HTTP Koruması - HTTP protokolünün ve yerel olarak tanımlanmış bir kullanım ilkesinin ihlallerini algılama.
  • Gerçek Zamanlı Kara Liste Aramaları - 3. Taraf IP itibarını kullanır.
  • HTTP Hizmet Reddi Koruması - HTTP seli ve yavaş HTTP DoS saldırılarına karşı savunma.
  • Ortak Web Saldırı Koruması - yaygın web uygulaması güvenlik saldırılarını tespit eder.
  • Otomasyon Algılama - Botları, tarayıcıları, tarayıcıları ve diğer yüzey zararlı etkinliklerini algılama.
  • AV Dosya Yüklemeleri için Tarama - web uygulaması üzerinden yüklenen kötü amaçlı dosyaları algılar.
  • Hassas Verileri İzleme - Kredi kartı kullanımını izler ve sızıntıları engeller.
  • Truva Koruması - Truva atlarını algılar.
  • Uygulama Kusurlarının Belirlenmesi - uygulama yanlış konfigürasyonları hakkında uyarılar.
  • Hata Algılama ve Gizleme - Sunucu tarafından gönderilen hata mesajlarını gizleme.

Kurulum

Bu kılavuz, Apache 2 çalıştıran CentOS 6'ya ModSecurity ve OWASP kural setini nasıl kuracağınızı gösterir.

İlk olarak, sisteminizin güncel olduğundan emin olmanız gerekir.

 yum -y update

Apache 2'yi yüklemediyseniz, şimdi yükleyin.

 yum -y install httpd

Şimdi ModSecurity'nin çalışması için bazı bağımlılıklar yüklemeniz gerekiyor. Sunucu yapılandırmanıza bağlı olarak, bu paketlerin bazıları veya tümü zaten yüklenmiş olabilir. Yum, sahip olmadığınız paketleri kuracak ve paketlerden herhangi birinin kurulu olup olmadığını size bildirecektir.

 yum -y install httpd-devel git gcc make libxml2 pcre-devel libxml2-devel curl-devel

Dizini değiştirin ve ModSecuity web sitesinden kaynak kodunu indirin. Mevcut kararlı sürüm 2.8'dir.

 cd /opt/
 wget https://www.modsecurity.org/tarball/2.8.0/modsecurity-2.8.0.tar.gz

Paketi ayıklayın ve dizinine değiştirin.

 tar xzfv modsecurity-2.8.0.tar.gz 
 cd modsecurity-2.8.0

Kaynak kodunu yapılandırın ve derleyin.

 ./configure
 make
 make install

Varsayılan ModSecurity yapılandırmasını ve unicode eşleme dosyasını Apache dizinine kopyalayın.

 cp modsecurity.conf-recommended /etc/httpd/conf.d/modsecurity.conf
 cp unicode.mapping /etc/httpd/conf.d/

Apache'yi ModSecurity'yi kullanacak şekilde yapılandırın. Bunu yapmanın 2 yolu vardır.

 echo LoadModule security2_module modules/mod_security2.so >> /etc/httpd/conf/httpd.conf

... veya nano gibi bir metin düzenleyicisi kullanın:

 nano /etc/httpd/conf/httpd.conf

Dosyanın altına, ayrı bir satıra şunu ekleyin:

 LoadModule security2_module modules/mod_security2.so

Artık Apache'yi başlatabilir ve önyükleme sırasında başlayacak şekilde yapılandırabilirsiniz.

 service httpd start
 chkconfig httpd on

Bu kılavuzu kullanmadan önce Apache yüklediyseniz, yeniden başlatmanız gerekir.

 service httpd restart

Şimdi OWASP temel kural setini indirebilirsiniz.

 cd /etc/httpd
 git clone https://github.com/SpiderLabs/owasp-modsecurity-crs.git

Şimdi OWASP kural setini yapılandırın.

 cd modsecurity-crs
 cp modsecurity_crs_10_setup.conf.example modsecurity_crs_10_config.conf

Ardından, Apache yapılandırmasına kural kümesini eklemeniz gerekir. Yine bunu iki şekilde yapabiliriz.

 echo Include modsecurity-crs/modsecurity_crs_10_config.conf >> /etc/httpd/conf/httpd.conf
 echo Include modsecurity-crs/base_rules/*.conf >> /etc/httpd/conf/httpd.conf

... veya bir metin düzenleyicisiyle:

 nano /etc/httpd/conf/httpd.conf

Ayrı satırlardaki dosyanın altına şunu ekleyin:

 Include modsecurity-crs/modsecurity_crs_10_config.conf
 Include modsecurity-crs/base_rules/*.conf

Şimdi Apache'yi yeniden başlatın.

 service httpd restart

Son olarak, kurulum dosyalarını silin.

 yum erase /opt/modsecurity-2.8.0
 yum erase /opt/modsecurity-2.8.0.tar.gz

ModSecurity'yi Kullanma

Varsayılan olarak, ModSecurity yalnızca algılama modunda çalışır, yani tüm kural kesmelerini günlüğe kaydeder ancak herhangi bir işlem yapmaz. Bu, Apache hata günlüğünde oluşturulan olayları izleyebilmeniz için yeni kurulumlar için önerilir. Günlüğü inceledikten sonra, koruma moduna geçmeden önce kural kümesinde herhangi bir değişiklik yapılmasına veya kuralın devre dışı bırakılmasına (aşağıya bakın) karar verilmesine karar verebilirsiniz.

Apache hata günlüğünü görüntülemek için:

 cat /var/log/httpd/error_log

Apache hata günlüğündeki ModSecurity satırı dokuz öğeye ayrılmıştır. Her öğe, etkinliğin neden tetiklendiği hakkında bilgi sağlar.

  • İlk bölüm bu olayı hangi kural dosyasının tetiklediğini anlatır.
  • İkinci bölüm, kural dosyasında kuralın hangi satırda başladığını anlatır.
  • Üçüncü unsur size hangi kuralın tetiklendiğini söyler.
  • Dördüncü unsur size kuralın revizyonunu anlatır.
  • Beşinci öğe, hata ayıklama amacıyla özel veriler içerir.
  • Altıncı öğe, bu olayın önem derecesinin günlük önem derecesini tanımlar.
  • Yedinci bölüm hangi eylemin gerçekleştiğini ve hangi aşamada gerçekleştiğini açıklar.

Sunucunuzun yapılandırmasına bağlı olarak bazı öğelerin bulunmayabileceğini unutmayın.

ModSecurity'yi koruma moduna değiştirmek için conf dosyasını bir metin düzenleyicisinde açın:

 nano /etc/httpd/conf.d/modsecurity.conf

... ve değişim:

 SecRuleEngine DetectionOnly

için:

 SecRuleEngine On

ModSecurity çalışırken herhangi bir blokla karşılaşırsanız, HTTP hata günlüğünde kuralı tanımlamanız gerekir. "Tail" komutu günlükleri gerçek zamanlı olarak izlemenizi sağlar:

 tail -f /var/log/httpd/error_log

Günlüğü izlerken bloğa neden olan eylemi tekrarlayın.

Kural Kümesini Değiştirme / Kural Kimliğini Devre Dışı Bırakma

Bir kural kümesini değiştirmek bu öğreticinin kapsamı dışındadır.

Belirli bir kuralı devre dışı bırakmak için, üçüncü öğede bulunan kural kimliğini (örneğin [id = 200000]) tanımlar ve ardından Apache yapılandırma dosyasında devre dışı bırakırsınız:

 nano /etc/httpd/conf/httpd.conf

... kural kimliğiyle dosyanın altına aşağıdakileri ekleyerek:

<IfModule mod_security2.c>
SecRuleRemoveById 200000
</IfModule>

ModSecurity'nin web sitenizdeki / sitelerinizdeki tüm eylemleri engellediğini fark ederseniz, "Çekirdek Kural Seti" muhtemelen "Bağımsız" modundadır. Bunu, yalnızca anormallikleri algılayan ve engelleyen "İşbirlikçi Algılama" olarak değiştirmeniz gerekir. Aynı zamanda, "Müstakil" seçeneklere bakabilir ve isterseniz bunları değiştirebilirsiniz.

 nano /etc/httpd/modsecurity-crs/modsecurity_crs_10_config.conf

"Algılama" yı "Bağımsız" olarak değiştirin.

ModSecurity'yi, günlüğe kaydetmeden web uygulaması güvenlik duvarı (WAF) üzerinden IP'nize izin verecek şekilde de yapılandırabilirsiniz:

 SecRule REMOTE_ADDR "@ipMatch xxx.xxx.xxx.xxx" phase:1,nolog,allow,ctl:ruleEngine=Off

... veya günlük kaydıyla:

 SecRule REMOTE_ADDR "@ipMatch xxx.xxx.xxx.xxx" phase:1,nolog,allow,ctl:ruleEngine=DetectionOnly


Leave a Comment

CentOS 7de Tavşan Kümesini Kümeleme

CentOS 7de Tavşan Kümesini Kümeleme

RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir

Pagekit CMSyi CentOS 7ye Yükleme

Pagekit CMSyi CentOS 7ye Yükleme

Farklı Bir Sistem mi Kullanıyorsunuz? Pagekit PHP ile yazılmış açık kaynaklı bir CMSdir. Pagekit kaynak kodu GitHubda herkese açık olarak barındırılıyor. Bu kılavuz size

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

SSL / TLS ile vsFTPd Nasıl Güvenli Hale Getirilir

Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak

CentOS 7de Yalnızca SFTP Kullanıcı Hesaplarını Kurma

CentOS 7de Yalnızca SFTP Kullanıcı Hesaplarını Kurma

Belirli durumlarda, Sistem Yöneticisinin bir kullanıcı hesabı oluşturması ve yalnızca kendi dosyalarını sFTP yoluyla yönetmek için erişimini kısıtlaması gerekebilir, ancak b

CentOS 6da ModSecurity ile NGINX kurulumu

CentOS 6da ModSecurity ile NGINX kurulumu

Bu makalede, ModSecurity tarafından korunan bir LEMP yığını oluşturmayı açıklayacağım. ModSecurity faydalı bir açık kaynaklı web uygulaması güvenlik duvarıdır.

CentOS 6 Üzerinde Apache, MySQL ve PHP Kurulumu

CentOS 6 Üzerinde Apache, MySQL ve PHP Kurulumu

Giriş LAMP, Linux, Apache, MySQL ve PHPnin kısaltmasıdır. Bu yazılım yığını, kurulum için en popüler açık kaynaklı çözümdür.

CentOS 7 Üzerinde Chamilo 1.11.8 Kurulumu

CentOS 7 Üzerinde Chamilo 1.11.8 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Chamilo, çevrimiçi eğitim ve takım işbirliği için yaygın olarak kullanılan ücretsiz ve açık kaynaklı bir öğrenme yönetim sistemidir (LMS).

CentOS 7ye Odoo 9 Topluluğunu Yükleme

CentOS 7ye Odoo 9 Topluluğunu Yükleme

Eskiden OpenERP olarak bilinen Odoo, iyi bilinen bir açık kaynaklı ERP iş platformudur. Her büyüklükteki işletme, bol miktarda lis sayesinde Odoodan yararlanabilir

Icinga2yi CentOS 6 veya CentOS 7de Ana / İstemci Modelini Kullanacak Şekilde Değiştirme

Icinga2yi CentOS 6 veya CentOS 7de Ana / İstemci Modelini Kullanacak Şekilde Değiştirme

Icinga2 güçlü bir izleme sistemidir ve bir ana istemci modelinde kullanıldığında, NRPE tabanlı izleme kontrollerine olan ihtiyacın yerini alabilir. Master-Clien

CentOS 7 LAMP VPSye Couch CMS 2.0 Kurulumu

CentOS 7 LAMP VPSye Couch CMS 2.0 Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Couch CMS, web tasarımcılarının tasarlamalarını sağlayan basit ve esnek, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)

NetOSu CentOS 7ye Yükleme

NetOSu CentOS 7ye Yükleme

Farklı Bir Sistem mi Kullanıyorsunuz? Netdata, gerçek zamanlı sistem ölçümleri izleme alanında yükselen bir yıldızdır. Aynı türdeki diğer araçlarla karşılaştırıldığında, Netdata:

CentPN 7 Üzerinde ERPNext Açık Kaynak ERP Kurulumu

CentPN 7 Üzerinde ERPNext Açık Kaynak ERP Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? ERP veya Kurumsal Kaynak Planlaması, temel iş süreçlerini yönetmek için kullanılan bir kurumsal uygulama paketidir. ERPNext ücretsizdir

CentOS 6da SA-MP San Andreas Çok Oyunculu Sunucu Kurma

CentOS 6da SA-MP San Andreas Çok Oyunculu Sunucu Kurma

Başka bir Vultr eğitimine hoş geldiniz. Burada, bir SAMP sunucusunun nasıl kurulacağını ve çalıştırılacağını öğreneceksiniz. Bu kılavuz CentOS 6 için yazılmıştır. Önkoşullar

KubOSM ile Kubernetesi CentOS 7de dağıtın

KubOSM ile Kubernetesi CentOS 7de dağıtın

Genel Bakış Bu makale, bir Kubernetes kümesini hemen kurup kubeadm ile çalıştırmanıza yardımcı olmak içindir. Bu kılavuz iki sunucuyu

CentOS 7de Geliştirme için Sails.jsyi kurun

CentOS 7de Geliştirme için Sails.jsyi kurun

Farklı Bir Sistem mi Kullanıyorsunuz? Giriş Sails.js, Ruby on Railse benzer şekilde Node.js için bir MVC çerçevesidir. Modern uygulamalar geliştirmek için yapar

CentOS 6da Half Life 2 Sunucusu Kurma

CentOS 6da Half Life 2 Sunucusu Kurma

Bu eğitimde, CentOS 6 Sistemine Half Life 2 oyun sunucusu kurma süreci ele alınacaktır. 1. Adım: Önkoşulları kurma

PrestaShopu CentOS 7ye Yükleme

PrestaShopu CentOS 7ye Yükleme

PrestaShop popüler bir açık kaynaklı e-ticaret çözümüdür. Kendi çevrimiçi mağazanızı ücretsiz oluşturmak için kullanabilirsiniz. Bu eğitimde, size

CentOS 7 LAMBA VPSye MODX Devrimi Nasıl Yüklenir

CentOS 7 LAMBA VPSye MODX Devrimi Nasıl Yüklenir

Farklı Bir Sistem mi Kullanıyorsunuz? MODX Revolution hızlı, esnek, ölçeklenebilir, ücretsiz ve açık kaynaklı, kurumsal düzeyde bir İçerik Yönetim Sistemi (CMS)

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Ubuntu ve CentOS İçin Daha İyi İzleme Araçları

Giriş Linux sistemleri, süreçleri ve disk alanını izlemeye yardımcı olan varsayılan olarak top, df ve du gibi izleme araçlarıyla birlikte gelir. Çoğu zaman, onlar ar

CentOS 7de Kolab Groupware Kurulumu

CentOS 7de Kolab Groupware Kurulumu

Farklı Bir Sistem mi Kullanıyorsunuz? Kolab Groupware, ücretsiz ve açık kaynaklı bir web tabanlı grup yazılımı uygulamasıdır. Özellikleri e-posta iletişiminden, olaylardan oluşur

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun