क्यों कुछ पोर्ट्स को नैम फ़िल्टर द्वारा रिपोर्ट किया जाता है और अन्य नहीं?


38

मैं एक ऐसे सर्वर को स्कैन कर रहा हूं, जिसमें iptables का उपयोग करके एक बहुत ही सरल फ़ायरवॉल होना चाहिए : डिफ़ॉल्ट रूप से इसके अलावा RELATEDऔर ESTABLISHEDपैकेट के अलावा सब कुछ DROPped है। केवल NEW22 प्रकार और 80 पोर्ट पर टीसीपी पैकेट की अनुमति दी गई है और यह वह है (उस सर्वर पर कोई HTTPS नहीं)।

पहले 2048 बंदरगाहों पर झपकी का नतीजा मुझे उम्मीद के मुताबिक 22 और 80 खुला है। हालाँकि कुछ पोर्ट "फ़िल्टर्ड" के रूप में दिखाई देते हैं।

मेरा सवाल है: पोर्ट 21, 25 और 1863 "फ़िल्टर्ड" के रूप में क्यों दिखाई देते हैं और 2043 अन्य पोर्ट फ़िल्टर्ड के रूप में दिखाई नहीं देते हैं?

मुझे केवल 22 और 80 को "ओपन" के रूप में देखने की उम्मीद थी।

यदि 21,25 और 1863 को "फ़िल्टर्ड" के रूप में देखना सामान्य है, तो अन्य सभी पोर्ट्स को "बहुत अधिक" के रूप में क्यों नहीं देखा जा रहा है !?

यहाँ nmap आउटपुट है:

# nmap -PN 94.xx.yy.zz -p1-2048

Starting Nmap 6.00 ( http://nmap.org ) at 2014-06-12 ...
Nmap scan report for ksXXXXXX.kimsufi.com (94.xx.yy.zz)
Host is up (0.0023s latency).
Not shown: 2043 closed ports
PORT     STATE    SERVICE
21/tcp   filtered ftp
22/tcp   open     ssh
25/tcp   filtered smtp
80/tcp   open     http
1863/tcp filtered msnp

मुझे वास्तव में नहीं मिला कि मेरे पास 2043 बंद बंदरगाह क्यों हैं:

Not shown: 2043 closed ports

और 2046 बंद बंदरगाह नहीं।

यहाँ सर्वर पर लॉन्च किया गया एक lsof है:

# lsof -i -n
COMMAND   PID USER   FD   TYPE   DEVICE SIZE NODE NAME
named    3789 bind   20u  IPv4     7802       TCP 127.0.0.1:domain (LISTEN)
named    3789 bind   21u  IPv4     7803       TCP 127.0.0.1:953 (LISTEN)
named    3789 bind  512u  IPv4     7801       UDP 127.0.0.1:domain 
sshd     3804 root    3u  IPv4     7830       TCP *:ssh (LISTEN)
sshd     5408 root    3r  IPv4 96926113       TCP 94.xx.yy.zz:ssh->aa.bb.cc.dd:37516 (ESTABLISHED)
sshd     5411    b    3u  IPv4 96926113       TCP 94.xx.yy.zz:ssh->aa.bb.cc.dd:37516 (ESTABLISHED)
java    16589    t   42u  IPv4 88842753       TCP *:http-alt (LISTEN)
java    16589    t   50u  IPv4 88842759       TCP *:8009 (LISTEN)
java    16589    t   51u  IPv4 88842762       TCP 127.0.0.1:8005 (LISTEN)

(ध्यान दें कि जावा / टॉमकैट 8009 पोर्ट पर सुन रहा है लेकिन यह पोर्ट फ़ायरवॉल द्वारा DROPped है)


जब आप अन्य मेजबानों को स्कैन करते हैं तो क्या आपको वही परिणाम मिलते हैं?
क्रीक

@ क्रिक: आह, बस slashdot.org पर कोशिश की और 80 और 443 खुला लेकिन 25 / smtp फ़िल्टर के रूप में अच्छी तरह से मिला। लेकिन तब आपने मुझे उस सर्वर को अपने होम मशीन से नहीं, बल्कि किसी अन्य सर्वर से मेरे पास भेजने का प्रयास करने का विचार दिया: मेरे पास 3 फ़िल्टर किए गए पोर्ट नहीं हैं, लेकिन फिर मुझे 53 / डोमेन / बंद , 443 / https / बंद मिले और 953 / rndc / बंद । (मेरे दोनों समर्पित सर्वर ओवीएच / फ्रांस में होस्ट किए गए हैं)।
सेड्रिक मार्टिन

1
यदि आप वास्तव में यह देखना चाहते हैं कि क्या nmapआप कर रहे हैं तो आपको एसएनएन स्कैन ( -sS) और रूट रूट का उपयोग करके स्कैन करना चाहिए --packet-trace। कुछ मिनट भी लें और मैन पेज पढ़ें, आपको आश्चर्य होगा कि क्या रत्न हैं
क्रीक

मैं अस्थायी रूप से उन बंदरगाहों को खोलूंगा और देखूंगा कि पैकेट उनके माध्यम से मिलते हैं या नहीं।
मार्क हर्ड

जवाबों:


25

नैम से 'फ़िल्टर किया गया पोर्ट' स्टेटमेंट आपकी स्कैन विधि के अनुसार भिन्न होता है।

टीसीपी प्रोटोकॉल पर निर्भर होने पर मानक स्कैन (टीसीपी स्कैन यदि अप्राप्त उपयोगकर्ता, या सुपर-स्केसर पर आधा-खुला स्कैन -एसएस)। (नाम 3-रास्ता हंशाके)

  • एक क्लाइंट (आप) एक SYN जारी करता है, अगर सर्वर SYN / ACK का जवाब देता है: इसका मतलब है कि पोर्ट खुला है !

  • आप एक SYN जारी करते हैं, अगर सर्वर RST का जवाब देता है: इसका मतलब है कि पोर्ट करीब है !

  • आप एक SYN जारी करते हैं, यदि सर्वर जवाब नहीं देता है, या ICMP त्रुटि का जवाब देता है: इसका मतलब है कि पोर्ट फ़िल्टर किया गया है । संभवत: एक आईडी / स्टेटफुल फ़ायरवॉल आपके अनुरोध को अवरुद्ध करता है)

