क्या Linux सर्वर के लिए EXE फ़ाइलें हानिरहित हैं?


49

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

तो ज़िप फ़ाइल मेरे वेब सर्वर के लिए कोई जोखिम नहीं होना चाहिए, है ना?


1
एक कचरा मैलवेयर स्कैनर की तरह लगता है।
निक टी

11
आपको पता है कि अगर आप ज़िप प्रारूप में हैं file foo.zip, या यहां तक ​​कि अगर वे 7z t foo.zipइसे परीक्षण करने के लिए मान्य हैं (यानी डिकम्प्रेस और सीआरसी चेकसम को सत्यापित कर सकते हैं, तो डिस्क पर स्थानीय फ़ाइलों को निकाले बिना)। ( 7zकुछ हद तक सिंटैक्स का उपयोग करता है tar।) या unzip -l foo.zipसामग्री को सूचीबद्ध करने के लिए। वैसे भी, मुझे लगा कि यह अजीब था कि आप किसी अन्य कंप्यूटर पर फ़ाइलों की जांच करने के बारे में बात करते हैं जब आप उन्हें सर्वर पर आसानी से जांच सकते थे।
पीटर कॉर्ड्स

6
आप किस तरह की वेबसाइट होस्ट कर रहे हैं? यह उपयोगकर्ता-प्रस्तुत सामग्री और एक ही बॉक्स पर आपके आगे-सामने वेब सर्वर को डालने वाले एक अच्छे विचार की तरह नहीं लगता है।
ओल्डमुड 0

@NickT सेल्फ-एक्सट्रैक्टिंग ज़िप फाइलें निष्पादन योग्य हिस्से से जुड़ी अतिरिक्त दुर्भावनापूर्ण कोड हो सकती हैं।
क्राइसिस -ऑन स्ट्राइक-

जवाबों:


84

यदि वे वास्तव में विंडोज एक्सपी फाइलें ज़िपित हैं, तो उन्हें आपके लिनक्स सिस्टम के लिए हानिरहित होना चाहिए, जब तक कि आपके पास वाइन जैसी कोई चीज न हो, जो उन्हें निष्पादित करने का प्रयास कर सके।

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


3
मुझे आश्चर्य है कि ऐसे "उपयोगकर्ता" अपलोड किए गए कचरे को होस्ट करने पर Google आपकी साइट को "इस साइट को हैक किया जा सकता है" के रूप में ब्रांड कर सकता है, या Chrome को एक विशाल लाल चेतावनी पृष्ठ प्रदर्शित कर सकता है। "हानिरहित" तब एक मिथ्या नाम हो सकता है।
निक टी

11
@ निकट: यह निश्चित रूप से कर सकता है, और यही मैं अपने दूसरे पैराग्राफ में उल्लेख कर रहा था।
स्वेन

4
सिद्धांत रूप में, कोई भी विकृत .zipफाइलें बना सकता है जो विशिष्ट अनज़िप कार्यान्वयन में खामियों को लक्षित करने की कोशिश करता है।
jamesdlin

3
वाइन की तुलना में मोनो एक सर्वर पर स्थापित होने की अधिक संभावना है, और CLR .exe फ़ाइलों को निष्पादित कर सकता है।
रयानॉइड

62

जब से मैं अपने मैक पर फ़ाइलों को अनकैप करने में सक्षम हूं, मुझे लगता है कि ये वास्तविक ज़िप फाइलें हैं और न कि केवल नामांकित php फ़ाइलों की तरह कुछ।

जब आप शायद इस मामले में सही होंगे, तो आपकी धारणा हमेशा पकड़ में नहीं आ सकती है। एक ज़िप संग्रह वैध रहता है, भले ही आप इसे करने के लिए मनमाने ढंग से डेटा प्रस्तुत करते हैं , इसलिए यह एक ऐसी फ़ाइल बनाना संभव है जो एक साथ एक वैध ज़िप संग्रह है जिसमें निर्दोष डेटा भी है और एक दुर्भावनापूर्ण PHP स्क्रिप्ट भी है। यह विशेष रूप से कठिन नहीं है; बस PHP कोड और ज़िप फ़ाइल को सम्‍मिलित करें, और सुनिश्चित करें कि (उदाहरण का उपयोग करते हुए __halt_compiler()) कि PHP, संग्रहित डेटा को पार्स करने की कोशिश नहीं करेगा।

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

इस तरह के टोटकों का एक और सामान्य दुर्भावनापूर्ण उपयोग एक ज़िप-आधारित कंटेनर (उदाहरण के लिए एक JAR फ़ाइल) में हानिरहित कोड (जैसे GIF छवि, जैसे GIFAR शोषण) में शोषण कोड को छिपाने के लिए है , लेकिन ऐसा कोई कारण नहीं हो सकता है दूसरी दिशा में भी उपयोग किया जाता है, उदाहरण के लिए, एक भोली फ़ाइल अपलोड फ़िल्टर को बायपास करने के लिए जो PHP स्क्रिप्ट अपलोड करने से मना करता है, लेकिन ज़िप फ़ाइलों की अनुमति देता है, बिना यह जांचे कि क्या अपलोड की गई फ़ाइल दोनों एक ही समय में हो सकती है।


