"दुष्ट" इंटरनेट तक पहुँचने वाले अनुप्रयोगों को पहचानें


14

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

मैं dnstopअपने नेटवर्क पर किए जा रहे सभी DNS अनुरोधों को प्रदर्शित करने के लिए उपयोग कर रहा हूं । वर्तमान में तर्क के लिए, weather.noaa.gov15 मिनट के चक्र पर जाने का अनुरोध है। यह शायद मौसम का मौसम है, हालांकि मैंने अपनी प्रक्रियाओं की जाँच की है और कुछ भी नहीं पाया है, और अनुरोध मेरे कंप्यूटर से आ रहा है।

तो सवाल, मैं कैसे निर्धारित करूं कि कौन सी प्रक्रिया एक्सेस कर रही है weather.noaa.gov?

मैं यह पता लगाने के लिए प्रत्येक सेवा / प्लगइन / आवेदन को बंद करके उन्मूलन की प्रक्रिया से गुजरना नहीं चाहता। मैं यह निर्धारित करने का तरीका खोजना चाहता हूं कि DNS अनुरोध किस प्रक्रिया को बना रहा है।

अगर मेरे पास एक सभ्य "एप्लीकेशन फ़ायरवॉल" होता, तो अनुरोध कभी नहीं किया जाता। लेकिन यह एक "घोड़ा पहले से ही उतरा हुआ है" परिदृश्य है और वह "दुष्ट" प्रक्रिया ढूंढना चाहेगा जो उस DNS अनुरोध को बना रहा है।

जवाबों:


7

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

nslookup weather.noaa.gov

मेरे लिए यह इस समय देता है: 193.170.140.70 और 193.170.140.80। अब आप नेटस्टेट्स के इनफिनिट लूप को लगा सकते हैं। आउटपुट आप grep का उपयोग करके फ़िल्टर कर सकते हैं (और STDERR को छोड़ दें)।

while [ true ] ;  do netstat -tunp 2>/dev/null | grep -e 193.170.140.70 -e 193.170.140.80  ; done

उपरोक्त उदाहरण में निश्चित रूप से आईपी पते को संपादित करें। यह उदाहरण TCP और UDP (-tu) कनेक्शन के लिए जांच कर रहा है, DNS रिज़ॉल्यूशन (-n) नहीं करता है और प्रक्रियाओं (-p) को सूचीबद्ध करता है। यदि आपको लगता है कि DNS रिज़ॉल्यूशन करने के लिए पर्याप्त समय है, तो बस नेटस्टैट के लिए -n विकल्प को छोड़ दें और आईपी के बजाय grep के लिए डोमेन डालें। आप केवल CTRL + c दबाकर अनंत लूप को रोक सकते हैं

आशा है कि यह मदद करता है, एंड्रियास

पुनश्च: मुझे पता है, यह करने के लिए आदर्श, कुशल या साफ तरीका नहीं है, लेकिन एक बार की खोज के लिए यह पर्याप्त होना चाहिए।


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

3

आप FQDN के साथ / etc / मेजबान जोड़ के माध्यम से एप्लिकेशन को "ब्रेक" भी कर सकते हैं जिसे कनेक्ट किया जा रहा है। इसे 10.1.2.3 (या 127.0.0.1) की तरह कुछ गैर-परिवर्तनीय आईपी दें और देखें कि क्या टूटता है।


मैं आम तौर पर इसे 0.0.0.0 पर सेट करता हूं क्योंकि यह रूट नहीं करता है, जिस तरह के ऐप के बारे में मैं बात कर रहा हूं, वे शायद ही कभी "शरारतीता" की घोषणा करते हैं
मीर बोर्ग
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.