पोर्ट की वास्तविक स्थिति क्या है, यह जानने के लिए आप निम्न कर सकते हैं:

  • का उपयोग -sV , या -एक विकल्प (संस्करण का पता लगाने, यह आप यह निर्धारित करने के लिए इस बंदरगाह की स्थिति क्या है में मदद मिलेगी।
  • उपयोग --tcp- झंडे SYN, पंख को दरकिनार करने की कोशिश करने के लिए फिन
  • अन्य स्कैन प्रकारों का उपयोग करें ( http://nmap.org/book/man-port-scanning-techniques.html )

इसके निर्माता फ्योडोर द्वारा लिखी गई उत्कृष्ट " नैम्प नेटवर्क डिस्कवरी " पुस्तक इसे बखूबी समझाती है। मैं उद्धृत करता हूं

फ़िल्टर्ड: नैंप यह निर्धारित नहीं कर सकता है कि पोर्ट खुला है क्योंकि पैकेट फ़िल्टरिंग इसकी जांच को पोर्ट तक पहुँचने से रोकता है। फ़िल्टरिंग एक समर्पित फ़ायरवॉल डिवाइस, राउटर नियमों या होस्ट-आधारित फ़ायरवॉल सॉफ़्टवेयर से हो सकती है। ये बंदरगाह हमलावरों को हताश करते हैं क्योंकि वे इतनी कम जानकारी प्रदान करते हैं। कभी-कभी वे आईसीएमपी त्रुटि संदेशों के साथ प्रतिक्रिया करते हैं जैसे कि टाइप 3 कोड 13 (गंतव्य पहुंच योग्य: संचार प्रशासनिक रूप से निषिद्ध), लेकिन फिल्टर जो बिना जवाब दिए बस जांच छोड़ देते हैं, वे कहीं अधिक सामान्य हैं। यह Nmap को फ़िल्टर करने के बजाय नेटवर्क की भीड़ के कारण जांच छोड़ने की स्थिति में कई बार पुनः प्रयास करने के लिए मजबूर करता है। इस प्रकार की फ़िल्टरिंग स्लाइस नाटकीय रूप से स्कैन करती है।

खुले | फ़िल्टर किए गए: Nmap इस स्थिति में बंदरगाहों को रखता है जब यह निर्धारित नहीं कर पाता है कि पोर्ट खुला है या फ़िल्टर किया गया है। यह स्कैन प्रकारों के लिए होता है जिसमें खुले पोर्ट कोई प्रतिक्रिया नहीं देते हैं। प्रतिक्रिया की कमी का मतलब यह भी हो सकता है कि एक पैकेट फ़िल्टर ने जांच को गिरा दिया या किसी भी प्रतिक्रिया ने इसे हटा दिया। इसलिए Nmap को यह पता नहीं है कि पोर्ट खुला है या फ़िल्टर किया जा रहा है। UDP, IP प्रोटोकॉल, FIN, NULL और Xmas स्कैन इस तरह से बंदरगाहों को वर्गीकृत करते हैं।

बंद | फ़िल्टर्ड: इस राज्य का उपयोग तब किया जाता है जब Nmap निर्धारित करने में असमर्थ होता है कि पोर्ट बंद है या फ़िल्टर किया गया है। इसका उपयोग केवल IP ID आइडल स्कैन के लिए किया जाता है जो कि धारा 5.10 में चर्चा की गई है, "TCP Idle Scan (-sl)


तो मैं 22 पोर्ट को कैसे अनफ़िल्टर करता हूँ? मान लीजिए मैं Google डोमेन का उपयोग कर रहा हूं ...
इगोरगानपोलस्की

"अनफ़िल्टर"? वैसे आप अपने फ़ायरवॉल पर 22 पर जाने वाले ट्रैफ़िक को रोकते नहीं हैं इसलिए इसे फ़िल्टर्ड नहीं किया जाएगा ... आपको
नैम

आप क्या स्कैन कर रहे हैं?
फ्लोरियन बिदैब

मैं इस कमांड का उपयोग कर रहा हूं: sudo nmap -oG - -T4 -A -p22 -v pi.eaeaigig.com | grep ssh
IgorGanapolsky

1
"-T4" आवश्यक है, जो पहले से ही "-A" में निर्दिष्ट है ... जांच के संबंध में, sudo nmap का अर्थ है कि एक Syn स्कैन का उपयोग किया जाता है (-sS)। "- ए" "-T4" + "- sV" + "- O" का एक छोटा संस्करण है। यदि सेवा का पता लगाना (-sV) SSH सर्वर की जांच करने में विफल रहता है, तो संभवतः पोर्ट बंद हो जाता है (कोई ssh सुन नहीं) अन्यथा आपके क्लाइंट और सर्वर के बीच कुछ ऐसा होना चाहिए जो जांच को रोक दे और पैकेट (होस्ट फ़ायरवॉल, IDS) को छोड़ दे या गलत नेटवर्क उपकरण)
फ्लोरियन बिदैब

10

क्यों पोर्ट 21, 25 और 1863 "फ़िल्टर्ड" के रूप में दिखाई देते हैं और 2043 अन्य पोर्ट फ़िल्टर्ड के रूप में दिखाई नहीं देते हैं?

क्योंकि आपके आईएसपी, राउटर, आपके नेटवर्क प्रशासक, उनके बीच कुछ भी, या स्वयं उन्हें फ़िल्टर कर रहे हैं। इन बंदरगाहों का इतिहास काफी खराब है, 1863 Microsoft इंस्टेंट मैसेजिंग प्रोटोकॉल (उर्फ एमएसएन और दोस्तों) द्वारा उपयोग किया जाने वाला पोर्ट है, जो मुझे लगता है कि आप एक विशिष्ट नियम निर्धारित कर सकते हैं (या नहीं कर सकते हैं)। एसएमटीपी एक ऐसा लगता है जैसे आपका आईएसपी अपराधी है और एफ़टीपी ने मुझे पूरी तरह से तोड़ दिया है, क्योंकि मुझे नहीं पता कि उनके साथ क्या हो सकता है।


1
स्पष्टीकरण के लिए धन्यवाद! तो "फ़िल्टर किए गए" मूल रूप से वहाँ एक के बराबर का मतलब है iptables के अस्वीकार कहीं (आईएसपी, रूटर, आदि)? और ISP / राउटर या जो भी DROPping के बजाय REJECTING है क्योंकि यह क्लीनर है? पोर्ट 25 के बारे में: यह मेरे लिए फ़िल्टर किया गया है, कहते हैं, slashdot.org भी (जब मैं इसे अपने घर के कनेक्शन से हटाता हूं, लेकिन तब नहीं जब मैं अपने समर्पित सर्वर से इसे मैप करता हूं)।
सेड्रिक मार्टिन

6
@CedricMartin, आप इसे बिल्कुल पीछे की ओर ले गए हैं। "फ़िल्टर्ड" का अर्थ है पैकेट को गिरा दिया गया (कोई उत्तर नहीं), जबकि "बंद" का अर्थ है कि पैकेट को अस्वीकार कर दिया गया है (एक ICMP "पोर्ट अनुपलब्ध" उत्तर भेजा गया है)।
मार्क

@ मर्क: तब अगर मुझे यह पीछे की ओर मिला तो मेरा मूल प्रश्न खड़ा हो जाता है: अपने सर्वर पर, iptables का उपयोग करके , मैं 22 और 80 के अलावा सब कुछ छोड़ रहा हूं । केवल 3 पोर्ट "फ़िल्टर किए गए" के रूप में कैसे प्रकट होते हैं !?
सेड्रिक मार्टिन

@CedricMartin अपने प्रश्न को संपादित करें और अपने iptables नियम जोड़ें।
ब्रिअम

1

डिफ़ॉल्ट रूप से, Nmap प्रत्येक प्रोटोकॉल (tcp, udp) के लिए केवल सबसे सामान्य 1,000 पोर्ट स्कैन करता है। यदि आपका पोर्ट उसके बाहर है, तो वह इसे स्कैन नहीं करेगा और इसलिए इसकी रिपोर्ट नहीं करेगा। हालाँकि, आप उन पोर्ट निर्दिष्ट कर सकते हैं जिन्हें आप -p विकल्प के साथ स्कैन करना चाहते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.