सवाल HTTP w00tw00t हमलों से निपटना


मेरे पास अपाचे के साथ एक सर्वर है और मैंने हाल ही में mod_security2 स्थापित किया है क्योंकि मुझे इस पर बहुत अधिक हमला किया गया है:

मेरा अपाचे संस्करण apache v2.2.3 है और मैं mod_security2.c का उपयोग करता हूं

यह त्रुटि लॉग से प्रविष्टियां थीं:

[Wed Mar 24 02:35:41 2010] [error] 
[client 88.191.109.38] client sent HTTP/1.1 request without hostname 
(see RFC2616 section 14.23): /w00tw00t.at.ISC.SANS.DFind:)

[Wed Mar 24 02:47:31 2010] [error] 
[client 202.75.211.90] client sent HTTP/1.1 request without hostname 
(see RFC2616 section 14.23): /w00tw00t.at.ISC.SANS.DFind:)

[Wed Mar 24 02:47:49 2010] [error]
[client 95.228.153.177] client sent HTTP/1.1 request without hostname
(see RFC2616 section 14.23): /w00tw00t.at.ISC.SANS.DFind:)

[Wed Mar 24 02:48:03 2010] [error] 
[client 88.191.109.38] client sent HTTP/1.1 request without hostname
(see RFC2616 section 14.23): /w00tw00t.at.ISC.SANS.DFind:)

Access_log से त्रुटियां यहां दी गई हैं:

202.75.211.90 - - 
[29/Mar/2010:10:43:15 +0200] 
"GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 392 "-" "-"
211.155.228.169 - - 
[29/Mar/2010:11:40:41 +0200] 
"GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 392 "-" "-"
211.155.228.169 - - 
[29/Mar/2010:12:37:19 +0200] 
"GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 392 "-" "-" 

मैंने mod_security2 को इस तरह कॉन्फ़िगर करने का प्रयास किया:

SecFilterSelective REQUEST_URI "w00tw00t\.at\.ISC\.SANS\.DFind"
SecFilterSelective REQUEST_URI "\w00tw00t\.at\.ISC\.SANS"
SecFilterSelective REQUEST_URI "w00tw00t\.at\.ISC\.SANS"
SecFilterSelective REQUEST_URI "w00tw00t\.at\.ISC\.SANS\.DFind:"
SecFilterSelective REQUEST_URI "w00tw00t\.at\.ISC\.SANS\.DFind:\)"

Mod_security2 में बात यह है कि SecFilterSlective का उपयोग नहीं किया जा सकता है, यह मुझे त्रुटियां देता है। इसके बजाय मैं इस तरह के नियम का उपयोग करता हूं:

SecRule REQUEST_URI "w00tw00t\.at\.ISC\.SANS\.DFind"
SecRule REQUEST_URI "\w00tw00t\.at\.ISC\.SANS"
SecRule REQUEST_URI "w00tw00t\.at\.ISC\.SANS"
SecRule REQUEST_URI "w00tw00t\.at\.ISC\.SANS\.DFind:"
SecRule REQUEST_URI "w00tw00t\.at\.ISC\.SANS\.DFind:\)"

यहां तक ​​कि यह काम नहीं करता है। मुझे पता नहीं है कि अब और क्या करना है। किसी के पास कोई सलाह है?

अद्यतन 1

मैं देखता हूं कि mod_security का उपयोग करके कोई भी इस समस्या को हल नहीं कर सकता है। अभी तक आईपी-टेबल का उपयोग करने के लिए ऐसा करने का सबसे अच्छा विकल्प लगता है, लेकिन मुझे लगता है कि फ़ाइल बहुत बड़ी हो जाएगी क्योंकि आईपी दिन में क्रमिक परिवर्तन बदलती है।

मैं 2 अन्य समाधानों के साथ आया, क्या कोई अच्छा या नहीं होने पर उन पर टिप्पणी कर सकता है।

  1. मेरे दिमाग में आने वाला पहला समाधान इन अपवादों को मेरे अपाचे त्रुटि लॉग से बाहर कर रहा है। इससे मेरे लिए अन्य जरूरी त्रुटियों को खोजना आसान हो जाएगा और उन्हें लंबे समय तक लॉग को थूकना पड़ेगा।

  2. दूसरा विकल्प बेहतर है जो मुझे लगता है, और यह मेजबान को अवरुद्ध कर रहा है जो सही तरीके से नहीं भेजे जाते हैं। इस उदाहरण में w00tw00t हमला होस्टनाम के बिना भेज दिया जाता है, इसलिए मुझे लगता है कि मैं मेजबान को ब्लॉक कर सकता हूं जो सही रूप में नहीं हैं।

