2026-10-12 को 14:32:18Z पर, Ubuntu सर्वर ir-lab-ubuntu24 ने ops अकाउंट के लिए एक अप्रत्याशित लॉगिन स्वीकार किया। हमलावर को किसी प्रोग्राम में बदलाव करने या एन्क्रिप्शन तोड़ने की ज़रूरत नहीं पड़ी, क्योंकि ops के पास पहले से ही उन फ़ाइलों का एक्सेस था जो केवल socalyst या root की होनी चाहिए थीं। हमारा बचाव-संबंधी सवाल स्पष्ट है: फ़ाइलसिस्टम के कौन से पाथ (paths) किसी अकाउंट को ऐसी चीज़ें पढ़ने, बदलने या उनमें प्रवेश करने की अनुमति देते हैं, जिनकी अनुमति उसे नहीं होनी चाहिए?
बाद की हर जाँच-पड़ताल में इन्हीं तथ्यों का इस्तेमाल किया गया है। एनालिस्ट अकाउंट socalyst है, संदिग्ध अकाउंट ops है, और घटना का समय 2026-10-12 को 14:10:00Z से 15:10:00Z के बीच का है। Linux सर्वर का नाम /etc/hostname में, लोकल अकाउंट रिकॉर्ड /etc/passwd में, सुरक्षित पासवर्ड हैश /etc/shadow में, और हर अकाउंट की फ़ाइलें /home/socalyst और /home/ops जैसे पाथ में स्टोर करता है। पाथ केवल एक लोकेशन नहीं है। इसकी ओनरशिप (स्वामित्व) और अनुमतियाँ (permissions) यह तय करती हैं कि उस लोकेशन पर मौजूद ऑब्जेक्ट का इस्तेमाल कौन कर सकता है। केस होस्ट और उससे जुड़े सबूतों के पाथ उन सीमाओं को तय करते हैं जिनकी हम जाँच करेंगे:
यह डायग्राम दिखाता है कि आइडेंटिटी रिकॉर्ड, होस्ट कॉन्फ़िगरेशन, होम डायरेक्टरी और ऑथेंटिकेशन के सबूत अलग-अलग पाथ पर होते हैं। /home/ops के बारे में मिली जानकारी से यह साबित नहीं होता कि /etc/shadow में बदलाव हुआ है, इसलिए हम हर दावे को उससे जुड़े सबूत या आर्टिफ़ैक्ट से जोड़कर रखते हैं।
अचानक हुए ops लॉगिन के कारण परमिशन (अनुमति) की जांच करना ज़रूरी हो जाता है, क्योंकि Linux किसी प्रोसेस के फ़ाइल पढ़ने, फ़ाइल बदलने या डायरेक्टरी में जाने से पहले एक्सेस की जांच करता है। यूज़र एक अकाउंट होता है, जैसे socalyst या ops। ग्रुप अकाउंट्स का एक नाम वाला कलेक्शन होता है जो एक्सेस शेयर कर सकते हैं, जैसे shadow ग्रुप, जिसका इस्तेमाल पासवर्ड-हैश रिकॉर्ड तक एक्सेस को सीमित करने के लिए किया जाता है।
हर फ़ाइलसिस्टम ऑब्जेक्ट का एक ओनर, एक ग्रुप और तीन परमिशन सेट होते हैं। ओनर परमिशन ओनर अकाउंट पर लागू होती हैं, ग्रुप परमिशन असाइन किए गए ग्रुप के सदस्यों पर लागू होती हैं, और अन्य परमिशन बाकी सभी पर लागू होती हैं। बिट्स इस प्रकार हैं: कंटेंट पढ़ने के लिए r, कंटेंट बदलने के लिए w, और प्रोग्राम चलाने या डायरेक्टरी में जाने के लिए x। /home/ops के लिए, डायरेक्टरी परमिशन x यह तय करती है कि कोई दूसरा अकाउंट उस डायरेक्टरी के पाथ पर जा सकता है या नहीं।
/etc/hostname और /etc/shadow के बीच का अंतर सुरक्षा से जुड़े फ़ैसले को साफ़ दिखाता है। प्रोसेस को होस्टनेम पढ़ने की ज़रूरत होती है, इसलिए /etc/hostname को आम तौर पर सभी अकाउंट पढ़ सकते हैं, जबकि /etc/shadow में मौजूद पासवर्ड हैश को सिर्फ़ खास अधिकार वाले सिस्टम कंपोनेंट ही पढ़ सकते हैं। ‘वर्ल्ड-राइटेबल’ एक्सेस (यानी ‘अन्य’ सेट में w शामिल होना) किसी भी लोकल अकाउंट को सुरक्षित ऑब्जेक्ट में बदलाव करने की इजाज़त दे देगा। अगर /etc/shadow ‘वर्ल्ड-रीडेबल’ हो, तो पासवर्ड हैश ऑफ़लाइन अंदाज़ा लगाने के लिए उपलब्ध हो जाएंगे। केस पाथ के लिए अपेक्षित आकार संदिग्ध बदलावों को पहचानना आसान बनाते हैं:
यह टेबल दिखाती है कि परमिशन सेटिंग्स पाथ (path) के मकसद पर निर्भर करती हैं। सार्वजनिक रूप से पढ़ी जा सकने वाली आइडेंटिटी और होस्टनेम की जानकारी सामान्य सिस्टम ऑपरेशन में मदद कर सकती है, लेकिन लिखने (write) का एक्सेस सीमित रहता है क्योंकि बदली हुई आइडेंटिटी रिकॉर्ड या होस्ट सेटिंग्स बाद की जांच को गुमराह कर सकती हैं।
परमिशन का नियम परमिशन मोड को एक्सेस की अनुमति का सबूत मानें, न कि इस बात का सबूत कि एक्सेस हुआ था। किसी कार्रवाई के दावे का समर्थन करने के लिए लॉग और टाइमस्टैम्प की ज़रूरत होती है।
चूंकि परमिशन मकसद के बजाय मौजूदा एक्सेस के बारे में बताती हैं, इसलिए हम सबसे पहले ir-lab-ubuntu24 के बारे में देखी जा सकने वाली जानकारियों को सुरक्षित करते हैं। hostnamectl, id, ls -l, stat, और readlink -f कमांड जांच की जा रही फ़ाइलों में कोई बदलाव किए बिना अलग-अलग सवालों के जवाब देते हैं। hostnamectl कॉन्फ़िगर की गई होस्ट आइडेंटिटी की जानकारी देता है। id ops और id socalyst हर अकाउंट की न्यूमेरिक आइडेंटिटी और ग्रुप मेंबरशिप का पता लगाते हैं। वे न्यूमेरिक आइडेंटिटी इसलिए मायने रखती हैं क्योंकि Linux ओनरशिप को यूज़र और ग्रुप ID के तौर पर स्टोर करता है, भले ही कमांड का आउटपुट जाने-पहचाने नाम दिखाता हो।
/etc/hostname, /etc/passwd, और /etc/shadow पाथ के लिए, ls -l परमिशन बिट्स, ओनर, ग्रुप, साइज़ और दिखाए गए टाइमस्टैम्प का संक्षिप्त विवरण देता है। stat ज़्यादा सटीक मेटाडेटा बताता है, जिसमें न्यूमेरिक मोड और मॉडिफ़िकेशन का समय शामिल है। readlink -f पाथ को उसके अंतिम टारगेट तक ले जाता है, जिससे सिंबॉलिक लिंक (एक फ़ाइलसिस्टम ऑब्जेक्ट जो कहीं और पॉइंट करता है) उस लोकेशन को छिपा नहीं पाता जिसकी हमने असल में जांच की थी। नीचे दिया गया सेशन केस के तथ्यों को रिकॉर्ड करता है, बिना यह बताए कि कोई टाइमस्टैम्प या परमिशन क्यों मौजूद है: