لقد قمت بمسح متجر العميل '؛ للحصول على المكونات الإضافية واسترجعت ثلاثة. كان الموقع يعمل بستة وعشرين. لم يتم كسر أي شيء ولم يتم إخفاء أي شيء عن قصد: قام البرنامج الإضافي للتحسين الخاص بهم بدمج كل برنامج نصي في ملف واحد مدمج، ولا يحتوي الملف المدمج على مجلدات إضافية باسمه. كان الفحص دقيقًا بشأن ما تم تحميله من الصفحة وعديم الفائدة كمخزون، وهو التمييز الذي يدور حوله هذا الدليل.
يعد اكتشاف المكونات الإضافية من خارج الموقع مفيدًا حقًا ومحدودًا حقًا، ومعظم الأدوات تخبرك فقط بالنصف الأول. إليك كيفية عمل الكشف، وما يمكن أن تعنيه كل نتيجة وما لا يمكن أن تعنيه، وكيفية قراءة قائمة قصيرة دون استخلاص نتيجة خاطئة. ال كاشف البرنامج المساعد ووردبريس تقارير كلا النصفين عن قصد.
ليرة تركية؛DR: يعمل اكتشاف البرنامج المساعد من خلال العثور على الملفات المحملة منها
/wp-content/plugins/<slug>/في صفحة. أي شيء لا يقوم بتحميل ملف الواجهة الأمامية يكون غير مرئي: المكونات الإضافية للمسؤول فقط، والمكونات الإضافية التي يتم تشغيلها على صفحات أخرى، وأي شيء تم دمج أصوله كمكون إضافي للتخزين المؤقت في ملف واحد مدمج. تعامل مع النتيجة كأرضية، وليس إجماليًا أبدًا. يؤدي مسح الصفحة الداخلية بدلاً من الصفحة الرئيسية إلى العثور على المزيد بشكل موثوق.
كيف يعمل اكتشاف البرنامج المساعد فعليا؟
يجب على البرنامج المساعد الذي يفعل أي شيء مرئي أن يقوم بتحميل شيء ما من المجلد الخاص به. يقدم WordPress ملفات البرنامج المساعد من مسار ثابت /wp-content/plugins/<slug>/، لذا فإن أي ورقة أنماط أو برنامج نصي أو صورة يتم تحميلها من هناك تسمي المكون الإضافي الذي يمتلكها
<link rel="stylesheet" href="/wp-content/plugins/contact-form-7/includes/css/styles.css?ver=5.9.3" />
<script src="/wp-content/plugins/woocommerce/assets/js/frontend/cart-fragments.min.js?ver=9.2.3"></script>
هذا هو contact-form-7 و woocommerce، كما ذكرت الصفحة بدلا من الاستدلال على كيفية تصرفها. تعلن بعض المكونات الإضافية عن نفسها بشكل أكثر وضوحًا: فئة النص، ومساحة اسم REST ضمنها /wp-json/علامة تعريف، تعليق HTML، اسم ملف تعريف الارتباط.
عادةً ما يسير الإصدار في سلسلة الاستعلام. ?ver=5.9.3 هو ما يلحقه WordPress لانتهاك ذاكرة التخزين المؤقت، وفي معظم عمليات التثبيت يكون البرنامج المساعد '؛s هو الإصدار الحقيقي. المواقع التي تقوم بتجريد سلاسل الاستعلام عن الإصدار لأسباب تتعلق بالتخزين المؤقت، أو تلك التي تقوم بتشفير قيمة، لن تبلغ عن أي شيء أو شيء قديم.
| شهادة | مثال | ثقة |
|---|---|---|
| مسار الأصول | /wp-content/plugins/woocommerce/... |
قام البرنامج المساعد بتحميل ملف على هذه الصفحة |
| سلسلة استعلام الإصدار | ?ver=9.2.3 |
عادة النسخة المثبتة |
| مساحة اسم الراحة | /wp-json/wc/v3 |
مسارات API المسجلة للمكون الإضافي |
| فئة الجسم | woocommerce-page |
البرنامج المساعد نشط في هذا النوع من الصفحة |
لماذا يظل الكثير من المكونات الإضافية غير مرئي؟
أربعة إعدادات عادية تخفي المكونات الإضافية، ولا يعني أي منها أن الموقع يرتكب أي خطأ.
لا تقوم المكونات الإضافية للمسؤول فقط بتحميل أي شيء للزائر. برامج جدولة النسخ الاحتياطي، ومحرري تحسين محركات البحث، وأدوات الترحيل، ومديري أدوار المستخدم، وأدوات التدريج المساعدة: يقومون بعملهم في الداخل wp-admin ولا تضيف شيئًا إلى الواجهة الأمامية. توجد حصة كبيرة من أي موقع حقيقي وقائمة المكونات الإضافية #39؛s في هذه الفئة وهي غير مرئية من الخارج حسب التصميم.
يتم تشغيل المكونات الإضافية على الصفحات المخصصة لها. يتم تحميل البرنامج الإضافي للدفع عند الخروج. يتم تحميل البرنامج الإضافي للنموذج حيث يوجد النموذج. إن مسح الصفحة الرئيسية واستنتاج أن الموقع يحتوي على ثلاثة مكونات إضافية يشبه قراءة الصفحة الأولى من الكتاب والإبلاغ عن عدد الكلمات الخاصة به.
تعمل المكونات الإضافية للتحسين على مسح أسماء المجلدات. هذا هو الكبير. يقوم البرنامج المساعد الذي يقوم بتسلسل كل برنامج نصي وورقة أنماط في ملف واحد ضمن مجلد ذاكرة التخزين المؤقت بإزالة أسماء مجلدات البرنامج المساعد لكل شيء تم دمجه، بما في ذلك اسمه. الكود لا يزال موجودا. الدليل ليس كذلك.
يقوم المضيفون وشبكات CDN بإعادة كتابة مسارات الأصول. تقوم بعض الأجهزة المضيفة المُدارة بوكالة كل ملف ثابت من خلال مسار لم يعد يحتوي عليه /wp-content/plugins/. نفس التأثير، يطبق على الموقع بأكمله مرة واحدة.
لذا فإن النتيجة الفارغة لها خمسة معانٍ على الأقل: لا توجد مكونات إضافية نشطة، ولا يتم تحميل أي أصول أمامية، أو يقوم أحد المحسنين بدمجها، أو يعيد المضيف كتابة المسارات، أو أن الموقع ليس WordPress. أداة تقوم بالإبلاغ عن النتائج؛ 0 المكونات الإضافية والاقتباس؛ وبدون فصل تلك العناصر، لا يتم الإبلاغ عن النتيجة، بل يتم الإبلاغ عن النقطة العمياء الخاصة بها.
ماذا يعني اسم المجلد بدون اسم حقيقي؟
يمنحك الاكتشاف slug. يتطلب تحويل slug إلى اسم منشور وإصدار حالي وعدد تثبيت مطابقته مع دليل البرنامج المساعد، وليس كل مكون إضافي موجودًا في دليل واحد.
إن slug بدون إدخال مطابق يعني دائمًا واحدًا من ثلاثة أشياء. إنه مكون إضافي متميز يُباع خارج WordPress.org، والذي يصف معظم منشئي الصفحات التجارية والمكونات الإضافية وأنظمة العضوية. إنه مخصص، مكتوب لهذا الموقع من قبل من قام بإنشائه. أو تمت إعادة تسمية المجلد ببساطة، وهو ما يفعله بعض مالكي المواقع عمدًا.
وهذه في حد ذاتها إشارة مفيدة. يقوم الموقع الذي تكون قائمة مكوناته الإضافية في الغالب slugs بتشغيل برامج تجارية أو مخصصة، وهذا يخبرك بشيء عن الميزانية التي تقف وراءه قبل أن تطرح سؤالاً على أي شخص.
كيف تحصل على صورة أكثر اكتمالا؟
مسح أكثر من صفحة واحدة. هذه هي العادة الوحيدة ذات القيمة الأعلى، ولا تكلف شيئًا
- الصفحة الرئيسية للأثاث على مستوى الموقع: التحليلات، ولافتات الموافقة، ومنشئي الصفحات، وشرائح التمرير.
- منشور مدونة للمكونات الإضافية من جانب المحتوى: المنشورات ذات الصلة، وجدول المحتويات، والمشاركة الاجتماعية، وأنظمة التعليق.
- منتج أو صفحة تسعير للتجارة: البرنامج الإضافي للمتجر، بوابات الدفع، محولات العملات.
- صفحة اتصال للنماذج والخرائط والحماية من البريد العشوائي.
خذ الاتحاد. وحتى في هذه الحالة، فهي أرضية، ولكنها أعلى بكثير مما تعطيه أي صفحة واحدة.
ال /wp-json/ الفهرس يستحق المشاهدة أيضًا عند تمكينه. تظهر المكونات الإضافية التي تسجل مسارات REST هناك حسب مساحة الاسم بغض النظر عما تم تحميله من الواجهة الأمامية، لذلك تلتقط بعضًا مما تفوته مسارات الأصول
curl -s https://example.com/wp-json/ | grep -o '"namespace":"[^"]*"' | sort -u
هل مسح موقع شخص ما '؛ مقبول؟
قراءة صفحة عامة هي طلب عادي. يظهر في سجل الوصول إلى الموقع '؛ تمامًا مثل الزيارة من المتصفح، ولا يقوم بتسجيل الدخول أو إرسال أي شيء أو لمس منطقة الإدارة. ال وثائق أمان ووردبريس يهتم بما يمكن أن يفعله الطلب الموثق أو الاستقصائي، وليس بما تنشره الصفحة طوعًا لكل زائر.
حيث يصبح الأمر أكثر وضوحًا هو القصد. قائمة المكونات الإضافية هي استطلاع إذا استخدمتها كواحدة: الإصدار القديم من البرنامج الإضافي الذي يحتوي على ثغرة أمنية معروفة هو بالضبط ما يبحث عنه المهاجم. وهذا سبب لإبقاء المكونات الإضافية الخاصة بك محدثة وليس سببًا للتظاهر بأن المعلومات سرية، حيث يمكن لأي شخص قراءة نفس الصفحة. إذا كنت تقوم بمراجعة موقع لا تملكه، فالتزم بما تخبرك به الصفحة واتركه هناك.
ما هي النتيجة جيدة ل
يتم استخدامه ضمن حدوده، حيث يجيب فحص المكونات الإضافية الخارجية على الأسئلة الحقيقية بسرعة. ما هو منشئ الصفحات الذي يستخدمه هذا الموقع، حتى أتمكن من الاقتباس لإجراء التغييرات. هل هذا المتجر على WooCommerce أو شيء مستضاف. ما هو البرنامج الإضافي للنموذج، حتى أتمكن من مطابقته. هل يقوم هذا المنافس بتشغيل نفس مكدس تحسين محركات البحث الذي نقوم به. هل يقوم موقع التدريج الخاص بي بتحميل مكون إضافي عن طريق الخطأ قمت بتعطيله محليًا.
ما لا يمكنه فعله هو إنتاج مخزون. لذلك تحتاج إلى المشرف، wp plugin list انتهى WP-CLI، أو شخص لديه تسجيل الدخول.
إذا كان السؤال هو ما الذي يعرض الصفحة وليس ما الذي يتم تحميله عليها، فهذا هو السؤال كاشف موضوع ووردبريس، الذي يقرأ الموضوع '؛s الخاصة style.css للاسم والإصدار والوالد. وعندما تكون أنت من ينشر مكونًا إضافيًا، فإن مولد ريدمي يكتب readme.txt وهذا ما يقرر كيفية قراءة قائمة الدليل الخاصة بالمكون الإضافي '؛.



