Enviar búsqueda
Cargar
how config Naxsi
•
0 recomendaciones
•
653 vistas
Yashar Esmaildokht
Seguir
how manage and config naxsi
Leer menos
Leer más
Datos y análisis
Denunciar
Compartir
Denunciar
Compartir
1 de 32
Recomendados
Zabbix monitoring website
Zabbix monitoring website
Yashar Esmaildokht
Supervisor
Supervisor
Yashar Esmaildokht
Osm
Osm
Yashar Esmaildokht
How Create Waf With Naxsi
How Create Waf With Naxsi
Yashar Esmaildokht
Wazuh و Ossec Wazuh به ossec از مهاجرت نحوه همچنین
Wazuh و Ossec Wazuh به ossec از مهاجرت نحوه همچنین
Yashar Esmaildokht
Ras in linux
Ras in linux
Yashar Esmaildokht
Varnish
Varnish
Yashar Esmaildokht
کتاب Samba and Nfs
کتاب Samba and Nfs
Yashar Esmaildokht
Recomendados
Zabbix monitoring website
Zabbix monitoring website
Yashar Esmaildokht
Supervisor
Supervisor
Yashar Esmaildokht
Osm
Osm
Yashar Esmaildokht
How Create Waf With Naxsi
How Create Waf With Naxsi
Yashar Esmaildokht
Wazuh و Ossec Wazuh به ossec از مهاجرت نحوه همچنین
Wazuh و Ossec Wazuh به ossec از مهاجرت نحوه همچنین
Yashar Esmaildokht
Ras in linux
Ras in linux
Yashar Esmaildokht
Varnish
Varnish
Yashar Esmaildokht
کتاب Samba and Nfs
کتاب Samba and Nfs
Yashar Esmaildokht
Ossec و Wazuh
Ossec و Wazuh
Yashar Esmaildokht
how enable ceph dashboard
how enable ceph dashboard
Yashar Esmaildokht
Partition in oracle mysql |Mariadb
Partition in oracle mysql |Mariadb
Yashar Esmaildokht
Zfs and btrfs
Zfs and btrfs
Yashar Esmaildokht
Beowolf
Beowolf
Yashar Esmaildokht
Ossec
Ossec
Yashar Esmaildokht
Package management
Package management
Yashar Esmaildokht
Rbdmap ceph realease 0.2
Rbdmap ceph realease 0.2
Yashar Esmaildokht
سطح دسترسی و کنترل لیست و سهمیه بندی در گنو/لینوکس
سطح دسترسی و کنترل لیست و سهمیه بندی در گنو/لینوکس
Yashar Esmaildokht
تجارت الکترونبکی با opencart
تجارت الکترونبکی با opencart
Yashar Esmaildokht
ips/ids
ips/ids
Yashar Esmaildokht
Podman
Podman
Yashar Esmaildokht
Recovery in gnu/linux
Recovery in gnu/linux
Yashar Esmaildokht
rbdmap in ceph
rbdmap in ceph
Yashar Esmaildokht
virsh vmware
virsh vmware
Yashar Esmaildokht
Pg autoscaling in ceph
Pg autoscaling in ceph
Yashar Esmaildokht
کتاب امنیت
کتاب امنیت
Yashar Esmaildokht
Ssh
Ssh
Yashar Esmaildokht
Ssh edition 2
Ssh edition 2
Yashar Esmaildokht
Cisco Exploration 2 In Persion-Muhibullah Aman
Cisco Exploration 2 In Persion-Muhibullah Aman
Muhibullah Aman
security book
security book
Yashar Esmaildokht
Keylogger
Keylogger
Yashar Esmaildokht
Más contenido relacionado
La actualidad más candente
Ossec و Wazuh
Ossec و Wazuh
Yashar Esmaildokht
how enable ceph dashboard
how enable ceph dashboard
Yashar Esmaildokht
Partition in oracle mysql |Mariadb
Partition in oracle mysql |Mariadb
Yashar Esmaildokht
Zfs and btrfs
Zfs and btrfs
Yashar Esmaildokht
Beowolf
Beowolf
Yashar Esmaildokht
Ossec
Ossec
Yashar Esmaildokht
Package management
Package management
Yashar Esmaildokht
Rbdmap ceph realease 0.2
Rbdmap ceph realease 0.2
Yashar Esmaildokht
سطح دسترسی و کنترل لیست و سهمیه بندی در گنو/لینوکس
سطح دسترسی و کنترل لیست و سهمیه بندی در گنو/لینوکس
Yashar Esmaildokht
تجارت الکترونبکی با opencart
تجارت الکترونبکی با opencart
Yashar Esmaildokht
ips/ids
ips/ids
Yashar Esmaildokht
Podman
Podman
Yashar Esmaildokht
Recovery in gnu/linux
Recovery in gnu/linux
Yashar Esmaildokht
rbdmap in ceph
rbdmap in ceph
Yashar Esmaildokht
virsh vmware
virsh vmware
Yashar Esmaildokht
Pg autoscaling in ceph
Pg autoscaling in ceph
Yashar Esmaildokht
کتاب امنیت
کتاب امنیت
Yashar Esmaildokht
Ssh
Ssh
Yashar Esmaildokht
Ssh edition 2
Ssh edition 2
Yashar Esmaildokht
Cisco Exploration 2 In Persion-Muhibullah Aman
Cisco Exploration 2 In Persion-Muhibullah Aman
Muhibullah Aman
La actualidad más candente
(20)
Ossec و Wazuh
Ossec و Wazuh
how enable ceph dashboard
how enable ceph dashboard
Partition in oracle mysql |Mariadb
Partition in oracle mysql |Mariadb
Zfs and btrfs
Zfs and btrfs
Beowolf
Beowolf
Ossec
Ossec
Package management
Package management
Rbdmap ceph realease 0.2
Rbdmap ceph realease 0.2
سطح دسترسی و کنترل لیست و سهمیه بندی در گنو/لینوکس
سطح دسترسی و کنترل لیست و سهمیه بندی در گنو/لینوکس
تجارت الکترونبکی با opencart
تجارت الکترونبکی با opencart
ips/ids
ips/ids
Podman
Podman
Recovery in gnu/linux
Recovery in gnu/linux
rbdmap in ceph
rbdmap in ceph
virsh vmware
virsh vmware
Pg autoscaling in ceph
Pg autoscaling in ceph
کتاب امنیت
کتاب امنیت
Ssh
Ssh
Ssh edition 2
Ssh edition 2
Cisco Exploration 2 In Persion-Muhibullah Aman
Cisco Exploration 2 In Persion-Muhibullah Aman
Similar a how config Naxsi
security book
security book
Yashar Esmaildokht
Keylogger
Keylogger
Yashar Esmaildokht
Network penetration
Network penetration
AhmadRahmanian1
Owasp top 10
Owasp top 10
pouriaAhmadi1
نرم افزار حضور غیاب تحت وب
نرم افزار حضور غیاب تحت وب
JahangostarParsRaden
Openstack Rally
Openstack Rally
Yashar Esmaildokht
OpenStack and its service
OpenStack and its service
Yashar Esmaildokht
ارائهٔ DLP
ارائهٔ DLP
جشنوارهٔ روز آزادی نرمافزار تهران
Proxmox
Proxmox
Yashar Esmaildokht
انواع حملات در شبکه های کامپیوتری.pdf
انواع حملات در شبکه های کامپیوتری.pdf
AliAzarifar
Forth exploration dari note-muhibullah aman اکسپلوریشن چهارم- شبکه های کمپیور...
Forth exploration dari note-muhibullah aman اکسپلوریشن چهارم- شبکه های کمپیور...
Muhibullah Aman
معرفي فايروال پايگاه داده
معرفي فايروال پايگاه داده
Hamid Torkashvand
گاهنامه چهارمحال و_بختیاری_دیماه
گاهنامه چهارمحال و_بختیاری_دیماه
tarasad
Web Application Security Test
Web Application Security Test
Saeid Sadeghi
how use iptables
how use iptables
Yashar Esmaildokht
راهکارهای طراحی نرم افزار ها محب الله امان
راهکارهای طراحی نرم افزار ها محب الله امان
Muhibullah Aman
APV Series 3
APV Series 3
Mohammad Najafikhah
اهمیت و ویژگی های Web Platform در حال و آینده
اهمیت و ویژگی های Web Platform در حال و آینده
Web Standards School
Log4j CRE Vulnerability
Log4j CRE Vulnerability
Mahzad Zahedi
معرفی نرمافزار آزاد و فعالیتهای گروه
معرفی نرمافزار آزاد و فعالیتهای گروه
S. M. Masoud Sadrnezhaad
Similar a how config Naxsi
(20)
security book
security book
Keylogger
Keylogger
Network penetration
Network penetration
Owasp top 10
Owasp top 10
نرم افزار حضور غیاب تحت وب
نرم افزار حضور غیاب تحت وب
Openstack Rally
Openstack Rally
OpenStack and its service
OpenStack and its service
ارائهٔ DLP
ارائهٔ DLP
Proxmox
Proxmox
انواع حملات در شبکه های کامپیوتری.pdf
انواع حملات در شبکه های کامپیوتری.pdf
Forth exploration dari note-muhibullah aman اکسپلوریشن چهارم- شبکه های کمپیور...
Forth exploration dari note-muhibullah aman اکسپلوریشن چهارم- شبکه های کمپیور...
معرفي فايروال پايگاه داده
معرفي فايروال پايگاه داده
گاهنامه چهارمحال و_بختیاری_دیماه
گاهنامه چهارمحال و_بختیاری_دیماه
Web Application Security Test
Web Application Security Test
how use iptables
how use iptables
راهکارهای طراحی نرم افزار ها محب الله امان
راهکارهای طراحی نرم افزار ها محب الله امان
APV Series 3
APV Series 3
اهمیت و ویژگی های Web Platform در حال و آینده
اهمیت و ویژگی های Web Platform در حال و آینده
Log4j CRE Vulnerability
Log4j CRE Vulnerability
معرفی نرمافزار آزاد و فعالیتهای گروه
معرفی نرمافزار آزاد و فعالیتهای گروه
Más de Yashar Esmaildokht
how install and config sdn in proxmox virtualization
how install and config sdn in proxmox virtualization
Yashar Esmaildokht
service registery and the service discovery
service registery and the service discovery
Yashar Esmaildokht
process
process
Yashar Esmaildokht
nbd and it's benefits
nbd and it's benefits
Yashar Esmaildokht
مرجع oracle mysql |mariadb
مرجع oracle mysql |mariadb
Yashar Esmaildokht
openstack designate
openstack designate
Yashar Esmaildokht
bcache and cachefs its benefits.
bcache and cachefs its benefits.
Yashar Esmaildokht
Systemd and its various uses and capabilities.
Systemd and its various uses and capabilities.
Yashar Esmaildokht
radosgw
radosgw
Yashar Esmaildokht
cachefs
cachefs
Yashar Esmaildokht
how add and remove Mgr in ceph cluster
how add and remove Mgr in ceph cluster
Yashar Esmaildokht
how add and delete new mon in ceph cluster
how add and delete new mon in ceph cluster
Yashar Esmaildokht
Nfs Acl
Nfs Acl
Yashar Esmaildokht
nbd
nbd
Yashar Esmaildokht
raid with megacli
raid with megacli
Yashar Esmaildokht
Load Balancing-as-a-Service (LBaaS) with octavia in openstack
Load Balancing-as-a-Service (LBaaS) with octavia in openstack
Yashar Esmaildokht
نحوه ایجاد snapshot و ایجاد point در سیستمهای گنو/لینوکسی برای ایجاد sys...
نحوه ایجاد snapshot و ایجاد point در سیستمهای گنو/لینوکسی برای ایجاد sys...
Yashar Esmaildokht
linux industry
linux industry
Yashar Esmaildokht
squid
squid
Yashar Esmaildokht
how upgrade ceph
how upgrade ceph
Yashar Esmaildokht
Más de Yashar Esmaildokht
(20)
how install and config sdn in proxmox virtualization
how install and config sdn in proxmox virtualization
service registery and the service discovery
service registery and the service discovery
process
process
nbd and it's benefits
nbd and it's benefits
مرجع oracle mysql |mariadb
مرجع oracle mysql |mariadb
openstack designate
openstack designate
bcache and cachefs its benefits.
bcache and cachefs its benefits.
Systemd and its various uses and capabilities.
Systemd and its various uses and capabilities.
radosgw
radosgw
cachefs
cachefs
how add and remove Mgr in ceph cluster
how add and remove Mgr in ceph cluster
how add and delete new mon in ceph cluster
how add and delete new mon in ceph cluster
Nfs Acl
Nfs Acl
nbd
nbd
raid with megacli
raid with megacli
Load Balancing-as-a-Service (LBaaS) with octavia in openstack
Load Balancing-as-a-Service (LBaaS) with octavia in openstack
نحوه ایجاد snapshot و ایجاد point در سیستمهای گنو/لینوکسی برای ایجاد sys...
نحوه ایجاد snapshot و ایجاد point در سیستمهای گنو/لینوکسی برای ایجاد sys...
linux industry
linux industry
squid
squid
how upgrade ceph
how upgrade ceph
how config Naxsi
1.
تعالی باسمه کانفیق و
مدیریت naxsi : نویسنده دخت اسمعیل یاشار مهندس :نسخه 0.1
2.
: نویسنده درباره رشته
آموخته دانش دخت اسمعیل یاشار بنده cyber security . هستم از بیش ۱۵ . دارم فعالیت سابقه سال مولف - مدرس - مشاور : داد شرح زیر های ساختار در میتوان را بنده های فعالیت جمله از gnu/linux system/network/security/cloud Engineer/administrator & oracle dba | Linux Trainer |devops . ): جدید دنیاهای کشف و تحقیق و مطالعه به مند عالقه . کنم اشاره استراتژی های بازی و اوتلو و شطرنج بازی به میتوانم من های سرگرمی از واقع در تبریز الگ گذاران بنیان از یکی و لینوکس/گنو و باز متن دنیای عاشق . هستم عاشق یک من : کنید پیدا و کنید دنبال را من میتوانید چطور خب Mob : 09141100257 Telegram ID Telegram channel Instagram Account Linkedin Account . بشنوم را انتقادتون یا پیشنهاد هرگونه میشم خوشحال همچنین : کنید پیدا را من از ی دیگر های کتاب میتونید چطور توی slideshare . کنید پیدا را کردم منتشر آزاد بصورت که دیگری های کتاب میتونید بگردید من اسم دنبال گوگل یا
3.
: مشاوره . بود
خواهم شما دسترس در من . فرمایید حاصل تماس . کردم اشاره قبل صفحه در که هایی کانال از میتوانید مشاوره جهت
4.
WAF مختلف های الیه
در هکرها حمالت چیست؟ OSI ،ها الیه این از یکی که گیرد یم صورت Application ،کاربرد الیه .دارد نام .افتد یم اتفاق الیه این در حمالت ترین پیچیده و است شبکه الیه هفتمین WAF مخفف Web Application Firewall که است فایروالی :شامل حمالت این .دهد یم نشان العمل عکس ها آن برابر در و کرده شناسایی را حمالت نوع این ( سایتی بین اسکریپت XSS ) صفحه یک لود هنگام را مضر کدهای هکرها .باشد یم کاربر سمت به کد تزریق با حمله نوعی سایتی بین نویسی اسکریپت ،موارد بیشتر در .هستند پذیر آسیب ها تاسکریپ این برابر در ویژه به تعاملی های ناپلیکیش و ها تسای بو .کنند یم وارد وب (سایتی بین درخواست جعل Cross-site request forgery ) تحت ،دارند کاربر ورود به نیاز خاص اقدام یک انجام برای که را وب کاربردی های هبرنام و ها تسای بو تمامی تواند یم سایبری حمالت این های درخواست کاربر مرورگر که شوند می باعث آنها .دهد قرار تأثیر HTTP .شود انجام نامطلوب اقدامات تا کند ارسال سایت وب به را Csrf کد تزریق SQL (SQL injection) تزریق حمله یک در SQL جوی و پرس فیلد یک از سایبری مجرمان ، SQL .کنند می استفاده اضافی نامطلوب اطالعات انتقال برای Buffer Overflow Malicious Robots Information leakage Malicious and Illegal Encoding Web Server and OS Attacks OS command injection
5.
RFI bug Session Hijacking DOS Protection
against common attacks Site Reconnaissance Parameter Tampering سازمان ،شد اشاره آنها به باال در که مواردی بر عالوه OWASP با که کند یم معرفی را اپلیکیشن وب امنیتی مشکالت سایر از لیستی WAF :داد کاهش را آنها توسط پذیری بآسی میزان توان یم • (شکسته هویت احراز Broken authentication ) • (حساس های هداد افشای Sensitive data exposure ) • (ال ام ایکس پذیری آسیب XML external entities (XXE) ) • (ناقص دسترسی کنترل Broken access control ) • (امنیتی اشتباه پیکربندی Security misconfiguration ) • deserialization (ناامن Insecure deserialization ) • (شده هشناخت های یپذیر آسیب با هایی همؤلف از استفاده Using components with known vulnerabilities ) • (ناکافی مانیتورینگ و اندازی الگ Insufficient logging & monitoring )
6.
WAF کند؟ یم کار چگونه WAF الیه
روی بر که است شده طراحی ای گونه به Application بر مبتنی خروجی/ورودی ترافیک و گیرد یم قرار HTTP/HTTPS را درخواست دو هر از مخربی ترافیک که زمان هر .کند یم بررسی GET و POST .دهد یم نشان العمل عکس سرعت به ،کند شناسایی را ،کنند یم عمل سرورها از ایمن دروازه یک عنوان به فقط که معمولی های فایروال برخالف WAF سرویس بین که است امنیتی اقدام یک ( گیرنده Client تهدیدات نوع این تشخیص که گیرند یم انجام خودکار صورت به معموال ،مخرب حمالت بیشترین .دارد قرار سرور وب و ) .نیست شناسایی قابل و شده طراحی انسان ترافیک از تقلید برای غالبا زیرا است؛ سخت بسیار WAF و درخواست هر از عمیقی بازرسی به بازرسی این .دهد یم انجام وب ترافیک متداول اشکاالت همه برای را پاسخ WAF و کند مسدود و شناسایی را تهدیدات تا کند یم کمک .کند جلوگیری سرور به ها آن رسیدن از انواع WAF : ( شبکه بر مبتنی اپلیکیشن وب فایروال Network-based web application firewall ) ( شبکه بر مبتنی وب تحت های فایروال NWAF در تاخیر ،محلی نصب دلیل به و هستند افزار سخت بر مبتنی سنتی طور به ) که معناست بدان این .دهند یم کاهش را خروجی/ورودی NWAF این اما .است آسان آن به دسترسی و شده نصب برنامه سرور نزدیک .طلبد یم را داخلی امنیتی های تخصص و شود خریداری افزاری سخت صورت به باید که چرا است؛ گران بسیار راهکاری ( میزبان بر مبتنی اپلیکیشن وب فایروال Host-based web application firewall ( میزبان بر مبتنی اپلیکیشن وب های فایروال ) HWAF از نوع این .دارند وجود سرور وب یک های ماژول عنوان به ) WAF با مقایسه در تر ارزان بسیار حل راه یک WAF بر مبتنی های امنیتی های تخصص .اند شده طراحی وب های برنامه برای که است افزار سخت . میطلبد را یک که هنگامی WAF افزایش را نگهداری های هزینه و سازی پیاده پیچیدگی ،محلی سرور منابع مصرف تواند یم ،شود ادغام سرور در .دهد
7.
( ابر بر
مبتنی اپلیکیشن وب فایروال Cloud-based web application firewall ) های حل راه .کنند یم عمل معکوس پروکسی عنوان به و هستند صرفه به مقرون ای گزینه ابر بر مبتنی وب تحت برنامه های فایروال نیاز تعمیر به که سیستمی از خواهید یم یا و کنید محدود عملکردی های قابلیت با را خود خواهید ینم که است مناسب زمانی ابر بر مبتنی .کنید نگهداری دارد سیاه لیست WAF سفید لیست ، WAF و WAF :ترکیبی WAF ترکیبی امنیتی های مدل و )مثبت (امنیت سفید لیست ،)منفی (امنیت سیاه لیست جمله از مختلفی های مدل تحت توانند یم ها .کنند کار :سیاه لیست حمالتی از مانع امنیت نوع این .کند یم کار خاص امضاهای یا شده شناخته حمالت برابر در وب برنامه از محافظت با سیاه لیست مدل های لیست مختلف انواع که است این مدل این اشکال .کنند یم سوءاستفاده ها پذیری آسیب یا شده شناخته موضوعات این از که شود یم حمالت باالی درصد دلیل به و شوند یم ایجاد لحظه در سیاه ZERO DAY .اند شده منسوخ :سفید لیست .باشد داشته جریان خاص معیارهای با مطابق ترافیکی دهد یم اجازه و کند یم استفاده منطقی گیری تصمیم و امضا از سفید لیست مدل طریق از ها درخواست است ممکن یعنی URL زمانی مدل این ضعف نقطه .شود مسدود ها سایت سایر طریق از و باشند مجاز خاص های .است نیاز اضافی نگهداری و تعمیر صورت این در کنید می معرفی را جدید برنامه ویژگی یک شما که است
8.
:ترکیبی مدل .کند یم استفاده
سفید لیست و سیاه لیست مدل دو هر از ،پیداست آن نام از که همانطور WAF :شبکه فایروال مقابل در .دارد وجود دو این بین آشکاری های تفاوت اما ،برسد نظر به کننده گیج است ممکن اپلیکیشن وب فایروال و شبکه فایروال بین انتخاب و محلی شبکه بین بان دروازه عنوان به یعنی شوند؛ یم استفاده محلی شبکه منابع به دسترسی کنترل برای شبکه فایروال های برنامه مانند .دارند را وب صفحات از بازدید نبودن یا بودن مجاز تعیین برای قوانینی شبکه های فایروال .کنند یم عمل اینترنت WAF حل راه این ، .شوند ارائه افزاری نرم یا افزاری سخت صورت به توانند یم امنیتی های ،گفتیم تر قبل که همانطور WAF صورت به مشکوک ترافیک .است شده طراحی وب برنامه یک از خروجی/ورودی ترافیک بر نظارت برای .شود یم فیلتر خیر یا است مخرب ترافیک این آیا اینکه اساس بر سپس و شود یم بررسی جداگانه WAF که هایی سازمان بین در اغلب ها .هستند محبوب دهند یم ارائه اینترنت بر مبتنی خدمات
9.
( وب برنامه
فایروال WAF کند؟ محافظت تواند نمی تهدیدها کدام برابر در ) متاسفانه WAF اپلیکیشن وب یا سایت بو یک از جامع امنیتی مفهوم یک از بخشی همیشه باید اما ،دهد نمی ارائه را جانبه همه حفاظت که دارد وجود هایی یپذیر بآسی .باشد WAF در .کند ینم محافظت شبکه در موجود بدافزارهای برابر در همچنین .است اثر بی آنها برابر در مناسب حفاظتی اقدامات باید نیز ها شرکت ،نتیجه in-house .دهند انجام را • مانندحمالت ،وب های هبرنام فایروال زدن دور های هرا از خوبی به هکرها HTTP request smuggling بنابراین .هستند آگاه .است نیاز مورد اینجا در نیز بیشتری حفاظت • مدیریت filter setting ،باشند شده تنظیم سخت خیلی یا ساده خیلی فیلترها اگر .دارد زیادی تخصص به نیاز WAF که آنطور .کند ینم کار شماست نیاز مورد • فایروال یک شاید WAF خوب developer فایروال اینکه فرض .آورند بعمل را الزم دقت امنیتی موارد در کمتر تا دهد فریب را ها .شود اپلیکیشن در ها یپذیر بآسی از بیشتری تعداد به منجر است ممکن حتی ،کند می فراهم را الزم حفاظت
10.
کانفیق ساختار naxsi : پرداخت
خواهیم آن های ساختار بررسی به ما که میباشد زیر صورت به کلی صورت به
11.
نکسی در ما ۲ حالت learning
mode و normal : داریم را هدایت آنها کردن مسدود جای به را ها تدرخواس ما که آنجایی از .شوند می هدایت خاصی مکان به مخرب های درخواست :عادی حالت .بازگردانیم ،کند یم ارائه را خطا پیام که را ثابت وب صفحه یک توانیم یم ،کنیم یم .شوند می پردازش برنامه توسط همچنان اما ،شوند می کپی خاص مکان یک در مخرب های درخواست :یادگیری حالت : نکته با که هنگامی LearningMode .شود می پیکربندی naxsi مسدود را اقدامی هیچ اما ،کند می ثبت را شده شناسایی حمالت . کند ینم .است مفید بسیار سفید لیست خودکار تولید برای آزمایشی/ای همرحل های طمحی یا جدید های هبرنام برای این Learning-Mode را شما یک تا سازد می قادر naxsi-setup برنامه برای و بگیرید یاد درخواستی هیچ کردن مسدود بدون شده شناسایی رویدادهای از و کنید اجرا را وب تحت های . کنید استفاده خود اسکریپت توسط را ایجاد برای الزم ها ماقدا و کنیم رصد را حمالت که میگذارد ما اختیار در را امکان این قابلیت این nxtools-ng . کنیم سازی هپیاد
12.
بررسی مورد را
ها رول از نمونه چند اینجا در . کنیم سازی سفارشی و ایجاد خود برنامه به نسبت هایی ساختار و ها رول که داریم نیاز ما . میدهیم قرار
13.
# WordPress naxsi
rules ### HEADERS BasicRule wl:1000,1001,1005,1007,1010,1011,1013,1100,1101,1200,1308,1309,1310,1311,1315 "mz:$HEADERS_VAR:cookie"; # xmlrpc BasicRule wl:1402 "mz:$HEADERS_VAR:content-type"; ### simple BODY (POST) BasicRule wl:1001,1015,1009,1311,1310,1101,1016 "mz:$URL:/|$BODY_VAR:customized"; # comments BasicRule wl:1000,1010,1011,1013,1015,1200,1310,1311 "mz:$BODY_VAR:post_title"; BasicRule wl:1000 "mz:$BODY_VAR:original_publish"; BasicRule wl:1000 "mz:$BODY_VAR:save"; BasicRule wl:1008,1010,1011,1013,1015 "mz:$BODY_VAR:sk2_my_js_payload"; BasicRule wl:1001,1009,1005,1016,1100,1101,1310 "mz:$BODY_VAR:url"; BasicRule wl:1009,1100,1101 "mz:$BODY_VAR:referredby"; BasicRule wl:1009,1100,1101 "mz:$BODY_VAR:_wp_original_http_referer"; BasicRule wl:1000,1001,1005,1008,1007,1009,1010,1011,1013,1015,1016,1100,1101,1200,1302,1303,1310,1311,1315,1400 "mz: $BODY_VAR:comment"; BasicRule wl:1100,1101 "mz:$BODY_VAR:redirect_to"; BasicRule wl:1000,1009,1315 "mz:$BODY_VAR:_wp_http_referer"; BasicRule wl:1000 "mz:$BODY_VAR:action"; BasicRule wl:1001,1013 "mz:$BODY_VAR:blogname"; BasicRule wl:1015,1013 "mz:$BODY_VAR:blogdescription"; BasicRule wl:1015 "mz:$BODY_VAR:date_format_custom"; BasicRule wl:1015 "mz:$BODY_VAR:date_format"; BasicRule wl:1015 "mz:$BODY_VAR:tax_input%5bpost_tag%5d"; BasicRule wl:1015 "mz:$BODY_VAR:tax_input[post_tag]"; BasicRule wl:1100,1101 "mz:$BODY_VAR:siteurl"; BasicRule wl:1100,1101 "mz:$BODY_VAR:home"; BasicRule wl:1000,1015 "mz:$BODY_VAR:submit"; # news content matches pretty much everything BasicRule wl:0 "mz:$BODY_VAR:content"; BasicRule wl:1000 "mz:$BODY_VAR:delete_option"; BasicRule wl:1000 "mz:$BODY_VAR:prowl-msg-message"; BasicRule wl:1100,1101 "mz:$BODY_VAR:_url"; BasicRule wl:1001,1009 "mz:$BODY_VAR:c2c_text_replace%5btext_to_replace%5d"; BasicRule wl:1200 "mz:$BODY_VAR:ppn_post_note"; BasicRule wl:1100,1101 "mz:$BODY_VAR:author"; BasicRule wl:1001,1015 "mz:$BODY_VAR:excerpt"; BasicRule wl:1015 "mz:$BODY_VAR:catslist"; BasicRule wl:1005,1008,1009,1010,1011,1015,1315 "mz:$BODY_VAR:cookie"; BasicRule wl:1101 "mz:$BODY_VAR:googleplus"; BasicRule wl:1007 "mz:$BODY_VAR:name"; BasicRule wl:1007 "mz:$BODY_VAR:action"; BasicRule wl:1100,1101 "mz:$BODY_VAR:attachment%5burl%5d"; BasicRule wl:1100,1101 "mz:$BODY_VAR:attachment_url"; BasicRule wl:1001,1009,1100,1101,1302,1303,1310,1311 "mz:$BODY_VAR:html"; BasicRule wl:1015 "mz:$BODY_VAR:title"; BasicRule wl:1001,1009,1015 "mz:$BODY_VAR:recaptcha_challenge_field"; BasicRule wl:1011 "mz:$BODY_VAR:pwd"; BasicRule wl:1000 "mz:$BODY_VAR:excerpt"; ### BODY|NAME BasicRule wl:1000 "mz:$BODY_VAR:delete_option|NAME"; BasicRule wl:1000 "mz:$BODY_VAR:from|NAME"; ### Simple ARGS (GET) # WP login screen BasicRule wl:1100,1101 "mz:$ARGS_VAR:redirect_to"; BasicRule wl:1000,1009 "mz:$ARGS_VAR:_wp_http_referer"; BasicRule wl:1000 "mz:$ARGS_VAR:wp_http_referer"; BasicRule wl:1000 "mz:$ARGS_VAR:action"; BasicRule wl:1000 "mz:$ARGS_VAR:action2"; # load and load[] GET variable BasicRule wl:1000,1015 "mz:$ARGS_VAR:load"; BasicRule wl:1000,1015 "mz:$ARGS_VAR:load[]"; BasicRule wl:1015 "mz:$ARGS_VAR:q"; BasicRule wl:1000,1015 "mz:$ARGS_VAR:load%5b%5d";
14.
### URL BasicRule wl:1000
"mz:URL|$URL:/wp-admin/update-core.php"; BasicRule wl:1000 "mz:URL|$URL:/wp-admin/update.php"; BasicRule wl:1000 "mz:$URL:/wp-includes/js/imgareaselect/imgareaselect.css|URL"; BasicRule wl:1002 "mz:$URL_X:/wp-content/uploads/[0-9]{4}/[0-9]{2}/[^/]+.jpg$|URL"; # URL|ARGS BasicRule wl:1015 "mz:$URL:/wp-admin/load-styles.php|$ARGS_VAR:dashicons,admin-bar,wp-admin,buttons,wp-auth-check"; BasicRule wl:1000 "mz:$URL:/wp-admin/about.php|$ARGS_VAR:updated"; BasicRule wl:1009 "mz:$URL:/wp-admin/customize.php|$ARGS_VAR:return"; # URL|BODY BasicRule wl:1009,1100,1101 "mz:$URL:/wp-admin/post.php|$BODY_VAR:_wp_http_referer"; BasicRule wl:1016 "mz:$URL:/wp-admin/post.php|$BODY_VAR:metakeyselect"; BasicRule wl:11 "mz:$URL:/xmlrpc.php|BODY"; BasicRule wl:11,16 "mz:$URL:/wp-cron.php|BODY"; BasicRule wl:2 "mz:$URL:/wp-admin/async-upload.php|BODY"; # URL|BODY|NAME BasicRule wl:1100,1101 "mz:$URL:/wp-admin/post.php|$BODY_VAR:_wp_original_http_referer|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/post.php|$BODY_VAR:metakeyselect|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/user-edit.php|$BODY_VAR:from|NAME"; BasicRule wl:1100,1101 "mz:$URL:/wp-admin/admin-ajax.php|$BODY_VAR:attachment%5burl%5d|NAME"; BasicRule wl:1100,1101 "mz:$URL:/wp-admin/post.php|$BODY_VAR:attachment_url|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/plugins.php|$BODY_VAR:verify-delete|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/post.php|$BODY_VAR:post_category[]|NAME"; BasicRule wl:1311 "mz:$URL:/wp-admin/post.php|$BODY_VAR:post_category|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/post.php|$BODY_VAR:tax_input[post_tag]|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/post.php|$BODY_VAR:newtag[post_tag]|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/users.php|$BODY_VAR:users[]|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/update-core.php|$BODY_VAR:Update%2BTranslations|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/update-core.php|$BODY_VAR:Update%2BNow|NAME"; # URL|ARGS|NAME BasicRule wl:1310,1311 "mz:$URL:/wp-admin/load-scripts.php|$ARGS_VAR:load[]|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/users.php|$ARGS_VAR:delete_count|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/users.php|$ARGS_VAR:update|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/customize.php|$ARGS_VAR:autofocus[control]|NAME"; # plain WP site BasicRule wl:1000 "mz:URL|$URL:/wp-admin/update-core.php"; BasicRule wl:1000 "mz:URL|$URL:/wp-admin/update.php"; # URL|BODY BasicRule wl:1009,1100,1101 "mz:$URL:/wp-admin/post.php|$BODY_VAR:_wp_http_referer"; BasicRule wl:1016 "mz:$URL:/wp-admin/post.php|$BODY_VAR:metakeyselect"; BasicRule wl:11 "mz:$URL:/xmlrpc.php|BODY"; BasicRule wl:11,16 "mz:$URL:/wp-cron.php|BODY"; # URL|BODY|NAME BasicRule wl:1100,1101 "mz:$URL:/wp-admin/post.php|$BODY_VAR:_wp_original_http_referer|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/post.php|$BODY_VAR:metakeyselect|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/user-edit.php|$BODY_VAR:from|NAME"; BasicRule wl:1100,1101 "mz:$URL:/wp-admin/admin-ajax.php|$BODY_VAR:attachment%5burl%5d|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/admin-ajax.php|$BODY_VAR:data[wp-auth-check]|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/admin-ajax.php|$BODY_VAR:data[wp-check-locked-posts][]|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/admin-ajax.php|$BODY_VAR:data[wp-refresh-post-lock][post_id]|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/admin-ajax.php|$BODY_VAR:data[wp-refresh-post-lock][lock]|NAME"; BasicRule wl:1310,1311 "mz:$URL:/wp-admin/update-core.php|$BODY_VAR:checked[]|NAME"; # URL|ARGS|NAME BasicRule wl:1310,1311 "mz:$URL:/wp-admin/load-scripts.php|$ARGS_VAR:load[]|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/users.php|$ARGS_VAR:delete_count|NAME"; BasicRule wl:1000 "mz:$URL:/wp-admin/users.php|$ARGS_VAR:update|NAME"; ### Plugins #WP Minify BasicRule wl:1015 "mz:$URL:/wp-content/plugins/bwp-minify/min/|$ARGS_VAR:f"; #Jetpack Infinite Scroll BasicRule wl:1310,1311 "mz:$BODY_VAR:scripts[]|NAME"; BasicRule wl:1310,1311 "mz:$BODY_VAR:styles[]|NAME"; BasicRule wl:1310,1311 "mz:$BODY_VAR_X:^query_args[.*]|NAME"; BasicRule wl:1000 "mz:$BODY_VAR:query_args[update_post_term_cache]|NAME"; BasicRule wl:1000 "mz:$BODY_VAR:query_args[update_post_meta_cache]|NAME"; #UpdraftPlus
15.
BasicRule wl:1000 "mz:$URL:/wp-content/plugins/updraftplus/includes/select2/select2.min.css|URL"; BasicRule
wl:1000 "mz:$URL:/wp-content/plugins/updraftplus/includes/select2/select2.min.js|URL"; #WP plugin updates BasicRule wl:1315 "mz:$ARGS_VAR:query|$URL:/wp-json/jetpack/v4/jitm"; #Jetpack Google Fonts BasicRule wl:1001 "mz:$URL_X:^/wp-content/plugins/jetpack/css/.*|URL"; #WooCommerce BasicRule wl:1000 "mz:$URL:/wp-content/plugins/woocommerce/assets/js/select2/select2.full.min.js|URL"; BasicRule wl:1000 "mz:$URL:/wp-content/plugins/woocommerce/assets/js/selectWoo/selectWoo.full.min.js|URL"; BasicRule wl:1000 "mz:$URL:/wp-content/plugins/woocommerce/assets/js/stupidtable/stupidtable.min.js|URL"; #WPML BasicRule wl:1000 "mz:$URL:/wp-content/plugins/sitepress-multilingual-cms/lib/select2/select2.min.js|URL"; #Yoast SEO BasicRule wl:1000 "mz:$URL:/wp-content/plugins/wordpress-seo/js/dist/select2/select2.full.min.js|URL"; BasicRule wl:1000 "mz:$URL:/wp-content/plugins/wordpress-seo/css/dist/select2/select2.min.css|URL"; : ها اسکن از بلوک و جلوگیری برای رول نمونه برای MainRule "str:havij" "msg:Havij-SQL_scanner" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000312 ; MainRule "str:http://http://" "msg:Abnormal double http:// in HTTP header," "mz:HEADERS" "s:$UWA:8" id:42000310 ; # http://pastebin.com/NP64hTQr# http://blog.initiative-s.de/2013/09/kompromitierte-wordpress-blogs-werden-fuer- ddos-attacken-genutzt/ # If using wp then turn off this rule MainRule "str:wordpress/" "msg:Wordpress-UA, probably Botnet-Attack" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000317 ; # https://github.com/robertdavidgraham/masscan MainRule "str:masscan/" "msg:MASSCAN - UA Detected" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000326 ; # sensepost Wiko/Nikto-Clone filescan MainRule "str:sensepostnotthere" "msg:SensePost Wikto-Scanner" "mz:URL" "s:$ATTACK:8" id:42000452 ; # block acunetix scan MainRule "str:99999999999999999999999" "msg:acunetix scan nginx buffer size " "mz:$HEADERS_VAR:Content-length" "s:$UWA:8" id:42001326 ; MainRule "str:acunetix" "msg:acunetix scan website " "mz:URL|BODY|$HEADERS_VAR:Accept|$HEADERS_VAR:User- Agent" "s:$UWA:8" id:42001327 ; MainRule "str:acunetix/wvs" "msg:acunetix scan website " "mz:$HEADERS_VAR:Accept" "s:$UWA:8" id:42001328 ; MainRule "str:webmole" "msg:Scanner webmole" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000159 ; MainRule "str:nlpproject.info" "msg:Some Scanner nlpproject.info" "mz:$HEADERS_VAR:User-Agent" "s:$ATTACK:8" id:42000454 ; MainRule "str:cloudmapping" "msg:Cloud-Mapping-Scanner" "mz:$HEADERS_VAR:User-Agent" "s:$ATTACK:8" id:42000453 ; MainRule "str:sucuri" "msg:Sucuri Vulnerability Scaner" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000364 ; MainRule "str:brutus/" "msg:Brutus - Scanner" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000258 ; MainRule "str:/phpmyadmin" "msg:PHPMyAdmin - Scanner (2) " "mz:URL" "s:$UWA:8" id:42000244 ; MainRule "str:/pma" "msg:PHPMyAdmin - Scanner" "mz:URL" "s:$UWA:8" id:42000243 ; MainRule "str:/phppgadmin " "msg:PHPPgAdmin - Scanner" "mz:URL" "s:$UWA:8" id:42000242 ; MainRule "str:/mysqldumper " "msg:MysqlDumper - Scanner " "mz:URL" "s:$UWA:8" id:42000241 ; MainRule "str:apachebench" "msg:AB - ApacheBenchmark-Tool detected" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:4" id:42000240 ; MainRule "str:/netsparker" "msg:Netsparker-Scan in Progress" "mz:URL" "s:$UWA:8" id:42000202 ; MainRule "str:sqlmap" "msg:Scanner sqlmap sql injection" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000203 ;
16.
MainRule "str:mysqloit" "msg:Scanner
Mysqloit - Mysql Injection Takover Tool" "mz:$HEADERS_VAR:User-Agent" "s: $UWA:8" id:42000200 ; MainRule "str:network-services-auditor" "msg:Scanner IBM NSA User Agent" "mz:$HEADERS_VAR:User-Agent" "s: $UWA:8" id:42000198 ; MainRule "str:dav.pm" "msg:Scanner DavTest WebDav Vulnerability Scanner" "mz:$HEADERS_VAR:User-Agent" "s: $UWA:8" id:42000194 ; MainRule "str:w3af" "msg:Scanner w3af" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000178 ; MainRule "str:http_get_vars" "msg:PHP-Injetion on UA" "mz:$HEADERS_VAR:User-Agent" "s:$ATTACK:8" id:42000174 ; MainRule "str:whisker" "msg:Scanner whisker" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000171 ; MainRule "str:whatweb" "msg:Scanner whatweb" "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000151 ; MainRule "str:dirbuster" "msg:DirBuster Web App Scan in Progress" "mz:$HEADERS_VAR:User-Agent" "s: $ATTACK:8,$UWA:8" id:42000036 ; MainRule "str:gzinflate(" "msg:gzinflate in URI" "mz:URL|BODY|ARGS" "s:$UWA:8" id:42000259 ; MainRule "str:/bin/sh" "msg:/bin/sh in URI" "mz:URL|BODY|ARGS|$HEADERS_VAR:User-Agent|$HEADERS_VAR:Cookie" "s:$UWA:8" id:42000257 ; MainRule "str:.conf" "msg:possible CONF-File - Access" "mz:URL" "s:$UWA:8" id:42000252 ; MainRule "str:.ini" "msg:possible INI - File - Access" "mz:URL" "s:$UWA:8" id:42000254 ; MainRule "str:/sftp-config.json" "msg:SFTP-config-file access" "mz:URL|BODY" "s:$ATTACK:8,$UWA:8" id:42000084 ; # https://www.bleepingcomputer.com/news/security/phps-git-server-hacked-to-add-backdoors-to-php-source-code/ # https://github.com/php/php-src/commit/c730aa26bd52829a49f2ad284b181b7e82a68d7d#diff- a35f2ee9e1d2d3983a3270ee10ec70bf86349c53febdeabdf104f88cb2167961R370 # prevent php supply chain attack MainRule "str:zerodium" "msg:php supply chain attack " "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000085 ; # prevent log4j attack # info https://www.govcert.ch/blog/zero-day-exploit-targeting-popular-java-library-log4j/ # payload check https://github.com/johto89/Some-collections-for-Security-Researcher/blob/master/log4j-all-in-one.md MainRule "str:${" "msg:log4j attack detection " "mz:$HEADERS_VAR:User-Agent" "s:$UWA:8" id:42000086;
17.
: میباشد زیر
صورت هابه رول ساختار اما و ' رشته حاوی درخواستی هر یعنی .هستند حمالت شناسایی برای درخواست از هایی شبخ در الگوها جستجوی برای قوانین zz هر در را ' آرگومان GET یا POST : میباشد MainRule id:424242 "str:zz" "mz:ARGS|BODY" "s:DROP"; MainRule "str:/phpmyadmin" "msg:PHPMyAdmin - Scanner (2) " "mz:URL" "s:$UWA:8" id:42000244 ; مثال برای . شود استفاده هم هم در بصورت ساختار میتواند :نکته id . باشد آخر یا اول در ( مکان سطح در توانند می قوانین BasicRule سطح در یا ) http (MainRule) قوانین .باشند داشته وجود مثل طرح باال . هستند ID (id:...) id:num در که است قانون فرد همنحصرب عددی شناسه NAXSI_FMT از کمتر های شناسه .شود یم استفاده سفید های تلیس یا 1000 داخلی قوانین برای naxsi . میباشد : میباشند زیر الگوهای براساس و
18.
الگو بصورت regex : است سازی هپیاد
قابل • rx:foo|bar : will match foo or bar • str:foo|bar : will match foo|bar • d:libinj_xss : will match if libinjection says it's XSS (>= 0.55rc2) • d:libinj_sql : will match if libinjection says it's SQLi (>= 0.55rc2) الگو زیرا ،باشند کوچک حروف با باید ها هرشت همه .است سریعتر بسیار زیرا ،شود می توصیه امکان صورت در ساده رشته تطابق از استفاده های naxsi .هستند حساس کوچک و بزرگ حروف به Score (s:...) s :کنید ایجاد »شده یگذار م«نا های هشمارند توانید یم .است امتیاز بخش s:$FOOBAR:4 $ مقدار FOOBAR را شمارنده 4 افزایش :دهد افزایش را امتیاز چندین تواند یم قانون یک .دهد یم s:$FOO:4،$BAR:8 $ هم FOO را 4 .دهد یم افزایش $ هم و BAR توسط 8 . مانند کند مشخص را عمل یک ًامستقیم تواند می همچنین قانون یک BLOCK یا )کند می مسدود یادگیری غیر حالت در را (درخواست DROP توسط ًابعد شده نامگذاری امتیازهای )کند می مسدود یادگیری حالت در حتی را (درخواست CheckRules .شوند می مدیریت
19.
واما CheckRules : CheckRules به naxsi ( اقدامی ،درخواست
با مرتبط خاص امتیاز یک اساس بر تا دهد می دستور LOG، BLOCK، DROP، ALLOW ) .شود می تعیین قانون چند یا یک توسط ًالمعمو امتیاز این .دهد انجام یک CheckRule معمولی صورت این به :است CheckRule "$SQL >= 8" BLOCK; $ اگر SQL یا برابر بزرگتر ' از 8 ' باشد پرچم ، BLOCK اعمال درخواست روی را میکند که شود می مسدود صورتی در فقط درخواست . .نباشد یادگیری حالت در مکان استفاده موارد سایر CheckRule مجازی وصله ترکیبی پیکربندی یک داشتن با .شود استفاده سیاه و سفید های لیست ترکیب برای تواند می همچنین )(های و naxsi_core.rules : باشد صورت این به ممکن ،
20.
CheckRule "$UWA >=
4" DROP; CheckRule "$XSS >= 8" BLOCK; $ امتیاز با درخواستی هر - یادگیری حالت در حتی - بنابراین UWA با برابر 4 های تدرخواس که حالی در ،کند یم مسدود را ها تدرخواس امتیاز دارای XSS از باالتر (حتی $ 8 در فقط ) location .شوند یم مسدود یادگیری در نه و )(ها MatchZone (mz:...) : شد آور یاد باید بحث شروع از قبل Match Zones mz باشد مجاز باید که جایی یا )(قوانین الگو یک جستجوی محل تعیین برای .دارد وجود سفید لیست و قوانین در در :کنند یم عمل متفاوت کمی سفید های تلیس و قوانین در مطابق مناطق که باشید داشته توجه ًالطف .شود می استفاده )سفید (لیست شرط هر ،قوانین OR در مثال عنوان (به است BODY در یا HEADERS سفید لیست در که حالی در ،) AND آدرس (یعنی است / باید اینترنتی foo در باید استثنا و باشد ARGS )دهد رخ جهانی مناطق 4 :دارد وجود اصلی منطقه URL، ARGS، HEADERS، BODY و ، matchzone .باشند کننده محدود بیش و کم توانند می
21.
mz :باشد گسترده تواند
می ARGS کنید دریافت را ارگ : های سرصفحه :هدرها HTTP BODY : POST args (و RAW_BODY ) URL خود : URL )»«؟ از (قبل :تر دقیق یا $ ARGS_VAR:string آرگومان نام با : GET $ HEADERS_VAR:string نام به : HTTP header $ BODY_VAR:string آرگومان نام با : POST :)باشد متفاوت تواند می متغیرها نام (یعنی است نیاز مورد منظم عبارات ،اوقات گاهی $ HEADERS_VAR_X:regex: regex عنوان با مطابق HTTP =>( شده گذاری منا 0.52 ) $ ARGS_VAR_X:regex: regex آرگومان یک نام با مطابق GET (>= 0.52) $ BODY_VAR_X:regex: regex آرگومان نام با مطابق POST (>= 0.52) یک Matchzone یک به توان می را URL )نیست منطقه یک خود خودی به (اما :کرد محدود خاص $ URL:string است اینترنتی آدرس این به محدود : $ URL_X:regex به محدود : Regex با مطابق URL (>= 0.52) که ای مسابقه منطقه BODY،HEADERS،ARGS | تواند می ،دهد می قرار هدف را NAME یک محتوای ،کند اضافه هدف تعیین برای را .است آن نام خود بلکه ،نیست متغیر نام شکل به ] [ سفید لیست مثال عنوان (به است مفید خاص های زمینه در var در url /foo ) BasicRule id:1310,1311 "mz:$URL:/foo|BODY|NAME ;" :مطابقت مناطق ،تر خاص FILE_EXT یک (در فایل نام : POST )فایل یک حاوی قسمتی چند RAW_BODY از نشده تجزیه و خام نمایش یک : BODY درخواست یک http (>= 0.55rc0)
22.
(مسابقه منطقه Matchzone ) Matchzone یک با
ناحیه چند یا یک از ترکیبی URL .است اختیاری یک توان می و است بینی پیش قابل اینترنتی آدرس و متغیر نام ،ها موقعیت بیشتر در mz :کرد ایجاد ثابت
23.
که زمانی regex : هست
نیاز توانید نمی شما :توجه regex ($URL_X) $( استاتیک و ARGS_VAR .کنید ترکیب قانون یک در را ) $ URL $ و URL_X یک محدوده کردن محدود برای فقط matchzone .کنند ینم مشخص را منطقه و شوند یم استفاده دهد می قرار سفید لیست در را مسابقه مناطق :شوند برآورده باید شرایط همه ،سفید لیست زمینه در BasicRule wl:X "mz:$ARGS_VAR:foo|$URL:/bar";
24.
id X متغیر سفید
لیست در GET 'foo در ' URL '/bar دارد قرار ' مسابقه مناطق قوانین $ ،قوانین زمینه در URL $ یا URL_X عنوان به دیگری شرایط هر .شود برآورده باید وجود صورت در OR تلقی )سفید لیست خالف (بر .شود می BasicRule str:Y id:X "mz:ARGS|BODY ' الگوی ;" Y استدالل هر با ' GET و POST داشت خواهد مطابقت BasicRule str:Y id:X "mz:ARGS|BODY|$URL:/foo که زمانی تا ;" URL /foo ' الگوی ،باشد Y استدالل هر با ' GET و POST دارد مطابقت Regex رشته مقابل در Matchzones از متشکل Matchzones _*$( ایستا VAR: $URL در ): hashtable .است بهینه بنابراین و شود می ذخیره ها مسابقه مناطق Regex ($*_VAR_X: $URL_X:) اختالط امکان .دارند نیاز بیشتری اجرا زمان پردازش به static و regex matchzone :ندارد وجود سفید لیست/قانون یک در mz:$ARGS_VAR_X:^foo$|$URL:/x یا mz:$URL_X:/foo|$ARGS_VAR:x . است اشتباه : ادامه در mz .شود می بازرسی قانون توسط درخواست از قسمت کدام کند می تعیین که است تطبیق منطقه $ جز به مطابق مناطق همه ،قوانین در URL شرایط عنوان به :* OR :شوند می تلقی MainRule id:4242 str:z "mz:$ARGS_VAR:X|BODY"; ' الگوی z در ' GET var 'X متغیرهای همه و ' BODY .شود می جستجو
25.
MainRule id:4242 str:z
"mz:$ARGS_VAR:X|BODY|$URL_X:^/foo"; ' الگوی z در ' GET var 'X متغیرهای همه و ' BODY که زمانی تا URL / با foo .شود می جستجو شود شروع ورژن از naxsi 0.55rc0 مطابقت منطقه از توانید یم ،ناشناخته محتوای انواع برای ، RAW_BODY قوانین .کنید استفاده RAW_BODY :است صورت این به MainRule id:4241 s:DROP str:RANDOMTHINGS mz:RAW_BODY; منطقه در قوانین RAW_BODY :که شوند می اعمال زمانی فقط که معنی این (به است ناشناخته محتوا نوع naxsi )کند تجزیه درستی به را درخواست چگونه داند نمی id 11 .است گرفته قرار سفید لیست در )است »ناشناخته محتوای «نوع برای داخلی مسدودسازی قانون (که ( کامل متن ،سپس url ' با که تهی های بایت با و شده رمزگشایی 0 کامل بدنه .شود می منتقل قوانین مجموعه این به )اند شده جایگزین ' .شود می داده مطابقت ای رشته های مطابقت یا ها رجکس با دوباره قوانین برای سفید لیست RAW_BODY :مانند ،شود می نوشته معمولی بدن قوانین مانند درست واقع در BasicRule wl:4241 "mz:$URL:/rata|BODY"; Human readable message (msg:...) msg .شود می استفاده انسان برای فهم قابل متنی داشتن و تحلیل و تجزیه برای بیشتر این .کند می توصیف را الگو که است ای رشته )(منفی منفی کلیدی کلمه
26.
Negative Keyword (negative) .کرد
استفاده منفی قانون یک ایجاد برای آن از توان می که است کلیدی کلمه منفی MainRule negative "rx:multipart/form-data|application/x-www-form- urlencoded" "msg:Content is neither mulipart/x-www-form.." "mz: $HEADERS_VAR:Content-type" "s:$EVADE:4" id:1402; Whitelists به دادن دستور منظور به سفید های تفهرس naxsi مثبت از جلوگیری برای خاص )(های زمینه در خاص الگوهای گرفتن نادیده برای آدرس در عبارت نام با فیلد در کاراکتر به دادن اجازه یعنی .است کاذب /search : BasicRule wl:1013 "mz:$ARGS_VAR:term|$URL:/search"; ( مکان سطح در تواند می سفید لیست BasicRule سطح در یا ) http (MainRule) زیر نحو دارای سفید لیست .باشد داشته وجود :است قسمت جز به ،شود نقل قول نقل دو با باید چیز همه wl .
27.
Whitelisted ID (wl:...) wl:0
: Whitelist all rules • wl:42 : Whitelist rule #42 • wl:42,41,43 : Whitelist rules 42, 41 and 43 • wl:-42 : Whitelist all user rules (>= 1000), excepting rule 42
28.
اندازی راه و
ساختار ui به مرتبط naxsi : nxapi/nxtool انجام را زیر موارد که است جدیدی یادگیری ابزار مید :هد رویدادهای کردن وارد :رویدادها کردن وارد naxsi داده پایگاه به elasticsearch کنید ایجاد صرف آماری های جنبه جای به الگوها از را سفید های لیست :سفید لیست تولید فرآیند از را آنها تا دهید اجازه داده پایگاه در رویدادها گذاری برچسب به :رویدادها مدیریت wl gen کنید حذف اطالعات نمایش : گزارش naxsi از json : میکند استفاده کار این برای { # elasticsearch setup, must point to the right instance. "elastic" : { "host" : "127.0.0.1:9200", "index" : "nxapi", "doctype" : "events", "default_ttl" : "7200", "max_size" : "1000" }, # filter used for any issued requests, you shouldn't modify it yet "global_filters" : { "whitelisted" : "false" }, # global warning and global success rules, used to distinguish good and 'bad' whitelists "global_warning_rules" : { "rule_uri" : [ ">", "5" ], "rule_var_name" : [ ">", "5" ], "rule_ip" : ["<=", 10 ], "global_rule_ip_ratio" : ["<", 5] }, "global_success_rules" : { "global_rule_ip_ratio" : [">=", 30], "rule_ip" : [">=", 10] }, # path to naxsi core rules, path to template files, # path to geoloc database. "naxsi" : { "rules_path" : "/etc/nginx/naxsi_core.rules", "template_path" : "tpl/", "geoipdb_path" : "nx_datas/country2coords.txt" }, # controls default colors and verbosity behavior "output" : { "colors" : "true", "verbosity" : "5" } }
29.
: سازی هپیاد جهت
نیاز پیش زیر لینک از االستیکس بسته دانلود https://www.elastic.co/downloads/elasticsearch . است مفروض زیر ها ماقدا دانلود از بعد • Extract the archive • Start ElasticSearch by executing bin/elasticsearch in the extracted folder • Check whether ElasticSearch is running correctly: curl -XGET http://localhost:9200/ • Add a nxapi index with the following command: curl -XPUT 'http://localhost:9200/nxapi/' بسته خود میتوان : نکته ElasticSearch . نمود نصب را از اطالعات گرفتن جهت db : داریم ./nxtool.py -x --colors -c nxapi.json ساخت برای whitelist : داریم ./nxtool.py -c nxapi.json -x --colors # Whitelist(ing) ratio : # false 79.96 % (total:196902/246244) # true 20.04 % (total:49342/246244) # Top servers : # www.x1.fr 21.93 % (total:43181/196915) # www.x2.fr 15.21 % (total:29945/196915) ... # Top URI(s) : # /foo/bar/test 8.55 % (total:16831/196915)
30.
# /user/register 5.62
% (total:11060/196915) # /index.php/ 4.26 % (total:8385/196915) ... # Top Zone(s) : # BODY 41.29 % (total:81309/196924) # HEADERS 23.2 % (total:45677/196924) # BODY|NAME 16.88 % (total:33243/196924) # ARGS 12.47 % (total:24566/196924) # URL 5.56 % (total:10947/196924) # ARGS|NAME 0.4 % (total:787/196924) # FILE_EXT 0.2 % (total:395/196924) # Top Peer(s) : # ... # nx_util.py -l /var/log/nginx/*error.log -H /var/www/nxutil.html
31.
نام به دیگری
پروژه spike های پروژه از یکی که . میباشد موجود نیز وب تحت ها روال ایجاد منظور به nbs-system . میباشد های روال با مرتبط های ساختار و شروط ایجاد امکان ما پروژه این در naxsi . هستیم دارا نیز را . نکنید استفاده پروژه این از عملیات سیستم در شود یم پیشنهاد : نکته زیادی مخاطرات شامل و .شود قوانین حذف یا دیدگی بآسی به منجر تواند یم عموم به !اسپایک افشای .است آلفا نسخه هنوز اسپایک . باشد میتواند
32.
های یویژگ از یکی naxsi .
میباشد ها ساختار سایر با اینتگرید قابلیت Naxsi با میتواند apparmor, faile2ban ها ساختار سایر و . شود اینتگرید با را آن اینتگرید نحوه ما جا نای در faile2ban : میدهیم قرار بررسی مورد در را زیر های کانفیق faile2ban . نمایید وارد # jail.conf [naxsi] enabled = true port = http,https filter = naxsi logpath = /var/log/nginx/error.log maxretry = 3 banaction = iptables-multiport-log action = %(action_mwl)s # filter.d/naxsi.conf [INCLUDES] before = common.conf [Definition] failregex = NAXSI_FMT: ip=<HOST> ignoreregex = learning=1