GIFAR के लिए +1, व्यवहार में इस शोषण के एक विशिष्ट उदाहरण के बारे में जानना दिलचस्प है।
caesay

11

कम से कम दो उल्लेखनीय विचार हैं जिन्हें आपको ध्यान में रखना चाहिए:

  1. यदि ये फ़ाइलें आपकी वेबसाइट पर वितरित की जाती हैं, तो किसी को आपकी साइट से मैलवेयर होने पर आपको जिम्मेदार ठहराया जा सकता है। बहुत कम ही आपकी साइट को मैलवेयर के लिए चिह्नित किया जा सकता है। यदि आप मालवेयर स्कैनर चेतावनियों को नजरअंदाज करने का निर्णय लेते हैं, तो आपको कम से कम अपलोडर और संभावित डाउनलोडर्स को सूचित करना चाहिए कि फ़ाइल हानिकारक हो सकती है (जैसा कि कभी-कभी इंटरनेट से डाउनलोड किए गए ईएक्सई हैं)।
  2. क्या आप मालवेयर स्कैन के अलावा इन फाइलों पर कोई प्रोसेसिंग करते हैं? संलग्नक या ऐसे अन्य अपलोड की स्वचालित प्रसंस्करण हमेशा संभावित खतरनाक होती है, क्योंकि फ़ाइल सामग्री कुछ भी हो सकती है। यदि आपकी उपयोगिता सॉफ़्टवेयर किसी शोषण की चपेट में है और उचित रूप से अच्छा ज़िप / exe आपकी उपयोगिता को लक्षित करने वाली हानिकारक सामग्री है, तो आपको EXE फ़ाइल निष्पादित करने की भी आवश्यकता नहीं है। मैं अपने सर्वर को कुछ भी प्रोसेस नहीं करने देता जो मैलवेयर स्कैन करने में विफल रहता है।

तो, इस बात पर निर्भर करता है कि आपका सर्वर क्या फ़ाइल करता है, संभवतः आपके सर्वर या अन्य उपयोगकर्ताओं के लिए हानिकारक हो सकता है । चूंकि मैं इंटरनेट से डाउनलोड किए गए EXE से काफी सावधान हूं, इसलिए मैं कहूंगा कि संभावित डाउनलोडर यहां जोखिम वाले संभावित उपयोगकर्ता हैं।


2

आप जाँच कर सकते हैं कि क्या फाइलें आपके लिनक्स सर्वर पर चलने योग्य हैं या नहीं, बस file FILENAME.exeकमांड के साथ उनकी जांच करके । एल्फ बायनेरिज़ (लिनक्स पर प्रयोग किया जाने वाला निष्पादन योग्य प्रारूप) का नाम .exeविस्तार के साथ लिया जा सकता है ताकि एक अनसुने लाइनेक्स एडमिन को भ्रमित किया जा सके , इसलिए यह संभव है कि आँख बंद करके भरोसा करने से पहले यह जाँच कर लें कि ये फाइलें रन करने योग्य नहीं हैं।


2

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

तो, आपके मामले में, आपके पास एक ज़िप फ़ाइल हो सकती है, जिसके कारण (विशिष्ट?) ज़िप-डिकोडिंग इंजन पर समस्याएँ होती हैं। हानिकारक होने के लिए एक देशी निष्पादन योग्य ज़िप फ़ाइल की कोई आवश्यकता नहीं है।

यह कहने के बाद कि, आपका स्कैनर दूसरे, मोटे स्तर पर काम कर रहा है। अगर मैं उन फ़ाइलों में मौजूद जोखिम के बारे में बात कर रहा हूं, तो आपने पहले ही उस क्षण को हिट कर दिया था जिसे आपने संसाधित किया था :)।


1

जब से मैं अपने मैक पर फाइलों को अनकैप करने में सक्षम हूं, मुझे लगता है कि ये असली ज़िप फाइलें हैं न कि नामांकित PHP फाइलों जैसी कुछ।

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

तो, साथ ही साथ सावधान रहें।


0

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


-6

लिनक्स सर्वर के लिए अनजिप। Exe भी हानिरहित हैं।


23
जरूरी नहीं कि - .exeफाइल नाम का कुछ भी अधिक हिस्सा न हो और इसे ईएलएफ बाइनरी के नाम के रूप में भी चुना जा सकता है।
स्वेन

इसके अलावा, वाइन स्थापित किया जा सकता है। दी गई, अधिकांश विंडोज-टारगेटिंग मैलवेयर शायद WINE के तहत सही काम नहीं करेंगे, लेकिन जोखिम मौजूद है। सबसे अच्छा, लिनक्स पर अनजिप्ड .exes ज्यादातर हानिरहित हैं।
रे

@ रे विन्यास पर निर्भर करता है। यदि, किसी कारण से, मोनो या वाइन स्थापित हैं, तो binfmt_misc को कॉन्फ़िगर किया जा सकता है ताकि .exe वास्तव में निष्पादन योग्य हो।
रयानॉइड
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.