अद्यतन 2

जवाब देने के बाद मैं निम्नलिखित निष्कर्षों पर आया।

  1. अपाचे के लिए कस्टम लॉगिंग करने के लिए कुछ अनावश्यक संसाधनों का उपभोग होगा, और यदि वास्तव में कोई समस्या है तो आप शायद बिना किसी गुम किए पूर्ण लॉग को देखना चाहेंगे।

  2. हिट को अनदेखा करना और अपने त्रुटि लॉग का विश्लेषण करने के बेहतर तरीके पर ध्यान देना बेहतर है। अपने लॉग के लिए फ़िल्टर का उपयोग इस के लिए एक अच्छा तरीका है।

विषय पर अंतिम विचार

ऊपर वर्णित हमला आपकी मशीन तक नहीं पहुंच जाएगा यदि आपके पास कम से कम एक अद्यतित प्रणाली है इसलिए मूल रूप से कोई चिंता नहीं है।

कुछ समय बाद असली लोगों से सभी फर्जी हमलों को फ़िल्टर करना मुश्किल हो सकता है, क्योंकि त्रुटि लॉग और एक्सेस लॉग दोनों बहुत बड़े होते हैं।

इसे किसी भी तरह से होने से रोकने से आपको संसाधनों का खर्च आएगा और यह एक अच्छा अभ्यास है कि आप अपने संसाधनों को महत्वहीन सामानों पर बर्बाद न करें।

अब मैं जिस समाधान का उपयोग करता हूं वह है लिनक्स लॉगवॉच। यह मुझे लॉग के सारांश भेजता है और उन्हें फ़िल्टर और समूहित किया जाता है। इस तरह आप महत्व को महत्वहीन से आसानी से अलग कर सकते हैं।

मदद के लिए सभी को धन्यवाद, और मुझे आशा है कि यह पोस्ट किसी और के लिए सहायक भी हो सकती है।


80
2018-03-24 05:33


मूल




जवाब:


आपके त्रुटि लॉग से वे मेजबान के बिना एक HTTP / 1.1 अनुरोध भेज रहे हैं: अनुरोध का हिस्सा। जो मैंने पढ़ा है, उससे Apache इस अनुरोध के लिए 400 (खराब अनुरोध) त्रुटि के साथ जवाब देता है, mod_security को सौंपने से पहले। इसलिए, ऐसा नहीं लगता है कि आपके नियम संसाधित होंगे। (Modache से निपटने की आवश्यकता से पहले Apache इससे निपटने)

अपने आप को आज़माएं:

टेलनेट होस्टनाम 80
प्राप्त करें /blahblahblah.html HTTP / 1.1 (दर्ज करें)
(दर्ज)

आपको 400 त्रुटि मिलनी चाहिए और अपने लॉग में एक ही त्रुटि दिखाई देनी चाहिए। यह एक बुरा अनुरोध है और अपाचे सही जवाब दे रहा है।

उचित अनुरोध इस तरह दिखना चाहिए:

प्राप्त करें /blahblahblah.html HTTP / 1.1
होस्ट: blah.com

असफल अनुरोध के लिए भी एक अद्वितीय आईडी उत्पन्न करने के लिए, इस समस्या के लिए चारों ओर एक कार्य mod_uniqueid पैच करना हो सकता है, ताकि अपाचे अपने अनुरोध हैंडलर पर अनुरोध पास कर सके। निम्नलिखित यूआरएल इस काम के बारे में एक चर्चा है, और इसमें mod_uniqueid के लिए एक पैच शामिल है जिसका आप उपयोग कर सकते हैं:   http://marc.info/?l=mod-security-users&m=123300133603876&w=2

इसके लिए कोई अन्य समाधान नहीं मिला और आश्चर्य है कि वास्तव में एक समाधान की आवश्यकता है या नहीं।


34
2018-03-29 13:17



