60 सेकंड या संगरोध पागलपन में हैक

एक अपर्याप्त ग्राहक के बारे में एक छोटी कहानी और 1 मिनट में एक साइट पर भेद्यता प्राप्त करना

छवि

मुझे उम्मीद नहीं थी कि यह विशेष कहानी हेरेब पर मेरा पहला लेख होगा। मैं लिख रहा हूँ जब यह गर्म है!

आगे जो आप पढ़ते हैं, वह किसी को कार्रवाई करने या किसी से "समझौता" करने का प्रयास नहीं है।

5 अप्रैल, 2020.
मैंने लिंक्डइन में एक संदेश देखा : “शुभ दोपहर। हम yii2 पर प्रोजेक्ट को अंतिम रूप देने के लिए एक डेवलपर की तलाश कर रहे हैं ... tel: + 79 ... whatsapp " whatsapp

में पोस्ट किया गया :" अच्छा दिन। मैं लिंक्डिन से हूं, टीके भेजें, यदि कोई हो। " जवाब में, उन्हें साइट के लिंक, ट्रेलो में एक बोर्ड और एक छोटे टीके के साथ एक बड़ा संदेश मिला ट्रेलो का अध्ययन किया । बोर्ड के अनुसार, कम से कम 4 डेवलपर्स ने परियोजना पर काम किया। 6 अप्रैल, 2020, संगरोध के कारण, मेरी राय में, लोग पागल होने लगे हैं। यहाँ जब मैंने जागने पर व्हाट्सएप में देखा था :


छवि







छवि

सब कुछ लगता है, कुछ भी नहीं पढ़ा और भूल गया। लेकिन अंदर कुछ भी आराम नहीं देता था, अपूर्णता की भावना थी, जिसे मैं वास्तव में छुटकारा चाहता था।

"अपराधी" की परियोजना में शामिल होने और अंदर की अप्रिय उत्तेजनाओं से छुटकारा पाने के अलावा कुछ नहीं बचा था: डी।

उलटी गिनती शुरू हो गयी।

00:00 मैंने

साइट ओपन की।

मैं खोज फ़ॉर्म देखता हूं और पहले से ज्ञात SQL इंजेक्शन की जांच करने का प्रयास करता हूं :

' UNION SELECT
1,group_concat(username,0x7c,password),3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31
fRom user-- -

जैसा कि अपेक्षित था - यह काम नहीं करता है , लेकिन यह एक कोशिश के लायक था।

00:20

साइट के पास दो तरीकों से पंजीकरण करने का अवसर है: एक उपयोगकर्ता के रूप में और एक कंपनी के रूप में ट्रेलो

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



SELECT * FROM users;

डेटाबेस में देखने पर बस डेवलपर्स की "उपस्थिति प्रभाव" को बढ़ाने के लिए।

00:40

सफल पंजीकरण के बाद, हम कंपनी प्रोफाइल पेज पर रीडायरेक्ट हो जाएंगे
मेनू आइटम "दस्तावेज़ लोड करें" खोलें (बहुत सुविधाजनक है, यह नहीं है: डी) और php फ़ाइल को लोड करने का प्रयास करें

छवि

पहले मैंने adminer.php डाउनलोड किया , क्योंकि यह हाथ में था। फ़ाइल को सफलतापूर्वक अपलोड किया गया था और डेवलपर्स ने मेरे लिए सावधानीपूर्वक तैयार किया था जो फ़ाइल के लिंक के साथ पृष्ठ पर रीडायरेक्ट करता है।

छवि

यह लिंक द्वारा खोला गया: /upload/certified/15861775921.phpऔर ठीक से काम किया।

यह अंत की शुरुआत थी!

1:00

अगला, उसी फॉर्म के माध्यम से सरलतम php-web-shell लोड करें

पहले आपको यह समझने की जरूरत है कि हम कौन हैं और हम कहां हैं:

pwd && whoami

छवि

आइए साइट निर्देशिका फ़ाइलों की सूची देखें:

ls /var/www/admin/data/www/_/

छवि

हम Yii2 ढांचे की मानक संरचना देखते हैं , जिसकी हमें उम्मीद थी।

हम डेटाबेस तक पहुँच प्राप्त करते हैं, जिसे पहले से लोड किए गए admin.php में दर्ज किया जा सकता है :

cat /var/www/admin/data/www/_/config/db.php

छवि

वास्तव में, मुझे आश्चर्य हुआ कि ऐसी कमजोरियां अभी भी मौजूद हैं। और इससे भी अधिक क्योंकि वे इतनी आसानी से और जल्दी से पाए जा सकते हैं।

वैसे, यह संयुक्त अरब अमीरात की एक कंपनी की परियोजना थी, जो तेल, गैस और ड्रिलिंग उद्योगों के लिए ड्रिलिंग और औद्योगिक उत्पादों की आपूर्ति में लगी हुई है।

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

सर्वर साइड पर फाइल टाइप चेकिंग करना न भूलें, और आमतौर पर अपने कोड की सुरक्षा पर अधिक ध्यान दें!

All Articles