मुझे अब समस्या दिखाई दे रही है। क्या आप लेख में दिए गए समाधान की अनुशंसा करते हैं, या क्या आपको लगता है कि इसे छोड़ने के लिए बेहतर है। यह सिस्टम में किसी भी बैक-दरवाजे के लिए स्कैनर है। अगर मैं इसे स्कैनिंग छोड़ देता हूं, तो मैं एक दिन हमला कर सकता हूं। - Saif Bechan
हैलो सैफ, मुझे लगता है कि जब तक आप अपने वितरण (या मैन्युअल) सुरक्षा पैच के साथ अपर-अप अद्यतित रखते हैं, तो आपको ठीक होना चाहिए। एक खराब संरचित HTTP / 1.1 अनुरोध (जैसा कि आप देख रहे हैं) अपाचे से 400 त्रुटि के अलावा कुछ भी वापस नहीं करना चाहिए। यह इसके तरह दीखता है हो सकता है DLink रूटर पर केंद्रित कुछ प्रकार की भेद्यता स्कैन किया गया है। (कुछ अन्य स्रोतों के मुताबिक) - Imo
क्या इन क्षेत्रों को मेरे apache error_log से कम से कम एक तरीका प्राप्त करने का कोई तरीका है - Saif Bechan
आप शायद mod_log के माध्यम से इसे करने में सक्षम :: httpd.apache.org/docs/2.2/mod/mod_log_config.html#customlog - Imo
मेरा अतिरिक्त संकेत होगा: अपना कॉन्फ़िगर करें चूक वास्तव में उपयोग में आने वाले वर्चुअलहोस्ट। उपरोक्त वर्णित प्रयासों के लिए लॉग में समाप्त हो जाएगा चूक वर्चुअलहोस्ट। - Koos van den Hout


फ़िल्टरिंग आईपी एक अच्छा विचार नहीं है, imho। स्ट्रिंग को फ़िल्टर करने का प्रयास क्यों न करें?

मेरा मतलब:

iptables -I INPUT -p tcp --dport 80 -m string --to 60 --algo bm --string 'GET /w00tw00t' -j DROP

15
2018-05-09 16:21



spamcleaner.org/en/misc/w00tw00t.html समान समाधान, लेकिन थोड़ा और विस्तृत। - Isaac
फ़ायरवॉल में स्ट्रिंग फ़िल्टरिंग के साथ एक समस्या यह है कि यह "काफी धीमी" है। - Alexis Wilke
@AlexisWilke क्या आपके पास यह सबूत है कि iptables स्ट्रिंग फ़िल्टरिंग अपाचे स्तर पर फ़िल्टरिंग से धीमी है? - jrwren


आईवी ने भी अपनी लॉग फाइलों में इन प्रकार के संदेशों को देखना शुरू कर दिया। इन प्रकार के हमलों को रोकने का एक तरीका है fail2ban ( http://www.fail2ban.org/ ) और अपने iptables नियमों में इन आईपी पते को काले सूची में सेट करने के लिए विशिष्ट फ़िल्टर सेट करें।

एक फ़िल्टर का एक उदाहरण है जो उन संदेशों को बनाने के साथ जुड़े आईपी पते को अवरुद्ध करेगा

[16 अगस्त 02:35:23 2011] [त्रुटि] [क्लाइंट] फ़ाइल मौजूद नहीं है: /var/www/skraps/w00tw00t.at.blackhats.romanian.anti-sec :) === apache w00t w00t संदेश जेल - regex और फ़िल्टर === जेल

 [apache-wootwoot]
 enabled  = true
 filter   = apache-wootwoot
 action   = iptables[name=HTTP, port="80,443", protocol=tcp]
 logpath  = /var/log/apache2/error.log
 maxretry = 1
 bantime  = 864000
 findtime = 3600

फ़िल्टर

 # Fail2Ban configuration file
 #
 # Author: Jackie Craig Sparks
 #
 # $Revision: 728 $
 #
 [Definition]
 #Woot woot messages
 failregex = ^\[\w{1,3} \w{1,3} \d{1,2} \d{1,2}:\d{1,2}:\d{1,2} \d{1,4}] \[error] \[client 195.140.144.30] File does not exist: \/.{1,20}\/(w00tw00t|wootwoot|WootWoot|WooTWooT).{1,250}
 ignoreregex =

11
2017-08-19 17:46



यह सच है कि आप उन्हें अवरुद्ध कर सकते हैं, लेकिन इसकी कोई आवश्यकता नहीं है क्योंकि वे केवल बुरे अनुरोध हैं। उन्हें अनदेखा करना बेहतर है, आपको काम बचाया है और आप कुछ रिकॉर्ड्स मुक्त कर देंगे। - Saif Bechan
राइट @ सैफ बेचन, अगर कोई उस "परीक्षण हमलों" के बारे में चिंतित होने के बारे में चिंतित है, तो उसे ब्लॉक करने के तरीके खोजने के लिए समय बर्बाद करने के बजाय उसे अपने आवेदन को बेहतर तरीके से ठीक करना चाहिए। - Thomas Berger
जवाब देने के लिए धन्यवाद, आपको +1 दिया। - Saif Bechan
@ सैफ बेचन, मैं असहमत हूं। w00tw00t एक भेद्यता स्कैनर है, और ऐसी मशीन जारी करने वाली मशीन को अन्य प्रकार के अनुरोधों का प्रयास करने पर भरोसा नहीं किया जा सकता है, इसलिए यदि मैं एक सिस्टम प्रशासक हूं और मुझे ऐसे ग्राहकों को एक समय में प्रतिबंधित करने में 2 मिनट लगते हैं, तो मैं ऐसा मत करो। हालांकि, मैं इस तरह के दृष्टिकोण पर अपने पूरे सुरक्षा कार्यान्वयन का आधार नहीं लगाऊंगा। - Isaac


w00tw00t.at.blackhats.romanian.anti-sec एक हैकिंग प्रयास है और आईपी के इतने लुकअप का उपयोग करता है जैसे विजुअल रूट, उस समय आईपी के अनुसार दूसरी बार चीन, पोलैंड, डेनमार्क आदि की रिपोर्ट करेगा। तो एक अस्वीकार आईपी या संकल्प करने योग्य होस्ट नाम स्थापित करना काफी असंभव है क्योंकि यह एक घंटे के भीतर बदल जाएगा।


3
2018-06-01 11:20



ये भेद्यता स्कैन स्पूफ़ेड आईपी पते का उपयोग नहीं करते हैं। अगर उन्होंने किया, तो टीसीपी 3-तरफा हैंडशेक पूरा नहीं होगा और अपाचे अनुरोध को लॉग नहीं करेगा। चेतावनी के लिए (दुष्ट आईएसपी, राउटर ऑपरेटर, आदि), देखें security.stackexchange.com/q/37481/53422 - Anthony Geoghegan


मैंने व्यक्तिगत रूप से आईपीटीबल्स नियमों को स्वतः जोड़ने के लिए एक पायथन लिपि लिखा था।

लॉगिंग और अन्य जंक के बिना यहां थोड़ा संक्षिप्त संस्करण दिया गया है:

#!/usr/bin/python
from subprocess import *
import re
import shlex
import sys

def find_dscan():
        p1 = Popen(['tail', '-n', '5000', '/usr/local/apache/logs/error_log'], stdout=PIPE)
        p2 = Popen(['grep', 'w00t'], stdin=p1.stdout, stdout=PIPE)

        output = p2.communicate()[0].split('\n')

        ip_list = []

        for i in output:
                result = re.findall(r"\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b", i)
                if len(result):
                        ip_list.append(result[0])

        return set(ip_list)

for ip in find_dscan():
        input = "iptables -A INPUT -s " + ip + " -j DROP"
        output = "iptables -A OUTPUT -d " + ip + " -j DROP"
        Popen(shlex.split(input))
        Popen(shlex.split(output))

sys.exit(0)

2
2018-03-24 07:06



क्या यह w00tw00t हमले को रोकने के लिए है - Saif Bechan
हां, मैंने इसे किसी भी "w00tw00t" आईपी के लिए अपाचे त्रुटि लॉग स्कैन किया है और यदि वे मौजूद नहीं हैं तो उन्हें जोड़ें, हालांकि सादगी के लिए मैंने डुप्लिकेट के लिए चेक नहीं जोड़ा। - Xorlev
इस स्क्रिप्ट को शायद एक टेबल का उपयोग करना चाहिए, आईपीटीबल्स चेन में कई अतिरिक्त नियम जोड़ना काफी धीमा हो रहा है। - Eric
यह एक टेबल का उपयोग करता है। हालांकि मैंने इसे बहुत सरल बना दिया क्योंकि यह मेरे सिस्टम के अनुरूप था। - Xorlev
क्या आपको लगता है कि यह एक बेहतर समाधान है कि mod_security का उपयोग करने के लिए - Saif Bechan


मेरा मानना ​​है कि mod_security आपके लिए काम नहीं कर रहा है यह है कि अपाचे स्वयं अनुरोधों को पार्स करने में सक्षम नहीं है, वे बाहर की कल्पना कर रहे हैं। मुझे यकीन नहीं है कि आपको यहां कोई समस्या है - अपाचे नेट पर हो रहा अजीब बकवास लॉग कर रहा है, अगर यह लॉग नहीं करता है तो आपको यह भी पता नहीं होगा कि यह भी हो रहा है। अनुरोध लॉग करने के लिए आवश्यक संसाधन शायद न्यूनतम है। मैं इसे निराशाजनक समझता हूं कि कोई आपके लॉग भर रहा है - लेकिन यह अधिक निराशाजनक होगा यदि आप केवल लॉगिंग को अक्षम करते हैं ताकि आपको वास्तव में इसकी आवश्यकता हो। जैसे किसी ने आपके वेबसर्वर में तोड़ दिया और आपको लॉग इन करने की ज़रूरत है कि वे कैसे टूट गए।

एक समाधान syslog के माध्यम से त्रुटि लॉगिंग सेट करना है, और उसके बाद rsyslog या syslog-ng का उपयोग करना आप विशेष रूप से w00tw00t के संबंध में इन आरएफसी उल्लंघनों को फ़िल्टर और त्याग सकते हैं। या वैकल्पिक रूप से आप उन्हें एक अलग लॉग फ़ाइल में फ़िल्टर कर सकते हैं ताकि आपका मुख्य त्रुटि लॉग पढ़ने में आसान हो। इस संबंध में रुपयेyslog अविश्वसनीय रूप से शक्तिशाली और लचीला है।

तो httpd.conf में आप ऐसा कर सकते हैं:

ErrorLog syslog:user 

फिर rsyslog.conf में आपके पास हो सकता है:

:msg, contains, "w00tw00t.at.ISC.SANS.DFind" /var/log/httpd/w00tw00t_attacks.log

सावधान रहें, यह दृष्टिकोण वास्तव में कई बार उपयोग करेगा और अधिक संसाधनों मूल रूप से फ़ाइल में सीधे लॉगिंग का उपयोग किया जाता है। यदि आपका वेबसर्वर बहुत व्यस्त है, तो यह एक समस्या बन सकता है।

रिमोट लॉगिंग सर्वर पर जितनी जल्दी हो सके सभी लॉग भेजने के लिए इसका सबसे अच्छा अभ्यास है और इससे आपको फायदा होगा कि आपको कभी भी तोड़ना चाहिए क्योंकि क्या किया गया था, उसके ऑडिट ट्रेल को मिटाना मुश्किल है।

आईपीटेबल्स अवरुद्ध करना एक विचार है, लेकिन आप एक बहुत बड़ी iptables ब्लॉक सूची के साथ समाप्त हो सकते हैं जिसमें प्रदर्शन प्रभाव पड़ सकता है। क्या आईपी पते में कोई पैटर्न है, या यह एक बड़े वितरित बोनेट से आ रहा है? Iptables से लाभ प्राप्त करने से पहले डुप्लिकेट का एक्स% होना आवश्यक होगा।


2
2018-03-30 11:09



अच्छा जवाब, मुझे विभिन्न दृष्टिकोण पसंद हैं। इसके बारे में सोचते हुए, कस्टम लॉगिंग होने से अधिक सहारा उपयोग होगा, क्योंकि सबकुछ पहले जांचना है, मुझे लगता है कि यह विकल्प भी बंद हो जाता है। अब मेरे पास लॉगवॉच सक्षम है। यह मुझे पूरे सिस्टम के सारांश के साथ दिन में 2 बार एक रिपोर्ट भेजता है। अपाचे लॉग भी चेक किए जाते हैं और यह कहता है कि w00tw00t 300 बार प्रयास करता है। मुझे लगता है कि मैं सेटअप छोड़ दूंगा क्योंकि यह समय के लिए है। - Saif Bechan


आप अपडेट 2 में कहते हैं:

समस्या अभी भी बनी हुई है   समस्या अभी भी बनी हुई है। ये हमले उन बॉट्स से हैं जो आपके सर्वर पर कुछ फ़ाइलों की खोज करते हैं। यह विशेष स्कैनर फ़ाइल / w00tw00t.at.ISC.SANS.DFind :) के लिए खोज करता है।

अब आप इसे अनदेखा कर सकते हैं जिसे सबसे अधिक अनुशंसित किया जाता है। समस्या यह बनी हुई है कि यदि आपके पास यह फ़ाइल किसी भी तरह से आपके सर्वर पर है, तो आप कुछ परेशानी में हैं।

मेरे पिछले उत्तर से हमने एकत्र किया कि अपाचे एक खराब गठित HTML 1.1 क्वेरी के कारण एक त्रुटि संदेश लौटा रहा है। HTTP / 1.1 का समर्थन करने वाले सभी वेबसर्वर को यह संदेश प्राप्त होने पर शायद एक त्रुटि लौटा दी जानी चाहिए (मैंने आरएफसी को दो बार चेक नहीं किया है - शायद आरएफसी 2616 हमें बताता है)।

W00tw00t.at.ISC.SANS.DFind होने के बाद: आपके सर्वर पर कुछ कहां से मेरा मतलब नहीं है "आप कुछ परेशानी में हैं" ... यदि आप w00tw00t.at.ISC.SANS.DFind बनाते हैं: अपने दस्तावेज़ रूट में या यहां तक ​​कि फ़ाइल DefaultDocumentRoot इससे कोई फर्क नहीं पड़ता ... स्कैनर एक टूटी HTTP / 1.1 अनुरोध भेज रहा है और अपाचे कह रहा है "नहीं, यह एक बुरा अनुरोध है ... अच्छा अलविदा"। W00tw00t.at.ISC.SANS.DFind में डेटा: फ़ाइल परोसा नहीं जाएगा।

इस मामले के लिए mod_security का उपयोग करना आवश्यक नहीं है जब तक कि आप वास्तव में (कोई बिंदु नहीं) चाहते हैं ... इस मामले में, आप मैन्युअल रूप से पैचिंग (अन्य उत्तरों में लिंक) देख सकते हैं।

एक और चीज जो आप संभवतया उपयोग कर सकते हैं वह mod_security में आरबीएल सुविधा है। शायद कुछ आरबीएल ऑनलाइन है जहां w00tw00t आईपी (या अन्य ज्ञात दुर्भावनापूर्ण आईपी) प्रदान करता है। हालांकि इसका मतलब यह होगा कि mod_security प्रत्येक अनुरोध के लिए एक DNS लुकअप करता है।


1
2018-03-31 08:52



मुझे नहीं लगता कि अपाचे उन्हें अस्वीकार करता है, यह सिर्फ त्रुटि फेंकता है लेकिन लुकअप अभी भी गुजरता है। मुझे एक्सेस लॉग में वही w00tw00t.at.ISC.SANS.DFind मिला है। यह एक मिलता है। तो लुकअप किया जाता है और यदि आपके पास अपनी मशीन पर फाइल है तो इसे निष्पादित किया जाएगा। मैं एक्सेस लॉग प्रविष्टियों को पोस्ट कर सकता हूं लेकिन वे केवल उनके सामने एक GET के साथ त्रुटि लॉग के समान दिखते हैं। अपाचे त्रुटि फेंकता है लेकिन अनुरोध गुजरता है। यही कारण है कि मैंने पूछा कि मेजबाननाम के बिना इन अनुरोधों को अवरुद्ध करना अच्छा विचार होगा या नहीं। लेकिन मैं सामान्य उपयोगकर्ताओं को अवरुद्ध नहीं करना चाहता हूं। - Saif Bechan
निश्चित रूप से, आपको एक्सेस लॉग में एक ही प्रविष्टि मिलती है लेकिन त्रुटि कोड देखें ... 400. यह संसाधित नहीं है। HTTP / 1.1 (होस्टनाम) का उपयोग अपाचे को बताने के लिए किया जाता है जो वर्चुअल होस्ट को अनुरोध भेजने के लिए ... HTTP / 1.1 अनुरोध अपाचे के होस्टनाम भाग के बिना यह नहीं पता कि अनुरोध कहां भेजना है और "400 खराब अनुरोध" त्रुटि देता है वापस ग्राहक के लिए। - Imo
इसे स्वयं आज़माएं ... अपने वेबसर्वर पर स्वयं को एक HTML पृष्ठ बनाएं और "टेलनेट होस्टनाम 80" का उपयोग करके इसे मैन्युअल रूप से प्राप्त करने का प्रयास करें ... अन्य चरण मेरे पहले उत्तर में हैं। मैं इस पर एक बड़ा बक्षीस डालूंगा कि आप मेजबाननाम के बिना HTTP / 1.1 का उपयोग करके प्रदर्शित करने के लिए HTML फ़ाइल नहीं प्राप्त कर सकते हैं। - Imo
आह हाँ हाँ कि मुझे यह इंगित करने के लिए। मैंने हमेशा सोचा था कि access_log प्रविष्टियां थीं जो त्रुटि लॉग को पार कर चुकी थीं और वास्तव में आपकी मशीन में प्रवेश करती थीं। यह मुझे इंगित करने के लिए धन्यवाद और मैं अपनी पोस्ट संपादित करूंगा। तुम्हारी मदद के लिए शुक्रिया। - Saif Bechan
हाय सैफ, कोई समस्या नहीं, मदद करने में खुशी हुई। विनम्र, इमो - Imo


Modsecurity में नियम जोड़ने के बारे में कैसे? कुछ इस तरह:

   SecRule REQUEST_URI "@rx (?i)\/(php-?My-?Admin[^\/]*|mysqlmanager
   |myadmin|pma2005|pma\/scripts|w00tw00t[^\/]+)\/"
   "severity:alert,id:'0000013',deny,log,status:400,
   msg:'Unacceptable folder.',severity:'2'"

1
2017-08-09 08:23





मैं देखता हूं कि अधिकांश समाधान पहले ही कवर किए गए हैं, हालांकि मैं यह इंगित करना चाहता हूं कि सभी नहीं क्लाइंट ने मेजबाननाम के बिना HTTP / 1.1 अनुरोध भेजा हमलों का उद्देश्य सीधे आपके सर्वर पर है। फिंगरप्रिंट और / या आपके सर्वर से पहले नेटवर्क सिस्टम का उपयोग करने के कई अलग-अलग प्रयास हैं जिनका उपयोग कर रहे हैं:

client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /tmUnblock.cgi

लिंकिज़ राउटर इत्यादि को लक्षित करने के लिए। इसलिए कभी-कभी यह आपके फोकस को विस्तृत करने में मदद करता है और समान रक्षा वाले सभी सिस्टमों के बीच अपने रक्षा प्रयासों को विभाजित करता है यानी: राउटर नियमों को कार्यान्वित करें, फ़ायरवॉल नियमों को लागू करें (उम्मीद है कि आपके नेटवर्क में एक है), सर्वर फ़ायरवॉल / आईपी टेबल लागू करें नियम और संबंधित सेवाएं यानी mod_security, fail2ban और इसी तरह।


1
2017-10-08 18:10





इस बारे में कैसा है ?

iptables -I INPUT -p tcp --dport 80 -m string --to 70 --algo bm --string 'GET /w00tw00t.at.ISC.SANS.DFind' -j DROP
iptables -I INPUT -p tcp --dport 80 -m string --to 70 --algo bm --string 'GET /w00tw00t.at.ISC.SANS.DFind' -j LOG --log-level 4 --log-prefix Hacktool.DFind:DROP:

मेरे लिए ठीक काम करता है।


1
2018-03-01 20:42



मैंने mod_security के लिए OWASP_CRS / 2.2.5 या ग्राटर नियम सेट की अनुशंसा की - Urbach-Webhosting
यह वास्तव में एक अच्छा विचार नहीं है। आप लटकते कनेक्शन के साथ खत्म हो जाएगा। इसके अलावा यदि आपकी साइट पर उन अनुरोधों के बारे में कोई चर्चा है, तो आप झूठी सकारात्मकताओं को समाप्त कर सकते हैं। - kasperd


यदि तुम प्रयोग करते हो hiawatha वेब सर्वर के रूप में reverse proxyइन स्कैन को स्वचालित रूप से कचरे के रूप में गिरा दिया जाता है client पर प्रतिबंध लगा दिया। यह भी फ़िल्टर करता है XSS और CSRF कारनामे।


0
2017-08-18 01:03