Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 70

‫من خالل القرصنة واقع الحياة‬

‫كيف هاك مثل‬


‫سيناريوهات‬
‫السيطرة على أسرار القرصنة‬

‫حقوق النشر © ‪ Sparc FLOW 2017‬جميع الحقوق محفوظة‪ .‬ال يجوز إعادة إنتاج أي جزء من هذا المنشور أو توزيعه أو إرساله بأي شكل أو بأي وسيلة ‪ ،‬بما في‬
‫ذلك التصوير أو التسجيل أو غير ذلك من الوسائل اإللكترونية أو الميكانيكية ‪ ،‬دون الحصول على إذن كتابي مسبق من الناشر ‪ ،‬إال في حالة اقتباسات موجزة يتم‬
‫تضمينها في المراجعات النقدية وبعض االستخدامات غير التجارية األخرى المسموح بها بموجب قانون حقوق النشر‪ISBN 978-1-5204-7851-7 .‬‬

‫مقدمة هذا ليس كتا ًب ا عن أمن المعلومات‪ .‬بالتأكيد ليس عن تكنولوجيا المعلومات‪ .‬هذا كتاب عن القرصنة‪ :‬على وجه التحديد ‪ ،‬كيفية التسلل إلى شبكة الشركة وتحديد‬
‫موقع بياناتها األكثر أهمية والتعامل معها‪ J‬دون إطالق أي أداة أمان جديدة المعة تهدرها الشركة لميزانيتها‪ .‬سواء كنت من المتسللين األخالقيين المتمرسين أو مجرد‬
‫متحمس لإلحباط من الكتب القديمة والتقارير اإلعالمية الخاطئة ‪ ،‬فهذا الكتاب مناسب لك بالتأكيد‪ .‬سنقوم بإعداد هدف مزيف ‪ -‬ولكنه واقعي بما فيه الكفاية ‪ -‬وسنتابع‬
‫بالتفصيل الخطوات الرئيسية لتحقيق ‪ 0wn‬الشركة‪ :‬إنشاء برامج ضارة للتصيد ‪ ،‬وإيجاد الثغرات األمنية ‪ ،‬واستئصال مجاالت‪ ، Windows J‬وحواسب ‪p0wning‬‬
‫الرئيسية ‪ ،‬وما إلى ذلك‪ .‬لقد قمت‪ J‬بتوثيق كل أداة تقريبًا ونص مخصص‪ .‬المستخدمة‪ J‬في هذا الكتاب‪ .‬أشجعك بشدة على اختبارها وإتقان قدراتها (والقيود) في بيئة‬
‫تتحكم فيها وتملكها‪ .‬نظرً ا لطبيعة هذا الكتاب ‪ ،‬فمن السخف أن نتوقع منه أن يغطي كل أسلوب من عمليات القرصنة التي يمكن تخيلها ‪ ،‬رغم أنني سأبذل قصارى‬
‫جهدي لتقديم أكبر عدد ممكن من األمثلة مع الحفاظ على الهدف المنشود من الكتاب‪ .‬سوف أقوم بتجاوز بعض المفاهيم مثل ‪ IPSEC‬و ‪ TOR‬و ‪ NTLM‬من خالل‬
‫شرح موجز لكيفية عملها وماذا تعني في سياق سيناريو القرصنة‪ .‬إذا كنت ترغب في التعمق أكثر ‪ ،‬أنصحك بشدة باتباع الروابط التي أقدمها‪ J‬بالقرب من كل عنصر‬
‫واستكشاف المفاهيم المظلمة والممتعة‪ J‬وراء كل تقنية وأداة‪ .‬مالحظة‪ :‬البرامج النصية المخصصة واألوامر الخاصة الموثقة في هذا الكتاب متاحة للجمهور على‬
‫‪www.hacklikeapornstar.com‬‬

‫إخالء مهم‪ :‬األمثلة في هذا الكتاب خيالية تما ًم ا‪ .‬األدوات والتقنيات المقدمة مفتوحة المصدر ‪ ،‬وبالتالي متاحة للجميع‪ .‬يستخدمهم المعتدون بانتظام في المهام ‪ ،‬لكنهم‬
‫يفعلون ذلك أيضً ا‪ .‬إذا كنت قد واجهت مؤخرً ا خر ًق ا ووجدت تقنية أو أداة موضحة في هذا الكتاب ‪ ،‬فهذا ال يدين بأي شكل من األشكال مؤلف هذا الكتاب وال يعني‬
‫ضمنا ً أي صلة بين المؤلف والجناة‪ .‬أي إجراءات و ‪ /‬أو أنشطة متعلقة بالمواد الواردة في هذا الكتاب هي مسؤوليتك وحدك‪ .‬يمكن أن يؤدي إساءة استخدام المعلومات‬
‫الواردة في هذا الكتاب إلى توجيه تهم جنائية ضد األشخاص المعنيين‪ .‬لن يتحمل المؤلف المسؤولية في حالة توجيه أي تهم جنائية ضد أي فرد يسيء استخدام‬
‫المعلومات الواردة في هذا الكتاب لخرق القانون‪ .‬ال يشجع هذا الكتاب القرصنة وتكسير البرامج و ‪ /‬أو القرصنة‪ .‬جميع المعلومات الواردة في هذا الكتاب هي‬
‫ألغراض تعليمية فقط‪ .‬سوف يساعد الشركات‪ J‬على تأمين شبكاتها ضد الهجمات‪ J‬المقدمة ‪ ،‬وسوف يساعد المحققين في تقييم األدلة التي تم جمعها‪ J‬خالل أي حادث‪ .‬إن‬
‫إجراء أي محاوالت أو اختبارات لالختراق دون إذن كتابي من مالك نظام الكمبيوتر أمر غير قانوني‪.‬‬

‫‪ .1‬السالمة‪ J‬أوالً "أنا عبارة عن قائمة فارغة ‪ -‬وبالتالي يمكنني إنشاء‪ J‬أي شيء أريده"‪ .‬توبي ماغواير إذا كان هناك قسم يتجاهله معظم الكتب ومواقع المدونات التي‬
‫تتعرض للقرصنة حاليًا ‪ ،‬فهو قسم "البقاء آم ًن ا" على القرصنة‪ .‬بمعنى آخر ‪ ،‬يفشلون في تفصيل المخططات‪ J‬والتقنيات التي يمكن أن يستخدمها الهاكر العادي لضمان‬
‫مستوى معين من عدم الكشف عن هويته وأمانه‪ .‬قد تكون أفضل المتسللين في العالم ‪ ،‬ولكن إذا لم تتمكن من التحكم في بصمتك على اإلنترنت ومحو دربك بشكل‬
‫صحيح ‪ ،‬فسوف تتعطل وتحرق ببساطة‪ .‬لذلك قبل تجربة التقنيات الجديدة ‪ ،‬سنغطي بالتفصيل كيفية تكديس طبقات األمان لضمان أقصى قدر من الحماية‪ .‬إذا كنت‬
‫ترغب في البدء في االختراق على الفور ‪ ،‬فال تتردد في االنتقال إلى القسم ‪ ، 3‬ولكن تأكد من العثور على الوقت المناسب‪ J‬لقراءة هذا القسم في وقت الحق‪.1.1 .‬‬
‫قائمة فارغة يمكن تلخيص القاعدة الوحيدة األكثر فاعلية لسالمة القرصنة في سبع كلمات‪" :‬ابدأ من نقطة الصفر في كل مرة"‪ .‬يعني مصطلح "من الصفر" الحصول‬
‫على كمبيوتر جديد ونقطة اتصال جديدة وعنوان ‪ IP‬جديد وخوادم جديدة لكل اختراق‪ .‬سيبحث المحققون عن األنماط الشائعة بين الهجمات‪ .‬سيحاولون تجميع أدلة‬
‫صغيرة معً ا للحصول على صورة أكبر وأكثر وضوحً ا‪‘ :‬هل رأينا عنوان ‪ IP‬هذا في هجوم آخر؟ ما المتصفح الذي كان يستخدمه في ذلك الوقت [‪]1‬؟ أي حساب‬
‫‪ Gmail / Yahoo / Microsoft / Facebook‬تمكن من الوصول إليه؟ ال تفكر لثانية واحدة في أن وكاالت إنفاذ القانون تعمل وحدها عند إجراء التحقيق‪ .‬يمكنهم‬
‫الوصول إلى مجموعة من المعلومات ‪ ،‬بد ًء ا من سجل مزود خدمة اإلنترنت المحلي إلى مواقع الشبكات االجتماعية‪ .‬للتعرف على مشاريع المراقبة الضخمة التي تقوم‬
‫بها الحكومات (الواليات المتحدة األمريكية وفرنسا وكندا والمملكة المتحدة ‪ ،‬إلخ) ‪ ،‬راجع قصة إدوارد سنودن [‪ ]2‬واستعد لتكون منده ًشا‪ .‬البدء من جديد في كل مرة‬
‫يساعد في الحفاظ على كفن من الغموض حول القطع األثرية التي جمعها‪ J‬المحقق ‪ ،‬وسوف يمنعهم من الجمع بين العناصر لتتبعهم مرة أخرى إلى هويتك الحقيقية‪.‬‬
‫‪ . 1.2‬عدم الكشف عن هويتك على الشبكة إن النتيجة األولى لمبدأ القائمة الفارغة هي عدم استخدام عنوان ‪ IP‬للمنزل ‪ /‬الجامعة‪ / J‬العمل‪ .‬أبدا‪ .‬وال حتى مع وجود‬
‫طبقتين من عدم الكشف عن هويته‪ .‬افترض دائ ًم ا أنه في مرحلة ما ‪ ،‬يمكن أن يؤدي وجود خلل صغير في النظام إلى تسريب عنوان ‪ IP‬الحقيقي الخاص بك إلى‬
‫محقق‪ :‬التفاصيل الدقيقة التي حذفتها‪ J‬أو حدود بعض التكنولوجيا أو أنظمة ذكاء القوى العظمى التابعة لوكالة األمن القومي‪ .‬إن االتصال الصغير بالعالم الحقيقي هو كل‬
‫ما يتطلبه األمر لتحفيز وكيل إنفاذ القانون على التنقيب بشكل أعمق وإصدار أوامر بالضغط عليك لالعتراف‪ .‬نحن ال نريد ذلك‪ .1.2.1 .‬الطبقة األولى ‪ -‬المزيج الذي‬
‫يجب أن تستخدمه ‪ ، IP‬إذن؟ أوصي بشدة بنقاط اتصال ‪ Wi-Fi‬العامة مثل أماكن الوجبات السريعة (ستاربكس ‪ ،‬أوليمبوس ‪ ،‬ماكدونالدز ‪ ،‬إلخ) أو أماكن التجمع العامة‪J‬‬
‫الكبيرة مثل مراكز التسوق ومحطات القطارات وما إلى ذلك ‪ ،‬طالما يوجد عدد كافٍ من الناس إلخفائك عن ذلك الكاميرات‪ .‬عند الوصول إلى نقطة اتصال ‪، Wi-Fi‬‬
‫قد يطلبون منك معلومات شخصية ‪ ،‬ولكن بالطبع يمكنك فقط إدخال أي معلومات تريدها‪ .‬إذا طلبوا التحقق من الهاتف المحمول ‪ ،‬فاختر بقعة أخرى أو استخدم بطاقة‬
‫‪ SIM‬مسبقة الدفع ‪ -‬مدفوعة نق ًد ا ‪ -‬إذا كان لديك حق الوصول إلى واحدة‪ .‬إذا طلبوا تأكيد البريد اإللكتروني ‪ ،‬فاستخدم‪ J‬حساب‪ ."Yopmail.com" J‬إنه موقع ويب يتيح‬
‫جد ا الرتباطات التحقق من الصحة ورسائل البريد العشوائي‪ .1.2.2 .‬الطبقة الثانية ‪ -‬تهريب البيانات‬ ‫الوصول إلى صندوق بريد في غضون ثانيتين حرفيًا ‪ ،‬وهو مفيد ً‬
‫ً‬
‫مثل "بطل" الطبقة الثانية من سالمة القرصنة هي إلى حد بعيد األكثر أهمية‪ .‬تتكون عادة من شبكة نفقية تقوم بتشفير أي شيء ينتقل فيها وتحتفظ بشكل مثالي بموارد‬
‫يومية حول من قام بالوصول إلى عنوان ]‪ IP. TOR [3‬هو مشروع مجاني مفتوح المصدر يقوم بذلك‪ .‬إنها شبكة من الخوادم التي تتبادل المعلومات المشفرة‪ .‬على‬
‫سبيل المثال ‪ ،‬سيترك الطلب جهاز الكمبيوتر الخاص بك من فرنسا ‪ ،‬ويدخل في شبكة ‪ ، TOR‬ويتم تشفيره عدة مرات ‪ ،‬ويترك من خادم في الصين قبل الوصول إلى‬
‫وجهته النهائية (‪ Facebook‬و ‪ Twitter‬وما إلى ذلك)‪.‬‬

‫الخدمة التي تمت زيارتها (‪ )Facebook‬ال يمكنها رؤية عنوان ‪ IP‬األصلي ؛ يرون فقط عنوان ‪ IP‬لعقدة الخروج‪ .‬نظرً ا ألن العديد من األشخاص يستخدمون عقدة‬
‫الخروج هذه ‪ ،‬فقد يصبح ذلك مرب ًكا للغاية ألي شخص يحقق الح ًقا‪ .‬تعرف العقدة األولى عنوان ‪ IP‬الحقيقي الخاص بك (وبالتالي موقعك الحقيقي) ‪ ،‬لكنها ال تعرف‬
‫أي عقدة خروج ستنتهي باستخدامها‪ .‬إذا تم ‪ ،‬عالوة على ذلك ‪ ،‬استرداد صفحة الويب باستخدام )‪ ، SSL [4] (HTTPS‬لن تتمكن العقدة األولى من رؤية محتوى طلبك‬
‫بعد ذلك ‪ ،‬فقط عنوان ‪ IP‬الخاص بـ ‪ .Facebook‬نظرً ا لوجود عدد كبير من العقد المتاحة لترتد طلبات المستخدمين ‪ ،‬تبدو فرص الدخول إلى كل من العقدة الخبيثة‬
‫في الدخول والخروج قليلة للغاية‪ .‬رغم أن هذا صحيح ‪ ،‬فال تزال هناك طرق لكسر هوية المستخدم التي أثبتت فعاليتها إلى حد كبير‪ .‬تخيل موقع ويب ضار يقوم‬
‫بإدخال رمز في متصفح الويب الخاص بك‪ .‬تقوم الشفرة بتثبيت البرامج الضارة التي تصدر الطلبات العادية (التي ال تمر عبر ‪ )TOR‬إلى موقع ويب تسيطر عليه‬
‫الحكومة‪ .‬هذا يزيل بشكل فعال كل طبقة من الحماية ‪ TOR‬كان يوفر‪ .‬إن مثل هذه السيناريوهات تقع بالكامل في نطاق وكاالت االستخبارات أو الشركات الجادة‪.‬‬
‫عالوة على ذلك ‪ ،‬هناك شائعات‪ J‬منذ فترة طويلة بأن بعض الوكاالت الفيدرالية تتحكم في قدر كبير من العقد على شبكة ‪ ، TOR‬وبالتالي يمكنها ربط المعلومات‬
‫واإلحصائيات المختلفة من أجل تحديد مستخدمي ‪ TOR‬بشكل فريد ؛ حذار من حدود هذه الخدمة‪ .‬إذا لم يكن ‪ TOR‬هو الخيار األفضل بالنسبة لك ‪ ،‬فهناك طريقة‬
‫أخرى للذهاب هي مزود ‪ - VPN‬ويفضل أن يكون ذلك مدفوعًا [‪ ] 5‬بحيث يمكنك ضمان مستوى معين من الجودة‪ .‬الشبكة االفتراضية الخاصة (‪ )VPN‬عبارة عن‬
‫شبكة مشفرة بين جهازين أو أكثر‪ .‬يقوم موفر ‪ VPN‬بإنشاء نفق بين محطة العمل الخاصة بك وأحد الخوادم الخاصة بهم‪ .‬أي طلب تصدره من المستعرض الخاص بك‬
‫سوف يمر عبر هذا الخادم ‪ ،‬مع إخفاء عنوان ‪ IP‬الحقيقي الخاص بك في هذه العملية‪.‬‬
‫جدا للتهرب من‬‫يتم تشفير كل طلب من الكمبيوتر‪ .‬لن يعرف مزود خدمة اإلنترنت المحلي حركة المرور التي ترسلها أو عنوان ‪ IP‬الذي تتصل به ‪ ،‬وهو أمر مفيد ً‬
‫برامج الرقابة التي تضعها الوكاالت الحكومية‪ .‬في هذا اإلعداد ‪ ،‬بالطبع ‪ ،‬يعد موفر ‪ VPN‬الحلقة األضعف‪ .‬يعرف عنوان ‪ IP‬األصلي الخاص بك ‪ ،‬وبالتالي موقعك‬
‫(حتى اسمك ‪ ،‬إذا دفعت ببطاقة االئتمان الخاصة بك)‪ .‬ومع ذلك ‪ ،‬تضمن بعض خدمات‪ VPN J‬استضافة خوادمهم في بلدان محايدة لمعظم وكاالت إنفاذ القانون‬
‫واالحتفاظ بسجالت صفرية لما يحدث على خوادمهم‪ .‬تحقق من ‪ /https://www.privacytools.io‬للحصول على بعض األمثلة‪ .1.2.3 .‬الطبقة الثالثة ‪ -‬الموقف‬
‫األخير للتلخيص ‪ ،‬نحن متصلون بنقطة اتصال عامة ونصدر جميع طلباتنا من خالل ‪ TOR‬أو خادم ‪ .VPN‬قد تعتقد أن هذا مثالي ‪ ،‬ولكن هناك مشكلة رئيسية واحدة‬
‫في هذا اإلعداد‪ :‬عرض النطاق الترددي بطيء ج ًد ا في تنفيذ أي هجوم حقيقي‪ .‬باإلضافة إلى ذلك ‪ ،‬ستجعل تقنيات إخفاء عناوين ‪ IP‬من الصعب استخدام بعض‬
‫األدوات والتقنيات الح ًق ا (مسح المنفذ وقذائف عكسية ‪ ،‬إلدراج عدد قليل منها)‪ .‬هنا يأتي دورنا النهائي‪ :‬خادم افتراضي خاص (‪ )VPS‬متصل مباشرة باإلنترنت‪.‬‬
‫سنتحكم في هذا الخادم من خالل رابط النطاق الترددي المنخفض الخاص بنا ونطلب منه إصدار طلبات ثقيلة لألهداف باستخدام النطاق الترددي الكبير الموجود تحت‬
‫تصرفه‪:‬‬

‫بطبيعة الحال ‪ ،‬سيتم دفع رسوم ‪ ، VPS‬المسماة "خادم البندقية األمامية" هنا ‪ ،‬في ]‪( Bitcoin. [6‬أو أي عملة أخرى مجهولة المصدر)‪ .‬في الواقع ‪ ،‬ال يوجد دليل‬
‫أكثر إقناعً ا (وأسهل في التتبع) من بيانات بطاقة االئتمان‪ .‬يمكنك العثور على قائمة بموفري قبول ‪ Bitcoin‬على عنوان ‪ URL‬التالي [‪ .]7‬يمكن لهذا الخادم استضافة‬
‫أي نظام تشغيل تشعر بالراحة معه‪ .‬على سبيل المثال ‪ ،‬يمكنك تثبيت ]‪ .Linux KALI [8‬يأتي مزو ًد ا بأدوات يدوية ‪ ،‬مما يوفر لك بعض المتاعب‪ .‬أنا شخصيا ً أفضل‬
‫أن يكون لديّ جهاز يعمل بنظام ‪ Windows‬و ‪ Linux‬لتحقيق أقصى قدر من المرونة‪ .‬هناك طريقة لتحقيق ذلك تتمثل في امتالك ‪ Windows Box‬مع جهاز‬
‫افتراضي يستضيف ‪ Linux KALI‬على سبيل المثال‪ .‬لنفترض أن المحقق يتتبع الهجوم‪ .‬سيقومون بتحديد ‪ IP‬الخاص بخادم ‪ Front Gun‬واالستيالء عليه في النهاية ‪-‬‬
‫إن أمكن ‪ -‬أو اختراقه لفحص اتصاالت ‪ IP‬الواردة‪ .‬ستصبح عناوين ‪ IP‬هذه بمثابة عقد خروج ‪ VPN‬تستخدمها‪ J‬مئات أو آالف المستخدمين اآلخرين‪ .‬يوجد موفر‬
‫‪ VPN‬في بلد محايد ال يحتفظ بالسجالت أو يمكنه الوصول إلى معلومات بطاقة االئتمان‪ .‬حتى لو كانت معجزة ‪ ،‬فقد اختاروا التعاون مع أجهزة إنفاذ القانون والتجسس‬
‫ً‬
‫موجودا في بلد آخر ويستخدمه آالف المستخدمين يوميًا‪ .‬كل هذا عبارة عن‬ ‫على مستخدميهم ‪ ،‬وسيقومون بتسليم عنوان ‪ IP‬للنقاط الساخنة العامة من المحتمل أن يكون‬
‫سلسلة طويلة من االنحدارات ‪ ،‬مما يجعل التحقيق أقل جدوى وأقل تكلفة حتى تفوق التكلفة في نهاية المطاف الضرر و (نأمل) إسقاط القضية‪ .1.3 .‬عدم الكشف عن‬
‫هويته في النظام ألن خادم ‪ Front Gun‬هو الذي يقوم بتشغيل جميع الهجمات‪ ، J‬حيث يجب عليك تنزيل وتثبيت جميع األدوات المفضلة لديك‪ .‬ليست هناك حاجة‬
‫لالحتفاظ بأي شيء على جهاز الكمبيوتر الخاص بك ‪ ،‬مما يقلل بشكل كبير من فرص االنتماء ألي سلوك ضار‪ .‬في الواقع ‪ ،‬قد يتكون الكمبيوتر المحلي الخاص بك‬
‫فقط من نظام تشغيل مؤقت تم تمهيده عبر مفتاح ‪ USB‬مباشر [‪ .] 9‬وبهذه الطريقة ‪ ،‬سيتم مسح أي بيانات حتى مرتبطة بك بالهجوم بعد كل عملية إعادة تشغيل‪ .‬فيما‬
‫يتعلق باختيار توزيعة ‪ ، Linux‬إذا كنت تستخدم شبكة ‪ ، TOR‬تفضل ]‪ WHONIX [10‬أو ]‪ ، TAILS [11‬التي تغلف كل حركة المرور داخل شبكة ‪ .TOR‬خالف‬
‫ذلك ‪ ،‬قد يكون ‪ Linux KALI‬هو الخيار األسهل ‪ ،‬على الرغم من أن أي توزيع ‪ Linux‬سيفعل ‪ ،‬شريطة أن تتمكن من تثبيت عميل ‪ VPN‬عليه‪ .2 .‬الحصول على‬
‫"هناك تصدع في كل شيء ‪ ،‬وهذا هو كيف يحصل الضوء‪ ".‬ليونارد كوهين لقد وجدت المكان المثالي للحصول مجهول على اإلنترنت مجانا ً ‪ ،‬وقمت بإنشاء شبكة‬
‫‪ ، TOR / VPN‬ولديك شبكة افتراضية خادم خاص ليكون بمثابة بندقية الجبهة‪ .‬تشعر بالضخ أنت جاهز! سيكون هدفنا (المزيف) شركة تدعى ‪Slash & Paul’s‬‬
‫‪ . Holding‬إنه بنك استثماري يدير األصول لبعض أغنى العمالء في العالم‪ .‬إنهم ليسوا شريرين بشكل خاص‪ .‬يحدث فقط لديهم مبالغ كبيرة من المال‪ .‬قبل إطالق‬
‫أسطولنا من األدوات والحيل عليها ‪ ،‬دعونا نتوقف ونتفق على أهدافنا (غير) المقدسة‪ :‬نريد أن نحصل على رسائل المدير التنفيذي اإللكترونية ‪ ،‬ألن هذا مجرد‬
‫كالسيكي! نود أيضً ا سرقة بيانات األعمال والموارد البشرية وبيعها‪ :‬أرقام الحسابات ‪ ،‬وبيانات بطاقة االئتمان ‪ ،‬ومعلومات الموظف ‪ ،‬إلخ‪ .‬ولكن األهم من ذلك كله ‪،‬‬
‫أننا نريد الطيران بالكامل تحت الرادار‪ .‬البنية التحتية لـ ‪ ، SPH‬بطريقة واسعة ومبسطة ‪ ،‬ربما تبدو كما يلي‪:‬‬

‫ً‬
‫تعقيدا‪ .‬لكننا سنجد دائمًا نفس العناصر العامة‪ :‬منطقة منزوعة السالح (‪ ، )DMZ‬تسمى‬ ‫هذا المخطط هو تبسيط مفرط ‪ ،‬بالطبع ‪ ،‬ألن الشبكة الحقيقية ربما تكون أكثر‬
‫فيما يلي ‪ . Bluebox‬عادة ما تستضيف الخوادم التي تواجه اإلنترنت ‪ ،‬مما يجعلها بكل المقاييس منطقة "غير موثوق بها" ‪ ،‬على الرغم من أن بعض الشركات تصر‬
‫على منحها الوصول الكامل تقريبًا إلى الشبكة الداخلية‪ ، Greenbox .‬يمثل الشبكة الداخلية‪ .‬تستضيف محطات العمل وتطبيقات األعمال وخوادم البريد اإللكتروني‬
‫ومشاركة الشبكة ‪ ،‬إلخ‪ .‬ثم هناك المنطقة المظلمة ‪ -‬نحن ببساطة ال نعرف ما يوجد هناك‪ .‬كل هذا يتوقف على تكوين شبكة ‪ .SPH‬في مهمة سهلة ‪ ،‬سيتم استضافة‬
‫معظم الخوادم المهمة في ‪ ، Greenbox‬مما يقلل من المساحة المظلمة إلى شريحة صغيرة تحتوي على بعض الكاميرات والهواتف‪ .‬ومع ذلك ‪ ،‬فإن المزيد والمزيد‬
‫من الشركات تتجه نحو حماية أصولها األكثر أهمية وراء طبقات جدار الحماية ‪ ،‬وإنشاء شبكات صغيرة ومعزولة متعددة‪ .‬لكن دعونا ال نمضي قدما ً طويالً ‪ ،‬ونركز‬
‫بدالً من ذلك على الخطوة التالية المباشرة‪ :‬بناء عش دافئ داخل ‪ Bluebox‬أعاله ‪ -‬أو حتى صندوق ‪ ، Greenbox‬إذا كنا محظوظين بما فيه الكفاية‪ .‬لدينا العديد من‬
‫الخيارات للقيام بذلك‪ :‬الخداع‪ .‬إلى حد بعيد الخيار األكثر شعبية‪ .‬سوف نرى لماذا في بعض الشيء‪ .‬مهاجمة خادم عام في ‪ .Bluebox‬أصعب ‪ ،‬لكنها فعالة‪ .‬أشكال‬
‫الباطنية للهندسة االجتماعية التي تتطلب عصي ‪ USB‬وهمية ‪ ،‬وزرع األجهزة ‪ ،‬وما إلى ذلك‪ .‬سنترك ذلك للمتسللين بدوافع حقيقية‪ .2.1 .‬يجب أن تصيدهم جميعًا‪.‬‬
‫التصيد االحتيالي هو خداع مستخدم للقيام بعمل من شأنه أن يضعف أمن الشركة بطريقة ما‪ :‬النقر على الرابط ‪ ،‬التخلي عن كلمات المرور الخاصة بهم ‪ ،‬تنزيل‬
‫البرامج التي تبدو غير ضارة ‪ ،‬توصيل األموال إلى حساب معين ‪ ،‬إلخ‪ .‬يستهدف هجوم التصيد الكالسيكي مئات أو آالف المستخدمين لضمان مستوى من النجاح‪.‬‬
‫يمكن أن تحقق حمالت‪ J‬التصيد المستهدفة نجاحً ا يصل إلى ‪ .]12[ ٪30‬قد تستهدف بعض الحمالت األكثر ثقاًل عد ًدا قليالً من الموظفين الرئيسيين الذين لديهم رسائل‬
‫مخصصة للغاية ‪ ،‬مثل التصيد العشوائي‪ .‬من وجهة نظر المتسلل ‪ ،‬يعتبر هجوم التصيد االحتيالي هو الهجوم البسيط لسبب واحد بسيط‪ :‬إذا نجحنا ‪ ،‬فنحن نتحكم في‬
‫جهاز يقع داخل ‪ . Greenbox‬إنه مثل الجلوس داخل المكتب مع حساب على شبكة الشركة‪ .‬ال يقدر بثمن! اآلن في حملة التصيد االحتيالي ‪ ،‬نحتاج إلى بعض العناصر‬
‫األساسية‪ :‬قائمة الموظفين وعناوين بريدهم اإللكتروني فكرة لطيفة البريد اإللكتروني‪ .‬منصة إرسال البريد اإللكتروني‪ .‬ملف ضار أنيق يتيح لنا الوصول إلى جهاز‬
‫المستخدم‪ .‬دعونا نتعامل معهم‪ J‬بالترتيب‪ . 2.1.1 .‬رسائل البريد اإللكتروني رسائل البريد اإللكتروني تقريبًا ‪ ،‬لدى كل شركة موقع ويب عام ‪ ،‬يمكننا تصفحه للحصول‬
‫على معلومات أساسية عن أعمالها ‪ ،‬ومجاالت خبرتها ‪ ،‬ومعلومات االتصال‪ :‬عناوين البريد اإللكتروني العامة ‪ ،‬وأرقام الهواتف ‪ ،‬إلخ‪ .‬عنصرين رئيسيين‪ :‬اسم‬
‫المجال المستخدم من قبل خدمة البريد اإللكتروني الخاصة به (والتي قد تكون أو ال تكون هي نفس عنوان موقع الويب الرسمي) تنسيق البريد اإللكتروني‪ :‬على سبيل‬
‫المثال ‪ ،‬هل هو '‪ name.s‬رحل@‪ 'company.com‬أو '‪first_letter_s " company.com‬؟ عند زيارة صفحة الويب ‪، www.sphassets.com/contact‬‬
‫نجد عنوان اتصال عام‪ .marketing@sph-assets.com :‬هذا في حد ذاته ليس مفي ًد ا للغاية ‪ ،‬ولكن إرسال رسالة بريد إلكتروني إلى هذا العنوان [‪ ]13‬سيحصل‬
‫على رد من شخص حقيقي يعمل في قسم التسويق‪.‬‬

‫عظيم‪ .‬حصلنا على قطعتين من المعلومات‪ J‬القيمة من هذا البريد اإللكتروني‪ :‬تنسيق عنوان البريد اإللكتروني‪ :‬الحرف األول من اللقب متبوعً ا باالسم األول‪:‬‬
‫‪ . pvilma@sphassets.com‬المخطط الرسومي للبريد اإللكتروني‪ :‬الخط االفتراضي ‪ ،‬مخطط األلوان للشركة ‪ ،‬تنسيق التوقيع ‪ ،‬إلخ‪ .‬هذه المعلومات‪ J‬أساسية ‪ ،‬ألننا‬
‫اآلن بحاجة فقط إلى االسم الكامل لألشخاص الذين يعملون هناك الستنتاج عنوان بريدهم اإللكتروني‪ .‬بفضل ‪ Facebook‬و ‪ Twitter‬و ‪ ، LinkedIn‬هذه قطعة من‬
‫الكعكة‪ .‬نحن فقط نبحث عن صفحة الشركة ومعرفة األشخاص الذين يحبونها أو متابعتها أو مشاركة محتواها‪ .‬تعتبر ]‪ TheHarvester [14‬أداة مثيرة لالهتمام‬
‫يمكنك استخدامها ألتمتة بعض هذه العملية ‪ ،‬والتي تجمع عناوين البريد اإللكتروني في نتائج بحث ‪ .Google / Bing / Yahoo‬ومع ذلك ‪ ،‬فإن اللجوء إلى وسائل‬
‫دقة وحداثة‪ . 2.1.2 .‬محتوى البريد اإللكتروني لحملة تصيد المعلومات الخاصة بنا ‪ ،‬نود دعوة األفراد لفتح ملف ينفذ برنامجً ا‬ ‫التواصل االجتماعي يعطي أكثر النتائج ً‬
‫ضارً ا‪ .‬لذلك ‪ ،‬يجب أن يكون بريدنا اإللكتروني مثيرً ا لالهتمام بما يكفي لدفع الناس إلى فتحه على الفور ‪ ،‬وليس فقط التثاؤب واألرشفة‪ .‬ستجد أدناه بعض األفكار ‪،‬‬
‫حاد ا في المبيعات‪ .‬فاتورة عاجلة لتسوية على الفور‪ .‬أحدث تقرير بلومبرج‪.‬‬‫لكنني متأكد من أنه يمكنك التوصل إلى شيء أكثر دهاء‪ :‬أحدث التقارير تظهر انخفاضً ا ً‬
‫نتائج مسح المساهمين‪ .‬السيرة الذاتية لمدير جديد للمقابلة‪ .‬يجب أن يكون محتوى البريد اإللكتروني مختصراً إلى حد ما ‪ ،‬وأن يحاكي تنسيق البريد اإللكتروني للشركة‬
‫الذي حددناه مسب ًق ا‪ .‬قد يكون عنوان مصدر البريد اإللكتروني أي اسم وهمي يمكنك التوصل إليه‪ .‬في الواقع ‪ ،‬سوف تتيح لك معظم خوادم البريد اإللكتروني تحديد أي‬
‫عنوان مصدر دون إجراء عمليات التحقق المناسبة‪ .‬يحتوي اإلنترنت على عدد كبير من خوادم ‪ SMTP‬المفتوحة التي يمكننا استخدامها إلرسال رسائل البريد‬
‫اإللكتروني بحرية ‪ ،‬ولكن يمكننا بسهولة إعداد خادم البريد اإللكتروني الخاص بنا ‪ ،‬والذي سيتم االتصال بـ ‪ sph-assets.com‬ودفع رسائل الخداع‪ .‬أداة ‪Gophish‬‬
‫]‪ [15‬هي أداة شاملة وآلية للقيام بذلك‪ .‬اتبع اإلرشادات الموجودة على موقع الويب الخاص بهم لتنزيل النظام األساسي وتثبيته‪ .‬بمجرد تشغيله ‪ ،‬يمكنك البدء في إنشاء‬
‫حملتك‪ .‬نبدأ بتكوين "إرسال ملف التعريف"‪ :‬عنوان البريد اإللكتروني المصدر وخادم ‪( SMTP‬مضيف محلي)‪ .‬من الناحية المثالية ‪ ،‬نريد عنوان بريد إلكتروني قريبًا‬
‫من ‪ ، IT_support@sph-assets.com‬ومع ذلك ‪ ،‬هناك فرصة معقولة ألن خوادم البريد اإللكتروني الخاصة بشركة ‪ SPH‬تمنع أي بريد إلكتروني وارد مع تعيين‬
‫مصدر على ‪ ، xxx@sph-assets.com‬األمر الذي يجعل الشعور بالكمال‪ .‬يجب أن تنشأ جميع رسائل البريد اإللكتروني الواردة من "@ ‪ "sphassets.com‬من‬
‫داخل الشبكة الداخلية وليس من اإلنترنت‪ .‬وبالتالي ‪ ،‬في قائمة "إرسال ملفات التعريف" ‪ ،‬نحتاج إلى تحديد اسم مجال آخر ‪ ،‬مثل ‪ .sph-group.com‬ال يلزم وجود‬
‫اسم المجال هذا إلرسال البريد اإللكتروني‪ .‬ال تهتم بإنشائه‪ .‬عالوة على ذلك ‪ ،‬ال يهتم األشخاص عاد ًة بمرسل البريد اإللكتروني طالما وضعنا اسمًا مستعارً ا‪IT" :‬‬
‫‪>Support" <it-support@sph-group.com‬‬
‫نضيف مستخدمين نريد استهدافهم‪ J‬في قائمة "المستخدمون والمجموعات" ‪ ،‬ثم ننتقل إلى "قوالب البريد اإللكتروني" لكتابة محتوى رسالتنا‪:‬‬

‫نحن نصمم محتوى البريد اإللكتروني بطريقة تشبه البريد اإللكتروني الذي تلقيناه من المسوق (نفس التوقيع ‪ ،‬نفس مخطط األلوان ‪ ،‬نفس الخط ‪ ،‬إلخ)‪ .‬ستدعو رسالة‬
‫البريد اإللكتروني المستخدمين إلى النقر على رابط يقوم بتنزيل ملف‪ .‬سيتم ملء الرابط تلقائيًا بواسطة ‪ GoPhish‬بفضل المتغير {{‪ .}}URL.‬إن تضمين رابط بدالً من‬
‫إرفاق ملف ضار بشكل مباشر يقلل من فرص اإلمساك بفلتر البريد العشوائي‪ .‬نقوم بتسجيل اسم ‪ DNS‬المجاني لخادم ‪ Front Gun‬الخاص بنا على‬
‫‪ ./http://www.noip.com‬شيء مثل ‪ sphgroup.ddns.net‬جيد بما فيه الكفاية‪ .‬نحتاج إلى تحديد اسم ‪ DNS‬هذا كقيمة للمتغير {{‪ }}URL.‬عند إطالق الحملة‬
‫الح ًقا‪ .‬نظرً ا ألننا ال نحتاج إلى خداع المستخدمين إلعطائنا بيانات اعتمادهم ‪ ،‬فإننا ال نهتم بمحتوى صفحة الويب‪ .‬سنقوم تلقائيًا بتنزيل الملف ‪ ،‬ثم نعيد توجيهه إلى‬
‫موقع ‪ SPH‬الحقيقي‪ .‬في قائمة "الصفحة المقصودة" في ‪ ، Gophish‬نلصق الشفرة التالية‪:‬‬

‫حملة التصيد جاهزة لإلطالق ‪ ،‬باستثناء القليل من التفاصيل‪ :‬البرامج الضارة‪ .‬هذا سيكون موضوع الفصل التالي‪.‬‬
‫ضاروحدات الماكرو (رمز ‪ )VBA‬عندما‬
‫ملفتنفيذ‬
‫اعتادوا‪.‬على‬
‫‪2.1.3‬‬
‫هناكوثيقة‪.‬‬
‫العديد من االحتماالت حول أي نوع من‬ ‫فتح‬

‫بسرعة) ‪،‬‬
‫تستطيع (‪exe.‬‬ ‫ملف أنك‬
‫قابل للتنفيذ‬ ‫متأكد من‬ ‫نرسل أنا‬
‫أهدافنا‪.‬‬ ‫سيدأن‪، VBA‬‬ ‫ملفكنت‬
‫يمكننا‬ ‫إذا‬

‫‪، Front Gun]16‬‬


‫بخادم‬ ‫يتصل‬
‫جدا [‬ ‫إلىهورمز‬
‫مشبوه‬ ‫التوصل‬
‫ذلك ‪،‬‬ ‫ومع‬
‫ينفذها على المصابين‬ ‫تجاهلها‪ ،‬ثم‬
‫من قبل‬ ‫وسيتماألوامر‬
‫‪،‬يسترد‬

‫قليالمن‬
‫شيءكوب‬
‫ليس لي‬ ‫سوفبالتأكيد‬
‫نذهب مع‬ ‫‪ VBA‬هو‬ ‫ذلك ‪ ،‬كما‬
‫اإللكتروني‪.‬‬ ‫عمالءومع‬
‫البريد‬ ‫الحاسوب‪.‬‬
‫جميع‬

‫الشاي ‪ ،‬وسوف تعتمد على توفير إطار التلقائي‬


‫يحتوي على تعليمات برمجية ضارة‬ ‫بيانات إكسل‬
‫‪Metasploit‬‬ ‫ذكي‪ :‬جدول]‪[17‬‬

‫‪ Linux‬ل‪.Kali‬‬
‫علىاألوامر‬
‫وجلب‬ ‫الخادم لدينا ‪،‬‬
‫افتراضي‬ ‫العودة إلى‬
‫تثبيته بشكل‬ ‫أن الهواتف ‪ .‬يتم‬
‫تنفيذ ‪ ،‬ويرسل النتيجة مرة أخرى‪ :‬قذيفة عكسية‪.‬‬
‫نظرً ا ألننا نريد اختبار الكود أوالً ‪ ،‬فقد أنشأنا ‪a‬‬
‫‪ VBA )1‬ساللة نقية‬
‫المستمع على خادم ‪ Front Gun‬باستخدام أداة ‪ .Netcat‬أنه‬
‫‪ Visual Basic‬هي لغة برمجة يمكن أن تكون‬
‫وغالبا ما تسمى سكين الجيش السويسري القراصنة‪ .‬انها ببساطة‬
‫‪، Office‬‬
‫الخام ‪ ،‬لكنه يمكن أيضا‬ ‫‪(Word‬المقبس‬ ‫‪، Excel‬‬
‫اتصاالت‬ ‫مستنداتويستقبل‬
‫مضمن في يرسل‬
‫الشركات‬
‫عكسي ‪ ،‬نقل الملفات ‪،‬‬ ‫بكثرة في‬
‫غالف‬ ‫ذلك)‪ .‬يستخدم‬
‫للحصول على‬ ‫وما إلى‬
‫استخدامها‬ ‫باور بوينت ‪،‬يمكن‬
‫‪، 443‬وينتظر وصوله‬
‫المنفذوبالتالي‬ ‫البيانات‪.‬هذا األمر‬
‫الموظفين ‪،‬‬ ‫إلخ‪ .‬يفتح‬
‫العالم لمعالجة‬

‫روابط‪.‬‬

‫بعد ذلك ‪ ،‬نستخدم ‪ msfvenom‬إلطار عمل ‪ Metasploit‬إلنشاء حمولة ‪ VBA‬ضارة‪.‬‬

‫سيؤدي ذلك إلى إنشاء حمولة عكسية للعمارة ‪ ، x86‬دون أي تشفير خاص (عام ‪ /‬بال)‪ .‬نقوم بنسخ ‪ /‬لصق الشفرة في ماكرو ‪ :Excel‬إذا فحصنا الرمز ‪gen‬‬

‫إذا فحصنا الرمز الذي تم إنشاؤه ‪ ،‬فإننا نفهم أنه يقوم بما يلي‪ :‬تشغيل الحمولة عند فتح المستند عن طريق استدعاء اإلجراء ‪( Workbook_Open‬غير مرئي في‬
‫الشكل أعاله) ؛ تحديد صفيف يحتوي على الكود الفعلي الذي يؤدي االتصال العكسي وتنفيذ الكود‪ .‬في ‪ x86‬التجميع ‪ ،‬وبالتالي مستقلة عن اللغة المستخدمة‪VBA ،( J‬‬
‫‪ ، PowerShell‬وما إلى ذلك) ؛ تخصيص القليل من الذاكرة القابلة للتنفيذ ‪ ،‬والتي يتم نسخ رمز ‪ shell‬إليها ثم تنفيذها‪ .‬تتبع ‪ Metasploit‬دائمًا هذا النمط إلنشاء‬
‫حموالتها بغض النظر عن اللغة المستخدمة‪ .‬هذا يجعل من التافه لحلول مكافحة الفيروسات‪ J‬لالشارة الى أي شيء ينتج عن هذه األداة‪ .‬الكثير لشبح‪ .‬يمكننا بسهولة‬
‫إضافة وظائف التشفير التي تشفر المتغير الذي يحمل رمز القشرة (بعض اإللهام هنا [‪ ، ]18‬على سبيل المثال) ‪ ،‬ولكن دعونا نجرب طريقة جديدة تمامًا مع عوائق‬
‫أقل‪ PowerShell )2 .‬إلنقاذ ‪ PowerShell‬هي واحدة من أقوى لغات البرمجة النصية على ‪ .Windows‬لقد نمت بسرعة لتصبح األداة األكثر وثوقية للمشرف ‪-‬‬
‫وعلى نفس المنوال ‪ ،‬عشيقة القراصنة المحبوبة‪ .‬راجع بعض أدوات ‪ PS‬الرائعة ح ًقا على صفحة الويب هذه [‪ .]19‬باتباع نفس النمط كما كان من قبل ‪ ،‬نريد إنشاء‬
‫غالف عكسي في ‪ PowerShell‬ثم تضمينه في مستند ‪ .Office‬نبدأ مع البرنامج النصي ]‪.PS [20‬‬
‫‪ #‬إرسال قذيفة موجه‬

‫‪ #‬انتظر الرد ‪ ،‬نفذ أي شيء قادم ‪ ،‬إذن‬

‫حلقة الظهر‬

‫للتأكد من عمل البرنامج النصي بشكل صحيح ‪ ،‬نقوم بتنفيذه على جهاز ‪ Windows‬عادي باستخدام األمر التالي‪:‬‬

‫على خادم ‪ ، Front Gun‬أنشأنا‬


‫مستمعنا على المنفذ‬

‫‪ :: 4444‬متألق! لدينا تنفيذ عن بعد على جهاز بعيد (اختبار)‪ .‬من الناحية المثالية اآلن ‪ ،‬نود أن نسمي هذا البرنامج النصي باستخدام رمز ‪ VBA‬الذي يبدو كالتالي‪:‬‬
‫)"‪ VBA> Shell ("powershell c: \ temp \ revers.ps1‬ولكن بعد ذلك نحتاج إلى كتابة البرنامج النصي على قرص الهدف ‪ ،‬والذي قد تحريك المزيد من‬
‫اإلنذارات‪ .‬طريقة واحدة لتجنب ذلك هي استخدام ميزة ‪ PowerShell‬الرائعة لتنفيذ األوامر المضمنة! بدالً من تنفيذ ملف ‪ ،‬نقوم بتنفيذ سلسلة من التعليمات البرمجية‬
‫التي تم تمريرها كوسيطة إلى ‪ .powershell.exe‬نبدأ بإضافة شبه "‘ ؛ "في نهاية كل تعليمات‪:‬‬
‫نقوم بعد ذلك بترميز محتوى البرنامج النصي في ‪ Unicode base64‬على ‪:Linux‬‬

‫يمكننا استدعاء هذا الرمز باستخدام الوسيطة المضمّنة ‪:encodedcommand -‬‬

‫تعمل المعلمة "المخفية" على إبقاء ‪ PowerShell‬في‬

‫خلفية‪ .‬اللمسة األخيرة هي استدعاء هذا اإلجراء ‪-‬‬

‫قم بتشغيل ‪ - )( Me‬عندما يفتح المستخدم‪ J‬مستند ‪:Office‬‬

‫يمكننا تعديل قرص ‪ VBA‬هذا لجعله أقل تافهة للقراءة ‪ ،‬ولكن هذا سوف يعمل بشكل جيد‪ .‬أداة مثيرة لالهتمام للتحقق هو‬
‫‪ . Lucky Strike‬إنه يوفر ميزات رائعة مثل التشفير باستخدام مجال البريد اإللكتروني للمستخدم (@ ‪ )sphassets.com‬وخيارات أخرى مفيدة‪ .‬اتبع الدليل الشامل‬
‫للمؤلف المتوفر على العنوان التالي [‪ ]21‬لجعله يعمل‪ ) 3 .‬اإلمبراطوريات تضرب الحمولة السابقة على ما يرام ‪ ،‬ولكن لديها بعض القيود الرئيسية عندما يتعلق األمر‬
‫المواقف الميدانية‪ :‬ألننا نستخدم مآخذ الخام لبدء االتصال ‪ ،‬محطة عمل باستخدام وكيل الويب للوصول إلى اإلنترنت سوف (مرجح للغاية) فشل في االتصال مرة‬
‫أخرى‪ .‬يقبل مستمع ‪ Netcat‬لدينا اتصال واحد فقط في الوقت المناسب‪ .‬ليست مثالية لحملة تصيد تستهدف مئات المستخدمين‪ .‬القشرة التي نستخدمها أساسية إلى حد‬
‫ما‪ .‬قد يكون من المثير لالهتمام أن يكون لديك بعض األوامر التلقائية مثل بدء تشغيل ‪ ، keylogger‬أو استنشاق كلمات المرور ‪ ،‬وما إلى ذلك‪ .‬حيث أن‬
‫ضا غالفاً‬‫‪ PowerShell Empire‬سيئ السمعة‪ ]22[ J‬في متناول يدي‪ .‬إنه إطار يوفر مستم ًعا‪ J‬قادرً ا على التعامل مع العديد من المستخدمين المصابين ‪ ،‬ولكنه يوفر أي ً‬
‫يحتوي على أوامر مثيرة لالهتمام مثل الحصول على كلمات‪ J‬مرور نصية واضحة ومحورية وتصعيد االمتياز ‪ ،‬وما إلى ذلك‪ .‬اتبع منشور المدونة هذا [‪ ]23‬لتنزيل‬
‫وتثبيت ‪ ( Empire PS‬قم بنسخ مستودع ‪ Git‬بشكل أساسي وتشغيله ‪ ) install.sh‬في شاشة الترحيب ‪ ،‬انتقل إلى قائمة المستمعين (مستمعي األوامر) وسرد القائمة‬
‫االفتراضية في مكانها باستخدام األمر ‪:info‬‬

‫قم بإعداد المنفذ الصحيح والعنوان بإصدار األمر ‪( set‬تعيين المنفذ ‪ 443‬على سبيل المثال)‪ .‬ثم تنفيذ المستمع بإصدار المدى <‪ .>Listener_name‬نحتاج اآلن إلى‬
‫إنشاء رمز ‪ PowerShell‬الذي سيعيد االتصال بهذا المستمع‪ .‬سنشير إلى هذا الجزء من الشفرة باسم "‪ "stager‬أو "‪:"agent‬‬
‫يمكنك أن ترى أن الوكيل يستخدم متماثل‬

‫مفتاح التشفير لنقل الحمولة ويتعامل مع أي‬

‫الوكيل المحتمل المحدد في محطة العمل جي ًدا‪.‬‬

‫عندما يتم تنفيذ البرنامج النصي على الجهاز البعيد ‪ ،‬ونحن‬

‫الحصول على إشعار جديد على خادم ‪.Front Gun‬‬

‫سنستكشف بعض الميزات المثيرة لإلمبراطورية في الفصول التالية ‪ ،‬ولكن في غضون ذلك ‪ ،‬يمكنك التحقق من أمر المساعدة للحصول على فكرة‪ .‬لتضمين البرنامج‬
‫النصي ‪ PowerShell‬في مستند ‪ ، Excel‬سنستخدم وظيفة ‪ shell‬عادية ‪ ،‬كما هو موضح ساب ًقا ‪ ،‬أو نعتمد على ‪ LuckyStrike. 4) Meterpreter in VBA‬بدالً‬
‫من استخدام ‪ stager PowerShell Empire‬للحصول على قذيفة ‪ ،‬يمكننا أن نذهب بطريقة أخرى ‪ ،‬على سبيل المثال ‪ ،‬من خالل نشر ‪ shell meterpreter‬من‬
‫ضا نسبيًا‪ .‬كالهما يحتوي على وحدات إضافية ألداء إجراءات مثيرة لالهتمام‬ ‫إطار عمل ‪ . Metasploit‬ألغراضنا المباشرة ‪ ،‬يكون الفرق بين الالعبين اثنين منخف ً‬
‫على محطات العمل المصابة ‪ ،‬ولكن استخدام اثنين من ‪ stagers‬يزيد من احتماالت لدينا تجاوز حلول ‪ SPH‬مكافحة‪ J‬البرامج الضارة (مكافحة‪ J‬الفيروسات ‪ ،‬رمل ‪،‬‬
‫‪ ، IDS‬الخ)‪ .‬كما ذكرنا ساب ًقا ‪ ،‬على الرغم من أن حموالت ‪( metasploits‬بما في ذلك عداد المتر) معروفة من قبل شركات مكافحة الفيروسات‪ .‬ال يفشلون ً‬
‫أبدا في‬
‫رفع التنبيهات بمجرد تلقيهم للهدف‪ .‬للتغلب على هذه العقبة ‪ ،‬سننشئ الحمولة الصافية نفسها باستخدام أداة أخرى تضيف تلقائيًا طبقات متعددة من التشفير والتعتيم‪:‬‬
‫]‪ .Veil-Evasion [24‬للتجديد ‪ ،‬ستقوم شركة ‪ Veil-Evasion‬بإنشاء رمز قاذف متردد غامض في ‪ ، PowerShell‬وسيتم توصيل هذا الرمز إلى مستمع‬
‫‪ metasploit‬منتظم على خادم ‪ Front Gun‬الخاص بنا ويمنحنا الوصول الكامل إلى محطة العمل‪ .‬متألق‪ .‬ولكن كيف نذهب حيال ذلك؟ أوالً ‪ ،‬نحتاج إلى تثبيت‬
‫‪ Veil-Evasion‬على نظام ‪ Linux‬مع تطبيق ‪ apt-get install veil-evasion‬الكالسيكي‪ .‬التثبيت طويل بعض الشيء ‪ ،‬لكن بمجرد الوصول إلى هناك يصبح األمر‬
‫بديهيًا للغاية‪.‬‬

‫يعرض األمر ‪ list‬جميع الحموالت المتاحة‪ .‬نحن‬

‫اختر حمولة عكسية من ‪:PowerShell‬‬


‫يؤدي هذا إلى إنشاء ملفين‪ :‬ملف ‪ meter.bat‬الذي ينفذ حمولة ‪ PowerShell‬مستمع ‪ metasploit‬مُعد مسب ًقا‪ meter.rc :‬نحتاج إلى تشغيل المستمع باستخدام‬
‫األمر التالي‪:‬‬

‫يمكننا بعد ذلك اختبار ملف ‪ meter.bat‬للتأكد من أنه يعمل بشكل صحيح‪:‬‬

‫حس ًنا ‪ ،‬اآلن لتضمين هذه الحمولة في ملف ‪ ، Excel‬نحتاج إلى الغوص في الشفرة يدويًا لبعض الوقت‪ .‬إذا قمت بفتح الملف ‪ meter.bat‬الذي تم إنشاؤه ‪ ،‬فسترى أن‬
‫الغرض الوحيد منه هو معرفة بنية الهدف وإطالق إصدار ‪ PowerShell‬المناسب (إما ‪ x86‬أو ‪.)x64‬‬

‫كما قد تالحظ ‪ ،‬فإن ملف ‪ meter.bat‬يستدعي أي ً‬


‫ضا البرنامج النصي ‪ PS‬بطريقة مضمّنة ‪ ،‬على الرغم من أن ‪ Veil‬لم يكلف نفسه عناء تشفير األوامر‪ .‬يمكننا‬
‫ترجمة روتين التحقق من البنية في ]‪ ، VBA [25‬ثم استعارة األوامر من ملف ‪ ، meter.bat‬ومن الجيد أن نذهب‪ .‬إذا كنا نرغب في استخدام ‪، Lucky Strike‬‬
‫يمكننا أن نفترض أن برنامج ‪ Excel‬سوف يعمل على األرجح في عملية ‪ 32‬بت (رهان آمن في معظم األوقات) ‪ ،‬حدد جزء الكود المناسب‪ ، J‬وقم بتنظيفه قليالً عن‬
‫طريق إزالة االثنين‪- .‬حرف األحرف "\" ثم احفظه في ملف يسمى ‪:meter.ps1‬‬

‫نحن ننفذ ملف ‪ meter_psh.ps1‬هذا للتحقق من أنه ال يزال يعمل بشكل صحيح‪ .‬اآلن بعد أن أصبح لدينا ملف ‪ PowerShell‬عادي ‪ ،‬يمكننا استخدام ‪Lucky‬‬
‫‪ Strike‬إلنشاء ملف ‪ Excel‬الضار المناسب‪ .2.1.4 .‬الملخص للتلخيص ‪ ،‬استخدمنا ‪ Gophish‬إلعداد منصة إرسال بريد إلكتروني ‪ ،‬وجمعنا عد ًدا قليالً من‬
‫الموظفين الستهدافهم ‪ ،‬وقمنا بإعداد متغيرين قويين من البرامج الضارة لـ ]‪ Excel [26‬والتي ستتجاوز على األرجح معظم برامج الحماية من الفيروسات‪ .‬إن الشيء‬
‫الجميل في متجه الهجوم هذا هو أنه إذا نجح (ونحن في حاجة إلى ضحية واحدة فقط من بين ما يبدو أنه مئات الموظفين) ‪ ،‬سنكون داخل ‪!Greenbox‬‬
‫لماذا ال تمثل حلول مكافحة‪ J‬الفيروسات مشكلة تعتمد حلول مكافحة‪ J‬الفيروسات بشكل أساسي على التواقيع‪ :‬مثل مجموعة معينة من البيانات داخل ملف يتم تمييزه على‬
‫أنه ضار‪ .‬على سبيل المثال ‪ ،‬يقوم برنامج مكافحة‪ J‬الفيروسات بإعالم البرامج الضارة ‪ !Trojan.Var.A‬عن طريق التحقق من تسلسل وحدات البايت التالية في‬
‫التعليمات البرمجية‪ . 0xFC99AADBA6143A :‬قد يكون لدى بعض المحررين ميزات متقدمة مثل تحليل الشفرة ‪ ،‬واالنعكاس ‪ ،‬والتحقق من العشوائية ‪ ،‬وما إلى‬
‫ذلك‪ .‬ولكن في الحقيقة ‪ ،‬فإن المحرك األساسي يعتمد بشكل أساسي على التوقيع‪ .‬بصرف النظر عن البديل الواضح لترميز البرامج الضارة من البداية لتجنب مطابقة‬
‫أي توقيع معروف ‪ ،‬هناك حقيقة مهمة حول حلول مكافحة الفيروسات‪ J‬التي تجعلها سهلة التخطي تمامًا‪ .‬انهم فقط فحص الملفات على القرص! إذا قمت‪ J‬بتنزيل ملف‬
‫ضار ‪ ،‬يتم كتابته إلى مجلد التنزيل ‪ ،‬ويتم فحصه على الفور بواسطة برنامج مكافحة الفيروسات واإلشارة إليه‪ .‬اآلن نفس الملف الضار ‪ ،‬إذا تم حقنه مباشرة في‬
‫الذاكرة ‪ ،‬من شأنه أن يؤدي إلى صفر تنبيهات‪ J‬طالما أنه ال يمس القرص‪ .‬لتحقيق ذلك ‪ ،‬يمكننا استخدام جزء صغير من التعليمات البرمجية يسمى ‪ stager‬لالحتفاظ‬
‫بالكود الضار (المشفر أو المشفر) في متغير‪ .‬ثم حقن هذا الرمز في عملية جديدة أو موجودة بالفعل في الذاكرة‪ .‬بهذه الطريقة ‪ ،‬ال يوجد ملف ضار مكتوب على‬
‫القرص‪ .‬هذا هو باختصار ما تقوم به ملفات ‪ Excel‬الخاصة بنا‪ .‬لماذا ال يكتشف برنامج مكافحة الفيروسات جهاز الضرب؟ يفعل ‪ ،‬في بعض األحيان‪ .‬ولكن على‬
‫عكس البرامج الضارة الحقيقية ‪ ،‬فإن ‪ stager‬هو مجرد بضعة أسطر من التعليمات البرمجية ‪ ،‬ويمكن تكييفها بسهولة تامة للهروب من كل اكتشاف التوقيع [‪.]27‬‬
‫‪ . 2.2‬التعرض العام بينما ننتظر أن تصل عملية احتيال الخداع لدينا إلى بصماتها ‪ ،‬فإننا نتطلع إلى اإلنترنت للبحث عن طرق جديدة ومبتكرة للوصول إلى البنية‬
‫األساسية‪ J‬لـ ‪ . SPH‬في الفصل التالي ‪ ،‬سنبدأ بتعيين جميع أجهزتها المرئية والخدمات التي تقدمها (مواقع الويب وخدمة البريد وشبكات ‪ ، VPN‬وما إلى ذلك) ‪ ،‬ثم نضع‬
‫األساس لما أحب أن أسميه "فن إيجاد الكراك الصغير "‪ -‬نوع الكراك الذي قد يعطينا دعوة مرتجلة التي نبحث عنها‪ .2.2.1 .‬رسم خرائط لعناوين ‪ IP‬العامة‪ J‬لدينا أول‬
‫فكرة (والوحيد حتى اآلن ‪ ،‬لهذه المسألة) هو اسم الشركة‪ . Slash & Paul’s Holdings :‬يمكننا بسهولة تحديد موقع الويب الرئيسي الخاص بهم ‪ ،‬والذي بدوره‬
‫يعطينا الجزء الثاني من اللغز ‪ ،‬وهو سجل ‪ DNS‬العام‪ .sph-assets.com :‬باستخدام ‪( centralops.net‬أو ‪ ، )domaintools.com‬ندرك بسرعة أن عنوان ‪IP‬‬
‫لموقع الويب ليس مل ًكا لشركة ‪ ، SPH‬ولكن من خالل ‪ .Amazon‬وبالتالي ‪ ،‬فهي غير موجودة في ‪ ، Bluebox‬ولكن في صندوق خارج مراكز بيانات ‪ .SPH‬ونحن‬
‫لن نزعج النظر في ذلك‪.‬‬

‫كيف نجد خوادم حقيقية في ‪Bluebox‬؟ هذا بسيط للغاية‪ :‬نحن نعدد جميع أسماء‪ DNS J‬التي يمكن تصورها (* ‪ ، )sph-stocks.com.‬ونفحص عنوان ‪ IP‬المقابل لها‬
‫‪ ،‬ونرى ما إذا كان ‪ centralops.net‬يسرد ‪ .SLASH & PAUL HOLDINGS INC‬كمالك لقطاع ‪ .IP‬تعمل أدوات مثل ]‪ DNSRecon [28‬و ]‪ DNScan [29‬على‬
‫أتمتة مثل هذه الطلبات وتقديم قوائم بالنطاقات‪ J‬الفرعية األكثر استخدامًا لتغذية عملية البحث‪ Extranet.sphassets.com :‬و ‪ Lync.sph-assets.com‬و‬
‫‪ mail.sph-assets.com‬الخ‬

‫بمجرد أن نقوم بتجميع قائمة لطيفة من المجاالت وعناوين ‪ ، IP‬فإننا نستفسر من موقع ‪ centralops.net‬مرة أخرى لمعرفة أي منها يقع فعالً في نطاق ‪ IP‬الذي‬
‫تملكه ]‪ .SPH [30‬ألغراض السيناريو ‪ ،‬فلنفترض أن عناوين ‪ IP‬العامة الخاصة بشركة ‪ SPH‬تقع جميعها‪ J‬على الشبكة الفرعية الصغيرة إلى حد ما‬
‫‪ ، ]31[ 172.31.19.0/25‬التي تستضيف تطبيقات الويب التالية‪Up.sph-assets.com Career.sph -istics .com Info.sph-assets.com :‬‬
‫ً‬
‫‪ . Catalog.sph-assets.com 2.2.2‬تطبيقات الويب اآلن بعد أن أصبح لدينا قائمة بعناوين ‪ ، URL‬فإن الخطوة التالية هي البحث في مواقع الويب هذه بحثا عن‬
‫ثغرات الويب التي يمكن االستفادة منها لتنفيذ التعليمات البرمجية على الخادم‪ .‬نصيحة‪ :‬يتطلب البحث عن ثغرات الويب فحص جميع المعلمات‪ J‬المرسلة إلى الخادم‪ .‬من‬
‫أجل القيام بذلك بشكل صحيح ‪ ،‬تكون أدوات مثل ]‪ Burp Suite [32‬أو ‪ ZAP‬مفيدة للغاية‪ .‬يعترضون كل طلب ‪ HTTP‬ويغيرون محتوى صفحة ‪ HTML‬لتجاوز‬
‫بعض أشكال الحماية البدائية مثل الحقول المخفية والحقول غير المحمية ‪ ،‬وما إلى ذلك‪ .‬كما أنهم يقدمون نظرة عامة جيدة على جميع المعلمات‪ J‬التي يتم التعامل معها‬
‫بواسطة موقع الويب ‪ ،‬والتي تترجم إلى مزيد من المدخالت‪ J‬التي يمكن أن يحتمل حقن مع رمز الخبيثة‪ up.sph-assets.com )1 .‬الموقع األول بدائي ويقدم فقط‬
‫ميزة اختبار ما إذا كان الخادم يعمل أم ال‪ .‬لقد كان األمر رائ ًع ا بالنسبة لي كمساعد صغير وضعه مشرف متسرع أراد أداء واجباته بعد ظهر يوم األحد كسول ‪ ،‬مريحً ا‬
‫من المنزل‪.‬‬
‫كما قد تالحظ ‪ ،‬فإن نتيجة اإلخراج تشبه إلى حد كبير إخراج األمر ‪ ping‬على نظام ]‪ .Linux [33‬ببساطة يرسل تحقيقات إلى خوادم بعيدة وينتظر الردود‬

‫ربما ‪ ،‬فقط ربما ‪ ،‬يستخدم موقع الويب مدخالتنا (اسم المجال الذي تم إدخاله) إلنشاء طلب ‪ ICMP‬على نظام ‪ Linux‬ويعيدنا النتيجة‪ .‬على ‪ ، PHP‬فإنه من الناحية‬

‫النظرية سوف يذهب شيء مثل هذا‪:‬‬


‫بحاجة إلى إضافة حرف تسلسل مثل "&" (‘&& '‪‘،‬؛'‬
‫إذا كان دخلنا ‪ -‬المتغير ‪ - GET ['host']_ $‬هو‬
‫"|" ستعمل)‪ .‬المدخالت‪ J‬التالية ‪ ،‬على سبيل المثال ‪ ،‬إذا‬
‫حتىفي‬
‫متسلسل دون أي نوع من الحماية كما هو الحال‬
‫المثال أعاله ‪ ،‬يمكننا خداع تطبيق الويب في الموقع ضعيف بالفعل ‪ ،‬سوف يسرد بنجاح‬

‫تنفيذ أوامر نظام إضافية‪ .‬للقيام بذلك ‪ ،‬نحن المستخدمين باإلضافة إلى تنفيذ األمر ‪:ping‬‬

‫مثير لإلعجاب! دعنا نجرب شيًئ ا ما قليالً‪ .‬ماذا عن غالف عكسي من خط واحد [‪ ]34‬يتيح لنا الوصول التفاعلي إلى الجهاز‪:‬‬
‫على خادم السالح الخاص بنا ‪ ،‬نحتاج فقط إلى تشغيل مستمع بسيط ‪ ،‬مثل ‪ ، Netcat‬الستالم ‪ shell‬الوارد من خادم بعيد‪:‬‬
‫نحن مشتركون! يمكنك االنتقال إلى القسم ‪ 4‬إذا كنت تريد‬
‫معرفة كيفية االستفادة من هذا الوصول المنخفض المستوى‬
‫ألداء انهيار واسع النطاق ‪ ،‬ولكن من أجل االكتمال ‪ ،‬دعونا‬
‫نتحقق من مواقع الويب األخرى والبحث عن كنوز أخرى‬
‫ً‬
‫بسيطا ج ًدا لإلحماء‪ ، J‬لكنه‬ ‫مخفية‪ .‬مالحظة‪ :‬كان هذا مثااًل‬
‫يضع أساس تنفيذ التعليمات البرمجية عن بُعد‪ .‬تحقق من‬
‫ثغرة أمنية على ‪ ، phpmailer‬والتي تتبع نفس الروح‬

‫‪https://legalhackers.com/advisories/PHPMailer-ExploitRemote-Code-Exec-CVE-2016-10033-Vuln.html 2) career.sph- :‬‬


‫‪ assets.com‬أي شركة أخرى ‪ SPH ،‬يحتاج إلى توظيف المواهب لتوسيع أعمالها‪ .‬يقدم موقع التوظيف هذا الغرض من خالل السماح لموظفي ‪ wannabe‬بتحميل‬
‫سيرتهم الذاتية‪ .‬من الواضح ‪ ،‬عند تحميل مستند ‪ ،‬يكون تنسيق االنتقال إلى ‪ ، PDF‬لكن ماذا لو حاولنا تحميل ملف يحتوي على رمز ‪ ،‬مثل ‪ PHP / JSP‬أو ‪ASP‬‬
‫]‪[35‬؟‬

‫حس ًنا ‪ ،‬ال شيء كثيرً ا ح ًق ا‪ .‬حصلنا على خطأ لطيف من موقع الويب يقول إنه يحظر أي تنسيق غير ‪ . PDF‬يجب أن يقوم تطبيق الويب بإجراء بعض االختبارات للتأكد‬
‫من نوع الملف قبل قبوله‪ .‬هدفنا ‪ ،‬إذن ‪ ،‬هو خداع الموقع إلى االعتقاد بأنه تلقى ملف ‪ ، PDF‬في حين أنه في الواقع كان أوامر نظام كود ‪ PHP‬القذرة على الخادم‪ .‬إذا‬
‫اعترضنا طلب ‪ HTTP‬الذي تم إرساله عند تحميل مستند ‪ ،‬باستخدام ‪ Burp‬أو ‪ ، Zap‬يمكننا أن نرى أن المستعرض يرسل نوع الملف " ‪application / octet-‬‬
‫‪ "stream‬مع محتواه‪:‬‬
‫دعنا نغير رأس " ‪ "Content-Type‬إلى " ‪ ، " application / pdf‬ثم أعد توجيه الطلب إلى الخادم‪ .‬الحظ أننا لم نغير امتداد الملف "‪."php.‬‬

‫متألق! يجتاز ملفنا التحقق األمني ‪ ،‬مما يثبت أن موقع الويب يعتمد فقط على رأس نوع المحتوى‪ .‬لذلك ‪ ،‬يظل رمزنا في مكان ما على الخادم‪ .‬إنه نص بسيط ينفذ أي‬
‫أمر يتم استالمه من خالل المعلمة "‪ ، " cmd‬ولكن لتنفيذه ‪ ،‬نحتاج إلى معرفة مكانه بالضبط والوصول إليه من خالل المتصفح‪ .‬في بعض األحيان ‪ ،‬قد يكون هذا‬
‫الجزء صعبًا للغاية ‪ ،‬وفي بعض األحيان يكون موقع الويب لطي ًفا بما يكفي لتوضيح عنوان ‪ URL‬الكامل ‪ ،‬شريطة أن نأخذ الوقت الكافي للنظر بعناية‪ .‬في هذه الحالة ‪،‬‬
‫على سبيل المثال ‪ ،‬تم إخفاء ‪ URLis‬للملف في الكود المصدر لصفحة التهنئة (‪ Ctrl + u‬على ‪:)Firefox / Chrome‬‬

‫بمجرد الوصول إلى برنامج ‪ PHP‬النصي [‪ ، ] 36‬يمكننا تنفيذ أوامر النظام التعسفي والحصول في نهاية المطاف على قذيفة عكسية كما في الفصل السابق‪:‬‬

‫هناك العديد من "البرامج النصية الخاصة بـ ‪ "webshell‬المتوفرة على اإلنترنت والتي توفر الكثير من الميزات‪ :‬واجهات‪ J‬رسومية جميلة ‪ ،‬ودعم قاعدة البيانات ‪،‬‬
‫ومتصفحات الملفات ‪ ،‬إلخ‪ .‬ومع ذلك ‪ ،‬قد يأتي الكثير منها مع مخابئ مخفية توفر للمتطفلين اآلخرين رحلة مجانية‪ .‬لذلك احذر جميع قذائف ‪ C99‬أو ‪ R57‬هناك‪ .‬يبقيه‬
‫لطيف وبسيط‪ info.sph-assets.com )3 .‬يبدو أن هذا الموقع يقدم بعض المعلومات األساسية عن تاريخ الشركة وعدد قليل من األرقام المالية لجذب المستثمرين‪.‬‬
‫باالنتقال إلى الروابط مع ‪ ، Burp Proxy‬نالحظ طلبًا مثيرً ا يجلب تقرير ‪:PDF‬‬

‫يمكننا أن نستنتج أن موقع الملف يستخدم في وظيفة "مفتوحة" لقراءة التقرير ‪ ،‬ثم عرض محتواه على المستخدمين‪ .‬رد الفعل األول لدينا باعتباره أحد المتطفلين‬
‫الحادين هو خداع الموقع على فتح ملفات أخرى على النظام‪ .‬ولكن أي منها؟ وأين هم على القرص؟ دعنا نأخذها خطوة بخطوة ‪ ،‬هل نحن؟ أوالً ‪ ،‬اكتشف نوع نظام‬
‫التشغيل الذي نتعامل معه‪ .‬إن إلقاء نظرة بسيطة على شفرة مصدر ‪ HTML‬يخبرنا أننا نتحدث إلى خادم ‪ :Windows‬ملفات ‪ AXD‬و ‪ ASPX‬هي عالمات تقليدية‬
‫كالسيكية لخادم ‪ Microsoft IIS‬على الويب‪:‬‬
‫ثم بالطبع ‪ ،‬هناك ‪ HTTP‬الموقع‬

‫الرؤوس ‪ ،‬والتي تجعل األمر أكثر وضوحً ا‪:‬‬

‫يتم تخزين تكوين ‪ IIS‬في ملف "‪ ، "web.config‬وعاد ًة ما يكون هناك دليل أو دليالن أعلى صفحة الويب الرئيسية‪ .‬دعنا نطلب ذلك الملف ثم‪:‬‬

‫كما ترون ‪ ،‬نحصل على حساب قاعدة البيانات المستخدم من قبل موقع الويب ‪ ،‬والذي يمكن أن يكون سهاًل ومنحً ا ‪ ،‬ولكن نظرً ا ألن قاعدة البيانات على الشبكة‬
‫الداخلية ‪ DB0998 -‬ليس اسم خادم عام تما ًم ا ‪ -‬إنه ذو فائدة قليلة لنا ‪ ...‬أو فعال؟ هناك قاعدة ذهبية مفادها أن كل متسلل ‪ /‬مخترق يجب أن يكون على دراية به ‪ ،‬وقد‬
‫حان الوقت لنعرضه‪ :‬مدراء ‪ -‬حس ًنا ‪ ،‬بشر ح ًق ا ‪ -‬يعيدون استخدام كلمات المرور‪ .‬سيكون لدينا فرصة لمشاهدة ذلك عدة مرات خالل هذا الكتاب‪ .‬لذلك فإن أول رد‬
‫فعل عند الحصول على كلمة مرور هو تجربة نفس السلسلة من األحرف في كل نموذج تسجيل دخول نواجهه‪ .‬كما يحدث ‪ ،‬تم بناء هذا الموقع باستخدام وورد ‪.CMS‬‬
‫يمكننا استنتاج ذلك عن طريق فحص شفرة المصدر لموقع الويب مرة أخرى [‪:]37‬‬
‫‪ ، CMS‬أو خدمة إدارة المحتوى ‪ ،‬هي أداة تستخدم لتسريع عملية تطوير موقع الويب‪ .‬خذ ‪ ، WordPress‬على سبيل المثال‪ :‬يمكنك تنزيله وتثبيته ‪ ،‬وسوف يساعدك‬
‫في إنشاء محتوى موقع الويب الخاص بك من خالل واجهات‪ J‬سهلة االستخدام‪ .‬ليست هناك حاجة إلتقان ‪ HTML‬و ‪ PHP‬و ‪ CSS‬للحصول على موقع ويب فعال‬
‫وسريع االستجابة‪ .‬من الواضح أن هناك حاجة إلى لوحة إدارة إلدارة ‪ CMS‬؛ في حالة ‪ ، WordPress‬يتم الوصول إلى هذه اللوحة من خالل ‪info.sph-‬‬
‫‪:assets.com/wp-admin‬‬

‫لنجرب الحساب الذي حصلنا عليه ساب ًقا‪:‬‬

‫مرحى! هل يمكننا وضع كود القشرة لدينا حتى اآلن؟ حس ًنا ‪ ،‬على ‪ WordPress‬ال يمكننا تحميل ملف ‪ PHP‬مباشرة ‪ ،‬أو حتى إنشاء ملف من الصفر‪ .‬نحتاج أوالً إلى‬
‫تثبيت مكون إضافي يسمى "‪ "insert_php‬أو تعديل ملف السمة (‘‪ ))jobs.php‬إلدراج مقتطفات من كود ‪ PHP‬الخاصة بنا والتي ستتصل بـ ‪.home shell shell‬‬
‫يمكن أن تكون شفرة ‪ PHP‬المراد إضافتها إلى "‪ "jobs.php‬بهذه البساطة‪:‬‬

‫‪ catalog.sph-assets.com )4‬يبدو أن الموقع األخير يستضيف المنتجات التي تقدمها شركة ‪ SPH‬لعمالئها‪ .‬يمكننا سرد المنتجات من خالل تصفح معرفات بسيطة‬
‫‪ ،‬كما هو الحال في الطلب أدناه‪:‬‬
‫يمكننا أن نستنتج أنه ربما يتم تقديم طلب إلى خادم خلفية (على األرجح قاعدة بيانات) لجلب المنتج بنا ًء على المعرف المقدم (‪ ، 13‬في الطلب أعاله)‪ .‬نحاول إجراء‬
‫مزيد من البحث عن طريق حقن أحرف خاصة (عالمات اقتباس ‪ ،‬عالمات اقتباس مزدوجة ‪ ،‬وما إلى ذلك) ‪ ،‬ولكن ال يوجد شيء مثير لالهتمام‪ :‬يستجيب الخادم‬
‫بنفس الصفحة الفارغة المخيبة لآلمال‪ .‬ومع ذلك ‪ ،‬إذا استبدلنا ‪ 13‬بـ "‪ ، "1- 14‬على سبيل المثال ‪ ،‬فإننا نسترجع المنتج ‪ .13‬ممتع‪ .‬قد يعني هذا أن عمليتنا الحسابية‬
‫قد تم تنفيذها فعليًا بواسطة نظام الخلفية‪ .‬للتأكد من أننا نحاول مرة أخرى باستخدام "منتج ‪ ]38[ "1 + 13 /‬وكذلك مع "منتج ‪( /‬حدد ‪.")14‬‬

‫جيد! نحن على األرجح في وجود حقن رمز‪ .‬على وجه التحديد ‪ ،‬حقن ]‪ ، SQL [39‬نظرً ا ألن عبارة "تحديد" السابقة الخاصة بنا قد تم تفسيرها بشكل صحيح أيضًا‪.‬‬
‫هذا يعني أنه يمكننا خداع قاعدة البيانات في تنفيذ كود ‪ SQL‬الذي نلحقه بنهاية الطلب‪ .‬يجب أن تكون الشفرة صالحة وأن تحترم بعض قواعد التركيب والبنية ‪،‬‬
‫بالطبع ‪ ،‬لكننا لسنا بحاجة إلى القلق بشأنها‪ .‬في الواقع ‪ ،‬سوف نعتمد على أداة "]‪ sqlmap" [40‬سيئة السمعة‪ J‬للقيام بالرفع الثقيل ولجعلنا نستغلها بشكل أنيق‪ .‬ستقوم‬
‫هذه األداة بإعداد كود ‪ SQL‬الضروري لسرد الجداول والحصول على األعمدة ‪ ،‬والبيانات ‪ ،‬إلخ‪ ]41[ .‬ال تحمس على الفور ‪ ،‬على الرغم من‪ .‬يبدو أن موقع الويب‬
‫هذا يستضيف المعلومات‪ J‬العامة فقط‪ .‬لن نحصل على بيانات العمالء الثمينة الخاصة بنا بهذه السهولة‪ .‬فما الفائدة من ‪ ، SQLinjection‬إذن؟ حس ًنا ‪ ،‬ما يهمنا في‬
‫السيناريو الخاص بنا هو أن نكون قادرين على تنفيذ رمز النظام على الجهاز‪ .‬يعتمد هذا بالكامل تقريبًا على برنامج قاعدة البيانات المثبت‪ :‬يوفر ‪Microsoft SQL‬‬
‫‪ Server‬وظائف أصلية لتنفيذ التعليمات البرمجية على النظام باستخدام ‪ ، xp_cmdshell‬بشرط أن يكون للحساب الذي أصدر األمر األمر امتيازات المسؤول‪ .‬يوفر‬
‫‪ MySQL‬و ‪ Oracle‬فقط القدرة على كتابة الملفات إلى األدلة التي يمكنهم الوصول إليها‪ .‬سيناريو مثير لالهتمام هو أن تكتب في الخلفية إلى دليل الويب أو حتى‬
‫مفاتيح ‪ SSH‬إلى المجلدات الرئيسية‪ .‬من أجل تحديد برنامج قاعدة البيانات ‪ ،‬نطلق '‪ 'sqlmap‬مع الخيارات التالية‪:‬‬

‫نصيحة‪ :‬نظرً ا لعدم وجود معلمة يمكن تحديدها بسهولة ‪ ،‬فقد وضعنا نجمة (*) أمام المعلمة المستضعفة‪ J‬لتوجيه ‪ .sqlmap‬يبدو أننا نواجه قاعدة بيانات ‪.MySQL‬‬
‫فلنلق نظرة على ما هو موجود أوالً‪ .‬نحن قائمة بجميع قواعد البيانات‬
‫ِ‬ ‫على الرغم من أن استهداف أدلة الويب والمجلدات الرئيسية ال يزال خيارً ا قابالً للتطبيق ‪،‬‬
‫والجداول الخاصة بهم مع األمر التالي‪FrontGun $ sql :‬‬
‫يعد الجدوالن "‪ "node_comment‬و "‪ "node__body‬نموذجيين لـ ‪ - Drupal CMS‬المعلومات التي يمكننا تأكيدها بسهولة من خالل النظر في كود ‪HTML‬‬
‫لصفحة الويب‪ .‬وف ًقا لموقع ‪ Drupal 8‬الرسمي [‪ ، ]42‬يتم تخزين بيانات المستخدم وكلمة المرور في الجدول "‪:"users_field_data‬‬

‫يتم تجزئة كلمات المرور في قاعدة البيانات ‪ ،‬لذلك نحتاج إلى استخدام أداة مثل "‪ "John the Ripper‬للقضاء عليها‪ .‬سيقوم جون في األساس بمراجعة قواميس‬
‫الكلمات (قوائم الكلمات) لمعرفة أي منها يطابق كل عالمة تجزئة معينة‪ .‬إال أن حساب التجزئة يستغرق وق ًتا في مجال الحوسبة وقد يتطلب بعض الموارد الكبيرة ‪،‬‬
‫ضا تجربة قواعد بيانات التكسير العامة [‪ ]43‬لمعالجة المهمة بشكل صحيح‪ .‬إذا كنت على مستوى التحدي ‪،‬‬ ‫خاصة عند اختبار مليارات من االحتماالت‪ .‬يمكننا أي ً‬
‫يمكنك اتباع هذا البرنامج التعليمي إلنشاء جهاز تكسير يمكن االعتماد عليه بميزانية معقولة [‪ .] 44‬لسوء الحظ ‪ ،‬تم تجزئة أجزاء دروبال المملوحة (يتم تعليق سلسلة‬
‫عشوائية بكلمة المرور) ‪ ،‬مما يجعلها تستهلك الوقت للتصدع‪ .‬حتى بعد ساعات من إطالق ‪ ، John‬ال يمكننا الحصول على نتيجة إيجابية‪ .‬يبدو أن كلمات المرور قوية‬
‫جدا‪ .‬خيارنا الوحيد اآلخر هو زرع مفتاح ‪ .SSH‬أوالً ‪ ،‬نقوم بإنشاء زوج من مفاتيح ‪ SSH‬باتباع ثالث خطوات بسيطة مفصلة في هذا المنشور‪:‬‬ ‫ً‬

‫ثم نسمي الخيار الموثوق لـ ‪ - sqlmap‬ملف الكتابة لكتابة مفتاحنا العام (‪ )id_rsa.pub‬إلى الدليل التالي‪ ."home/mysql/.ssh/authorized_keys /" :‬لكن القيد‬
‫الوحيد الذي يجب مراعاته هو أن ‪ MySQL‬ال يمكنها الكتابة فوق الملفات‪ .‬لذا فإننا نعبر أصابعنا ‪ ،‬على أمل عدم وجود ملف باسم "أذن" في الدليل المستهدف‪:‬‬
‫ممتاز! نحاول االتصال بالخادم باستخدام المفتاح الخاص المقابل‪:‬‬

‫جيد! لقد تحورنا بشكل فعال حقن ‪ SQL‬في الوصول التفاعلي عن بعد! صحيح ‪ ،‬ال يزال لدينا امتيازات محدودة على الجهاز ‪ ،‬ولكن هذه مسألة وقت فقط‪ .‬في مالحظة‬
‫ذات صلة ‪ ،‬تحقق من هذا االستغالل المثير لالهتمام للغاية [‪ ]46‬والذي يعزز حقنة ‪ SQL‬للوصول إلى الجذر في الجهاز‪ .2.2.3 .‬خدمات متنوعة في الفصول السابقة‬
‫‪ ،‬ركزنا بشكل أساسي على تطبيقات الويب من أجل إبراز نقاط الضعف األكثر شيوعً ا التي يتم إساءة استخدامها للوصول إلى شبكة ‪ .Bluebox‬شيء واحد يجب أخذه‬
‫في االعتبار ‪ ،‬مع ذلك ‪ ،‬هو أن اإلنترنت أكثر بكثير مما يسميه الناس الويب‪ .‬هناك الكثير من األشياء األخرى المثيرة لالهتمام التي تحدث إلى جانب المواقع‬
‫اإللكترونية فقط‪ .‬للعثور على هذه الخدمات األخرى ‪ ،‬سنستخدم أداة فحص المنافذ مثل ‪ nmap‬أو ‪ .masscan‬مسح المنفذ منفذ صغير الستكشاف منافذ ‪، TCP / IP‬‬
‫والخدمات ‪ ،‬وما إلى ذلك‪ :‬اإلنترنت عبارة عن مجموعة من األنظمة المتصلة ببعضها البعض‪ .‬قد يستضيف كل نظام تطبيقات مختلفة‪ :‬تطبيقات الويب (مواقع الويب ‪،‬‬
‫على سبيل المثال) ‪ ،‬وتطبيقات المسؤول ألنظمة التحكم عن بُعد (‪ SSH‬أو ]‪ ، )RDP [47‬وقواعد البيانات (‪ ، )MySQL ، SQLServer‬إلخ‪ .‬كل تطبيق يحتاج إلى‬
‫معالجة بواسطة جهاز تحكم عن بُعد يتم تعيين منفذ من نظام ‪ 65535‬المتاحة على النظام‪ .‬على سبيل المثال ‪ ،‬سيقوم النظام بمراقبة جميع الطلبات الواردة ‪ ،‬وبمجرد‬
‫أن يرى طلبًا يشير إلى المنفذ ‪ ، 80‬فسيقوم بتوجيه الطلب إلى التطبيق الذي يستمع إلى ذلك المنفذ ‪ ،‬والذي يحدث عاد ًة ليكون موقع ويب‪ .‬اآلن الكتشاف التطبيقات‬
‫الموجودة على نظام ما ‪ ،‬نرسل ببساطة طلب )‪ hello (SYN packet‬إلى كل منفذ متاح ونرى أي منها يستجيب‪ .‬هذه هي الفكرة األساسية وراء ماسحة‪ J‬المنفذ‪ .‬إذا‬
‫تلقينا "مرحبًا" (حزمة ‪ ، ) ACK‬فإننا نعرف أن خدمة ما تستمع على هذا المنفذ‪ .‬قد ترسل األداة بعد ذلك طلبات إضافية للحصول على مزيد من المعلومات‪ :‬اسم‬
‫المنتج ‪ ،‬اإلصدار ‪ ،‬إلخ‪ .‬أدوات مثل ‪ nmap‬تذهب أبعد من ذلك‪ .‬يمكنهم تخمين نظام تشغيل النظام ‪ ،‬وتجربة بعض هجمات القوة الغاشمة‪ J‬األساسية ‪ ،‬وما إلى ذلك‪.‬‬
‫راجع الوثائق الكاملة [‪ ]48‬من ‪ nmap‬لمزيد من المعلومات‪ .‬االنترنت صاخبة‪ .‬كل دقيقة ‪ ،‬يقوم شخص ما في مكان ما على كوكبنا هذا بمسح نطاق ‪ .IP‬ال نحتاج إلى‬
‫أن نكون متخفيين بشكل خاص عند فحص الخوادم العامة‪ .‬سيقوم فحص ‪ TCP‬بسيط بما يلي‪:‬‬

‫نصيحة‪ :‬إذا كنت ترغب في تنسيق إخراج ‪ nmap‬بسهولة ‪ ،‬تحقق من البرنامج النصي )‪ .nmaptocsv (https://github.com/maaaaz/nmaptocsv‬يمكن‬
‫أن يكون وجود ملف ‪ excel‬أسهل لتصور اآلالف من الخدمات‪ .‬اثنتي عشرة خدمة منبثقة على الشاشة‪ .‬بعضها خدمات‪ J‬إدارية مثل ‪ SSH‬و ‪ ، RDP‬والتي يمكن‬
‫استخدامها لالتصال عن بُعد بجهاز باستخدام بيانات اعتماد صالحة‪ .‬البعض اآلخر هو منافذ الويب الكالسيكية (‪ 80‬و ‪ .)443‬ومع ذلك ‪ ،‬يبرز منفذ واحد‪ :‬المنفذ‬
‫‪ .27019‬ولسبب وجيه للغاية‪ :‬إنه المنفذ االفتراضي الذي تستخدمه ‪ ، MongoDB‬وهي قاعدة بيانات غير عالئقية تقوم بتخزين المستندات وفهرستها دون الحاجة‬
‫إلى أي بنية محددة (على عكس قواعد البيانات العالئقية أو الكالسيكية التي تتطلب الجداول واألعمدة والحقول ‪ ،‬وما إلى ذلك)‪ .‬الجزء المثير لالهتمام هو أن ‪ -‬بشكل‬
‫افتراضي ‪ MongoDB -‬ال يتطلب أي مصادقة على اإلطالق‪ .‬إذا كان لدى شخص ما فكرة (رائعة) في كشفها‪ J‬على اإلنترنت دون الحد األدنى من األمان ‪ ،‬فيمكن‬
‫ألي شخص الوصول إلى محتواه‪ .‬يعطي البحث السريع عن ]‪ ، Shodan [49‬وهو محرك بحث عالمي على اإلنترنت ‪ ،‬فكرة عن عدد المونجودز (غير المقيد)‬
‫الموجود في البرية‬
‫لذلك نحن نتصل بقاعدة البيانات هذه على أمل الحصول على نوع من المعلومات التي سوف تساعدنا في الوصول إلى شبكة ‪.Bluebox‬‬

‫ندرج مجموعات (أي ما يعادل الجداول) من قاعدة البيانات "‪ "stats_db‬باألمر التالي‪:‬‬

‫من الواضح أن مجموعة "المستخدمين" هي المجموعة المستهدفة‪:‬‬


‫البنغو! يبدو أننا حصلنا على حسابات مستخدمين وكلمات مرور للوصول إلى بعض التطبيقات غير المعروفة‪ .‬يمكننا تجربة تكسير التجزئة باستخدام ‪John the‬‬
‫‪ Ripper‬مرة أخرى ‪ ،‬ولكن البحث السريع عن تجزئة المشرف على ‪ Google‬يوضح أن كلمة المرور المقابلة هي في الواقع‪ ."!Slash" :‬إذا عدنا إلى نتائج ‪nmap‬‬
‫الخاصة بنا ‪ ،‬فإننا نرى أن المنفذ ‪ 3389‬مكشوف على جهاز ‪ . MongoDB‬تتيح هذه الخدمة الوصول عن بُعد إلى جهاز يعمل بنظام التشغيل ‪ Windows‬باستخدام‬
‫أدوات مثل ‪ mstsc‬على ‪ Windows‬أو ‪ rdesktop‬على ‪ .Linux‬دعنا نعيد استخدام كلمة المرور التي استردناها للتو‪:‬‬

‫قريب بما فيه الكفاية! على الرغم من أنها لم تعمل على الفور ‪ ،‬إال أن كلمة المرور "‪ "! Slash‬تعطينا نظرة قيمة حول كيفية اختيار المشرفين لكلمات المرور الخاصة‬
‫بهم‪ .‬يمكننا إنشاء قائمة كلمات للمرشحين المحتملين بنا ًء على هذا التنسيق نفسه ‪ ،‬ثم جرب كل واحد منهم على الجهاز البعيد حتى نصل إلى المنزل! قد يؤدي الهجوم‬
‫بالقوة الغاشمة‪ J‬بالطبع إلى إطالق إنذارات أو حتى إغالق الحسابات‪ J‬مؤق ًتا ‪ ،‬لذلك سنتجنبها في هذا السيناريو ‪ ،‬نظرً ا ألننا نمتلك بالفعل العديد من األجهزة‪ .‬ومع ذلك ‪،‬‬
‫سأشرح بالتفصيل خطوات القيام بها فقط في القضية‪ .‬أوالً ‪ ،‬نقوم يدويًا بإنشاء‪ J‬قاعدة من الكلمات الرئيسية المستوحاة من كلمة المرور التي حصلنا عليها مسب ًقا‪:‬‬

‫بعد ذلك ‪ ،‬نستخدم ‪ John The Ripper‬لتطبيق صيغ متعددة على هذه الكلمات الرئيسية (إضافة األرقام واألحرف الخاصة واألحرف الكبيرة األولى وما إلى ذلك)‬

‫ً‬
‫حديثا إلى أداة تؤدي إلى فرض ‪ RDP‬الغاشمة‪ ، Patator ، THC Hydra ، Crowbar [52] J:‬إلخ‪:‬‬ ‫نقوم اآلن بإطعام هذه القائمة التي تم إنشاؤها‬

‫في هذه المرحلة ‪ ،‬يمكننا إثبات أننا نمتلك بعض اآلالت داخل‬
‫شبكة ‪ . Bluebox‬مما يعني أنه يمكننا البدء في التفكير في طرق لمهاجمة الشبكة الداخلية‪ .‬دعونا ال نتسرع‪ .‬ما زلنا في ‪( Bluebox‬المنطقة المجردة من السالح العام)‬
‫‪ ،‬ونحن بحاجة إلى معرفة بعض المشكالت األساسية مثل‪ :‬ما الجهاز الذي نحن عليه؟ ما هي االمتيازات التي لدينا؟ ما الخوادم المهمة‪ J‬األخرى الموجودة في مقطع‬
‫الشبكة هذا؟ هذا هو المكان الذي تحصل عليه بشكل خاص!‬
‫‪ . 3‬شمال الجدار (النار) "لماذا عندما يقوم رجل ما ببناء حائط ‪ ،‬فإن الرجل التالي يحتاج على الفور إلى معرفة ما هو على الجانب اآلخر؟" جورج آر إس مارتن‬
‫مارتن االستفادة من بعض نقاط الضعف على خادم أمامي تستضيفه شركة ‪ ، SPH‬تمكنا من تنفيذ التعليمات البرمجية على خادم واحد على األقل [‪ .]53‬لدينا اآلن‬
‫‪ shell‬على خادم موجود داخل قطعة ‪ . Bluebox‬ولكن إلى جانب بعض وكالء البريد اإللكتروني وخوادم مؤتمرات الفيديو وبعض مواقع الويب ‪ ،‬ال يحتوي‬
‫‪ Bluebox‬على البيانات التي نبحث عنها‪.‬‬

‫االستفادة من بعض نقاط الضعف على خادم أمامي تستضيفه شركة ‪ ، SPH‬تمكنا من تنفيذ التعليمات البرمجية على خادم واحد على األقل [‪ .]53‬لدينا اآلن ‪ shell‬على‬
‫خادم موجود داخل قطعة ‪ . Bluebox‬ولكن إلى جانب بعض وكالء البريد اإللكتروني وخوادم مؤتمرات الفيديو وبعض مواقع الويب ‪ ،‬ال يحتوي ‪ Bluebox‬على‬
‫البيانات التي نبحث عنها‪.‬‬

‫‪ Bluebox‬هو ببساطة بوابتنا إلى ‪ .Greenbox‬فكر في األمر‪ .‬من اإلنترنت ‪ ،‬ال نرى ‪( Greenbox‬الشبكة الداخلية) ؛ ومع ذلك ‪ ،‬من خالل االنتقال إلى‬
‫‪ ، Bluebox‬قد نتمكن من الوصول إلى بعض الخوادم الموجودة فيه‪ .‬الغرض كله من هذا الفصل هو إنشاء رابط أو نفق موثوق به من خادم ‪ Front Gun‬الخاص بنا‬
‫إلى ‪ Greenbox‬من خالل االنتقال إلى ‪ . Bluebox‬إذا استطعنا أن نهدم خادم أو اثنين في الطريق ‪ ،‬كل هذا أفضل ‪ ،‬لكن أول األشياء أوالً‪ :‬ما نوع الجهاز الذي‬
‫نستخدمه؟ ‪ .3.1‬تعرف على عدوك سواء كان ذلك على نظام ‪ Windows‬أو ‪ ، Linux‬فإن رد الفعل األساسي هو التطفل للحصول على معلومات قيمة عن البيئة التي‬
‫نعيش فيها‪ .‬قبل تنفيذ أي أمر ‪ ،‬ومع ذلك ‪ ،‬نبدأ بتعطيل ملف محفوظات ‪ bash‬لتجنب تسجيل أوامرنا‪:‬‬
‫حديثا مع بنية ‪ 32‬بت‪ .‬المستخدم الحالي هو ‪ ، wwwdata‬والذي ال يتمتع عاد ًة بامتياز كبير على النظام‪ .‬على الرغم من تعريف العديد‬‫ً‬ ‫يبدو أننا على خادم ‪Ubuntu‬‬
‫من المستخدمين على النظام ‪ ،‬إال أن جلستنا هي الوحيدة النشطة حاليًا على الجهاز‪:‬‬

‫إذا تحققنا من تكوين الشبكة ‪ ،‬يمكننا أن نرى أننا في شريحة ‪:IP 192.168.1.0/24‬‬

‫أخيرً ا ‪ ،‬ال توجد قواعد لجدار الحماية المحلي يمكنها أن تفسد تقنيات التمحور فيما بعد‪:‬‬
‫نصيحة‪ :‬ضع في اعتبارك أننا يمكن أن نستخدم قذائف عكسية أكثر تقد ًم ا (متر ‪ ،‬على سبيل المثال) تحتوي على وحدات ألتمتة جميع عمليات الفحص هذه‪ .‬يمكن‬
‫العثور على ورقة الغش من األدوات واألوامر المحلية هنا [‪ . 3.2 .]54‬اللمسة األولى ألسفل قد يجادل بعض األشخاص بأن الحصول على امتيازات المسؤول على‬
‫الخادم األول الذي نتنازل عنه ليس ضرورة‪ .‬صحيح‪ .‬إذا كنا بحاجة فقط إلى إنشاء‪ J‬نفق للوصول إلى قطاعات الشبكة األعمق ‪ ،‬فيمكننا الحصول على امتيازات عادية‪.‬‬
‫جد ا امتالك امتيازات المسؤول في المربع‪ .‬في بعض األحيان ‪ ،‬إذا كنا‬ ‫ولكن إذا أردنا مسح سجالت‪ J‬التدقيق أو إدعاء خداع أو تثبيت أدوات جديدة ‪ ،‬فمن المريح ً‬
‫محظوظين ‪ ،‬فإن الثغرة األمنية التي استغلناها للحصول على قذيفة تؤثر على مكون يعمل بأعلى االمتيازات‪ .‬في هذه الحالة ‪ ،‬ال يوجد شيء فعله أكثر من مجرد‬
‫االنتقال إلى القسم التالي‪ .‬مثال ملفتة للنظر هو حقن ‪ SQL‬على خادم ‪ Microsoft SQL‬الذي يقوم بتشغيل حساب‪ .DBA J‬يتمتع أي أمر يتم تنفيذه باستخدام‬
‫‪ xp_commandshell‬بأعلى االمتيازات على النظام ‪ ،‬مما يلغي الحاجة إلى اللجوء إلى التقنيات المذكورة أدناه‪ .‬على أي حال ‪ ،‬دعنا نركز على جهاز ‪Linux‬‬
‫الصغير‪ .‬قد ال يقترن تصعيد االمتياز وملفات ‪ setuid‬معً ا ‪ ،‬لكنهما متأكدان من أن الجحيم يصنعان مزيجً ا رائ ًعا في عالم ‪ .Linux‬هذا ‪ -‬وينبغي أن يكون ‪ -‬هو أول رد‬
‫فعل لكل متسلل ‪ /‬مخترق يقوم بتجميع صندوق ‪ .Linux‬قد تمتلك الملفات الموجودة على توزيعات ‪ Linux‬سمة خاصة تسمى "‪ ."setuid bit‬يسمح هذا ألي مستخدم‬
‫بتنفيذ الملف بامتيازات مالكه‪ .‬قل على سبيل المثال أن حساب الجذر قام بإنشاء برنامج نصي لحذف بعض الملفات الهامة‪ .‬عن طريق إضافة بت ‪ setuid‬إلى هذا‬
‫الملف ‪ ،‬فإن أي مستخدم آخر ينفذ البرنامج النصي سيقوم بتنفيذ أمر الحذف بامتيازات المستخدم الجذر‪ .‬ضع في اعتبارك أنه بمجرد قيامنا بتحرير نص ‪ ، setuid‬فإنه‬
‫يفقد قدرته الخاصة‪ .‬ما نبحث عنه ‪ ،‬إذن ‪ ،‬هو برنامج نصي ‪ setuid‬يستخدم أوامر غير معقم ‪ ،‬ويتعامل مع متغيرات البيئة ‪ ،‬وين ّفذ ثنائيات أخرى ‪ -‬شيء يمكننا‬
‫التحكم فيه والضغط عليه لخداعه في تنفيذ التعليمات البرمجية الخاصة بنا‪ .‬دعونا أوالً سرد جميع ملفات ‪ setuid‬باستخدام األمر التالي‪:‬‬

‫ينبثق برنامج ‪ .def_policy‬يمكن ألي شخص تشغيله بامتيازات حساب‪ . oinstall J‬قد ال يكون الجذر ‪ ،‬ولكنه ال يزال خطوة صغيرة إلى األمام‪ .‬نحن ننفذ أمرً ا‬
‫بالسالسل على الملف التنفيذي ‪ ، def_policy‬ونبحث عن أي بيانات تم ترميزها في البرنامج‪:‬‬

‫يبدو أن برنامج ‪ def_policy‬عبارة عن برنامج التفاف بسيط لتنفيذ البرنامج النصي ‪ .install.sh‬تعني سلسلة التنسيق "‪ "s ٪‬أن موقع ‪ install.sh‬مشتق من‬
‫متغير ‪ ...‬ربما "‪" ADMIN_PATH‬؟ ربما ‪ ،‬ولكن يبدو أنه ال يوجد مسار في رمز البرنامج‪ .‬من شبه المؤكد أنه متغير بيئة محدد على مستوى الجلسة‪ .‬الجزء المثير‬
‫لالهتمام ‪ ،‬مع ذلك ‪ ،‬هو أن كل مستخدم يتحكم في متغيرات البيئة الخاصة به‪ .‬يمكننا بالتالي خداع البرنامج لجلب برنامج نصي ‪ install.sh‬جديد موجود في دليل‬
‫نتحكم فيه‪ .‬هذا البرنامج النصي الجديد المزيف سيؤدي ببساطة إلى ظهور جلسة باش مع امتيازات حساب‪.oinstall J‬‬

‫جيد! من دواعي سرورنا الكبير ‪ ،‬أن حساب‪ oinstall J‬ليس فقط جزءًا من مجموعة ‪ ، adm‬ولكن أي ً‬
‫ضا مجموعة ‪ !sudo‬مما يعني أن لديه القدرة على انتحال‬
‫شخصية المستخدم الجذر‪:‬‬
‫واحد ألسفل ‪ ...‬الكثير للذهاب‪ .‬نصيحة‪ :‬تحقق من البرنامج النصي ‪ ، linuxprivchecker‬والذي يمر ببعض التقنيات المثيرة لالهتمام تلقائيًا‪:‬‬
‫‪ :http://www.securitysift.com/download/linuxprivchecker.py TIP‬نفس الشيء بالنسبة لنظام ‪Windows:‬‬
‫‪ https://github.com/pentestmonkey/windows-privesccheck 3.3. Stairway to heaven‬اآلن وقد أصبحنا جذرً ا مريحً ا على جهاز واحد ‪ ،‬نحتاج‬
‫إلى التطفل حول ‪ Bluebox‬لنرى ماذا يوجد هناك‪ .‬نظرً ا ألن معظم أنظمة المعلومات مبنية على ‪ ، Windows‬سيكون من المثالي تحديد موقع صندوق ‪Windows‬‬
‫]‪ [55‬والجلوس فيه في منطقة ‪ DMZ‬العامة‪ .‬بهذه الطريقة ‪ ،‬يمكننا إعادة استخدام بعض نقاط الضعف أو كلمات المرور على األجهزة األخرى الح ًقا‪ .‬ولكن من أجل‬
‫شن الهجمات‪ J‬بشكل صحيح ‪ ،‬نحتاج إلى تحميل جميع أدوات القرصنة المعتادة لدينا (‪ ، nmap‬بعض البرامج النصية المخصصة للبايثون ‪PowerShell ،‬‬
‫‪ ، Empire‬إلخ) على مربع ‪ Linux‬الذي تعرضنا للتو للخطر‪ .‬القيام بذلك ‪ ،‬مع ذلك ‪ ،‬هو نوع من "القذرة"‪ .‬باإلضافة إلى ذلك ‪ ،‬من المحتمل أن يجد محقق المستقبل‬
‫جميع أدواتنا الخاصة على الخادم ويحللها لفهم الهجوم‪ .‬لهذا السبب سوف نفضل النهج الثاني األكثر نظافة وأكثر جنسية‪ :‬نفق افتراضي‪ .‬سنقوم بتكوين مربع ‪Linux‬‬
‫بحيث يقبل جميع حزمنا ونرسلها مباشرة إلى الوجهة المختارة‪ .‬وجهة ال يمكننا رؤيتها من اإلنترنت بسبب عنونة خاصة‪ .‬عنونة خاصة يمكن الوصول إلى الجهاز‬
‫على اإلنترنت باستخدام عنوان ‪ IP‬الخاص به‪ IPv4 .‬هو عنوان مكون من أربعة بايت يمثل عاد ًة ‪ ، XXXX‬يتراوح ‪ X‬بين ‪ 0‬و ‪ .255‬بعض نطاقات ‪ IP‬هذه مخصصة‬
‫للشبكات‪ J‬المحلية وال يمكن استخدامها على اإلنترنت (‪ 127.0.0.1 :)RFC 1918‬تشير إلى الكمبيوتر المحلي ‪( 16 / 0. 172.16‬من ‪ 172.16.0.0‬إلى‬
‫‪( 192.168.0.0/24 )172.16.31.255‬من ‪ 192.168.0.0‬إلى ‪( 10.0.0.0/8 )192.168.255.255‬من ‪ 10.0.0.0‬إلى ‪ )10.255.255.255‬إذا‬
‫رأى الموجه أيًا من هذه العناوين على واجهته العامة‪ ، J‬فإنه يسقطها ببساطة‪ .‬توجد خوادم ‪ Bluebox‬في شريحة العنوان التالية‪ .192.168.1.0/24 :‬من الواضح ‪،‬‬
‫إذا أخبرنا خادم ‪ Front Gun‬بإرسال حزمة ليقول ‪ ، 192.168.1.56‬فإن أجهزة توجيه اإلنترنت سوف تسقطها ببساطة فيما يتعلق بـ ‪ .RFC 1918‬وبالتالي ‪ ،‬فإن‬
‫الحيلة هي توجيه صندوق ‪ Linux‬إلعادة توجيه أي حزمة ‪ IP‬تتلقاها منا ( على ‪ IP‬العام الخاص به) إلى األجهزة األخرى على الجزء ‪ .192.168.1.0/24‬في‬
‫الواقع ‪ ،‬سيكون بمثابة وكيل المستوى ‪ ، 3‬المعروف أيضا باسم وكيل الجوارب‬

‫‪ . 3.3.1‬بروكسي الجوارب يمكننا إيجاد تطبيق بسيط لوكيل الجوارب على الرابط التالي [‪:]56‬‬

‫قبل تجميعه ‪ ،‬قمنا بتغيير منفذ االستماع من ‪ 5555‬إلى شيء أقل وضوحً ا (على سبيل المثال ‪ )1521 ،‬وقمنا بإعداد اسم مستخدم ‪ /‬كلمة مرور لالتصال بالنفق‪:‬‬

‫نقوم بتجميعها‪ J‬على خادم ‪ ، Front Gun‬ثم تشغيل خادم ‪ HTTP‬خفيف الوزن حتى نتمكن من جلبه الح ًقا من جهاز ‪ Linux‬الخاص بـ ‪:SPH‬‬
‫في مربع ‪ ، SPH Linux‬نقوم ببساطة بتنزيل البرنامج وجعله قابالً للتنفيذ وتشغيله‪:‬‬

‫المنفذ ‪ 1521‬يفتح على الخادم الشبحي‪ .‬لدينا اآلن نفق انتظار االتصاالت الواردة‪ .‬ومع ذلك ‪ ،‬يبدو أن مربع ‪ Linux‬يقف خلف جدار ناري محكم ال يسمح بحركة‬
‫المرور الواردة إلى المنفذ ‪]57[ 1521‬‬

‫لحل هذه المشكلة ‪ ،‬نقوم بإنشاء قاعدتين محليتين على ‪ Linux Box‬لتوجيه كل حزمة قادمة من عنوان ‪ IP‬الخاص بك إلى المنفذ ‪1521‬‬

‫في كل مرة يتلقى فيها جهاز ‪ SPH Linux‬حزمة من عنوان ‪ IP‬الخاص بنا على المنفذ ‪ 80‬الخاص به (الذي يقوم بتشغيل خادم الويب) ‪ ،‬فإنه يعيد توجيهه إلى المنفذ‬
‫‪ . 1521‬يقوم وكيل الجوارب بتوزيع طلبنا ‪ ،‬ثم يقوم باالتصال بالخادم الداخلي المحدد نيابة عنا ‪ ...‬أنيق! الشيء الوحيد الذي يجب فعله هو توجيه كل أداة نستخدمها‪J‬‬
‫على خادم ‪ Front Gun‬الستخدام هذا النفق الذي أنشأناه للتو‪ .‬لحسن الحظ ‪ ،‬ال نحتاج إلى إعادة كتابة كل برنامج نصي على الجهاز‪ .‬الوكالء [‪ - ]58‬موجودون بشكل‬
‫افتراضي على كالي ‪ -‬سوف يعتنون بمشاكل التوجيه‪ .‬نقوم بتحرير ملف التكوين (‪ )etc/proxychains.conf /‬على النحو التالي‪:‬‬

‫لتشغيل ‪ nmap‬باستخدام ‪ ، proxychains‬على سبيل المثال ‪ ،‬نحتاج فقط إلى كتابة األمر التالي على خادم ‪:Front Gun‬‬
‫تلميح‪ :‬يفرض الخيار ‪ sT nmap-‬إلصدار مسح اتصال ()‪ .‬وإال فإن حركة المرور لن تمر من خالل سالسل الوكيل‪ Meterpreter .3.3.2 .‬اعتمدت المناورة‬
‫السابقة على ‪ iptables‬إلنشاء قواعد إعادة توجيه محلية ‪ ،‬وهي أداة متاحة فقط لمستخدمي الجذر‪ .‬ليس لدينا هذا الترف دائمًا بسبب ضيق الوقت واالهتمام واالستغالل‬
‫‪ ،‬وما إلى ذلك‪ .‬من أجل االكتمال ‪ ،‬دعونا نتحقق من ميزات ‪ metasploit‬فيما يتعلق باألنفاق‪ .‬أوالً ‪ ،‬نقوم بإنشاء‪ J‬متر قابل للتنفيذ لنظام ]‪ ، Linux [59‬ثم نقوم بإعداد‬
‫مستمع مناسب على خادم ‪FrontGun‬‬

‫بعد ذلك ‪ ،‬قمنا بإعداد خادم ‪ HTTP‬لتنزيل ملف عداد األحرف من مربع ‪ Linux‬الذي اخترناه ساب ًقا وتشغيله‪:‬‬

‫بعد فترة وجيزة ‪ ،‬تنبثق جلسة مترِّ ب على شاشة ‪ . Front Gun‬جلسة يمكن أن نستخدمها لنفق كل أمر يستهدف ليس فقط الخادم الذي خرقناه ولكن أيضً ا شبكة ‪DMZ‬‬
‫بأكملها‪ .‬للقيام بذلك ‪ ،‬نطلب ببساطة من وحدات ‪ metasploit‬أن تصدر أوامرها خالل جلسة مترجم هذه بإضافة مسار إلى رقم الجلسة (‪ 1‬في هذه الحالة)‪:‬‬

‫يؤكد اختبار سريع باستخدام الماسح الضوئي الداخلي للوحة اللمس أن المسار يعمل بشكل جيد‪:‬‬
‫في احسن االحوال! لكن أدوات المسح الضوئي لـ ‪ metasploit‬بطيئة ج ًدا وأقل موثوقية من األدوات الكالسيكية مثل ‪ .nmap‬باإلضافة إلى ذلك ‪ ،‬سيكون من الجيد‬
‫أن تكون قادرً ا على تشغيل أدوات جهة خارجية أو حتى برامج نصية مكتوبة بخط اليد ضد بعض األجهزة على شبكة ‪ .Bluebox‬لتحقيق ذلك ‪ ،‬نستخدم الوحدة‬
‫النمطية ‪ /‬الخادم ‪ .socks4a /‬يفتح ً‬
‫منفذا محليًا على خادم ‪ .Front Gun‬تتم إعادة توجيه كل حزمة تأتي إلى ذلك المنفذ تلقائيًا إلى جلسة عداد المتر باتباع المسار الذي‬
‫أضفناه ساب ًقا (الحزم إلى ‪ 192.168.1.0/24‬انتقل إلى الجلسة ‪:)1‬‬

‫إلعادة توجيه إخراج أي أداة عبر هذا النفق الذي أنشأناه للتو ‪ ،‬نستخدم سالسل الوكالء مرة أخرى‬

‫الحظ أن ‪ metasploit‬يفتح المنفذ ‪ 9999‬على خادم ‪ ، FrontGun‬على عكس وكيل الجوارب الذي نشرناه مسب ًقا‪ .‬مرة أخرى ‪ ،‬لتشغيل ‪ nmap‬باستخدام‬
‫‪ proxychains‬نصدر ببساطة‪:‬‬
‫نصيحة‪ :‬يمكننا أيضً ا استخدام ‪ SSH‬إلعادة توجيه جميع المنافذ ‪ ،‬كما هو موضح في هذا المنشور ‪https://highon.coffee/blog/sshmeterpreter-‬‬
‫‪ . pivoting-techniques/. 3.4‬العبث بمجرد وصولنا إلى خوادم أخرى في المنطقة المجردة من السالح ‪ ،‬نريد أن نكتشف الخدمات والتطبيقات الموجودة هناك‪.‬‬
‫جدا مسح نطاق الشبكة بالكامل (‪ .)255-0‬ومع ذلك ‪ ،‬سنذهب بسهولة على األجهزة ونبحث أوالً عن المنافذ األكثر‬
‫نحن على شبكة من الفئة ‪ ، C‬لذلك من السهل ً‬
‫شيوعًا‪:‬‬

‫نحن نبحث عن ثمار منخفضة‪ :‬أهداف سهلة يمكن االستفادة منها لتنفيذ تعليمات‪ J‬برمجية على الخادم ‪ ،‬مع الحصول على أعلى االمتيازات إن أمكن‪ .3.4.1 .‬وحيدا‬
‫(ي) بوس كما هو متوقع ‪ ،‬يبدو أن هناك الكثير من خدمات الويب المتاحة‪ .‬رأينا معظمهم‪ J‬عند تصفح اإلنترنت‪ .‬بعد كل شيء ‪ ،‬نحن في قطاع الشبكات "العام"‪ .‬بعض‬
‫خدمات الويب ‪ ،‬ومع ذلك ‪ ،‬لم تظهر في وقت سابق على فحص اإلنترنت‪ :‬لوحات المفاتيح الوسيطة! ‪ Middlewares‬البرامج الوسيطة هي مكون سيستضيف‬
‫تطبيقات ذات مستوى أعلى ويتعامل مع المهام األساسية‪ J‬مثل الجدولة واألولوية وموارد التخزين المؤقت وتطهير الذاكرة وما إلى ذلك‪ Apache .‬هو نوع من مواقع‬
‫الويب الستضافة البرامج الوسيطة‪ .‬ومن األمثلة األخرى األكثر دقة عائلة برامج ‪ Java‬المتوسطة‪ ، JBoss ، Tomcat ، Jenkins :‬وما إلى ذلك‪ .‬ما يهمنا كمتسللين‬
‫هو أن هؤالء الوسطاء لديهم وحدات تحكم المسؤول التي يستخدمها المطورون لنشر تطبيقات جديدة وترقية التطبيقات الحالية ‪ ...‬تمامًا مثل ‪ .CMS‬إذا تمكنا من‬
‫الوصول إلى أحد ‪ ،‬فيمكننا نشر تطبيق جديد سينفذ أي رمز على الخادم‪ .‬نحن نتحقق من نتائج مسح ‪ grep nmap‬للمنافذ المفتوحة التالية‪ 8080 :‬و ‪ 8443‬و‬
‫‪ 8081‬و ‪ .8888‬من المحتمل أن تحتوي على برامج متوسطة مثل ‪ Jboss‬و ‪ Tomcat‬و ‪ Jenkins‬وما إلى ذلك‪.‬‬
‫نطلق ‪ Firefox‬باستخدام ‪ proxychains‬ونستمتع بالمنظر الجميل الذي هو الصفحة الرئيسية لـ ‪:JBoss‬‬

‫نذهب إلى ‪ ، JMX Console‬وهي لوحة اإلدارة على ‪ ، JBoss‬وكما ترون ‪ ،‬يمكننا الوصول إلى محتواها دون تقديم أي بيانات اعتماد ‪ ...‬بعد كل شيء ‪ ،‬ال يمكن‬
‫ألحد الوصول إلى ‪ ، DMZ‬أليس كذلك ؟! الشيء الذي يجعل ‪ JAVA middlewares‬مثل هذا الهدف السهل هو أن هناك العديد من وحدات تحكم المشرف المتوفرة‪:‬‬
‫‪ ... JMX-console ، Web-console ، JmxInvokerServlet‬وهذه هي فقط تلك الموجودة على ‪ HTTP‬الكالسيكي‪ .‬يوجد البعض اآلخر عبر بروتوكوالت‬
‫خاصة مثل ‪ . RMI‬من الطبيعي أن يستغرق األمر خطوات إضافية للتأكد من إغالق كل شيء ‪ ،‬ولكن عندما يقوم األشخاص بإعداد خوادم االختبار ‪ ،‬فإنهم عاد ًة ما ال‬
‫يكلفون أنفسهم عناء اتباع إرشادات األمان‪ .‬ينتظرون حتى يذهبون مباشرة في ستة أشهر‪ .‬بحلول ذلك الوقت ‪ ،‬ومع ذلك ‪ ،‬فقد نسي الجميع لوحات اإلدارة هذه ‪ ،‬أو‬
‫افترض مجرد شخص قام بالفعل بتأمينها‪ .‬في أي حال ‪ ،‬يمكننا أن نكتب تطبيق ‪ java‬ينفذ صدفة عكسية ‪ ،‬ويضعها في ملف ‪ ، War‬ثم نشرها على ‪ JBOSS‬لالستمتاع‬
‫بتنفيذ التعليمات البرمجية عن بُعد‪ .‬ألتمتة هذه العملية ‪ ،‬نحن نعتمد على الوحدة النمطية لـ ‪:metasploit jboss_invoke_deploy‬‬
‫قريب بما فيه الكفاية! ال يمتلك المستخدم ‪ jboss_svc‬امتيازات المسؤول ‪ ،‬وهو أمر غير مألوف تمامًا لخدمة ‪ JBOSS‬على ‪ .Windows‬عاد ًة ما نحصل على‬
‫امتيازات ‪ SYSTEM‬على الفور ‪ ،‬لكن يبدو أن هناك نوعً ا من التشدد تم تنفيذه بعد كل شيء‪.‬‬

‫يكشف التحقيق اإلضافي أننا على خادم‬


‫‪ Windows 2003‬المزود بحزمة الخدمة ‪SP3‬‬
‫مع ثالثة مستخدمين محليين‪ .‬بالطبع ‪ ،‬أول ما‬
‫يعبر عن ذهنك هو‪" :‬هذا قديم! بالتأكيد لدينا بعض‬
‫االستغالالت المتاحة الستئصال هذه القطعة غير‬
‫المرغوب فيها! "[‪ ]60‬صحيح بما فيه الكفاية!‬
‫لكن قد ال نكون محظوظين دائمًا ‪ ،‬لذا سأستعرض‬
‫بعض الطرق الكالسيكية للحصول على وصول‬
‫إلى الجذر في ‪ ... Windows Box‬إنه أسرع‬
‫وأكثر خلسة‪ .‬باالضافة الى ذلك ‪ ،‬يعمل ‪٪ 99‬‬
‫من الوقت‪ .‬نصيحة‪ :‬تتمثل الطريقة القاسية للقيام‬
‫المنشورة ‪/‬‬
‫على‬ ‫المرجح ‪/‬أن تعمل‬
‫من النمطية‬
‫الوحدة‬ ‫تشغيل‬
‫لمعرفة‬ ‫بذلك في‬
‫‪multi‬‬ ‫تتمثل الطريقة القاسية للقيام بذلك في تشغيل الوحدة النمطية ‪ /‬المنشورة ‪/ recon / local_exploit_suggester /‬‬
‫الجهاز الذي تستخدمه‪ . 3.4.2 .‬الصعود والسقوط إن التقنية األساسية لتصعيد االمتياز هي البحث عن كلمات المرور المكتوبة في بعض الملفات المعينة‪ .‬على سبيل‬
‫المثال ‪ ،‬من أجل طرح أجهزة جديدة بسهولة ‪ ،‬يميل المشرفون إلى استخدام برنامج النشر‪ .‬أحيا ًنا تتم كتابة كلمة مرور المسؤول المحلي في ملف يسمى‬
‫‪ unattend.xml‬المستخدم من قبل برنامج النشر هذا‪:‬‬

‫البنغو! باستخدام أي فك شفرة ‪ PowerShell( base64‬و ‪ Linux‬و ‪ )web‬يمكننا الحصول على كلمة مرور نصية واضحة للمستخدم ‪.’admin_svc: ‘Hello5me‬‬
‫يبدو أن المستخدم المحلي لدينا هذه المرة جزء من مجموعة المشرف‪:‬‬
‫نصيحة‪ :‬قد تحتوي الملفات ‪ sysprep.xml‬أو ‪ sysprep.inf‬أيضً ا على كلمات مرور نصية واضحة‪ .‬يمكننا أي ً‬
‫ضا البحث عن البرامج النصية العادية (‪bat ، .sh ، ..‬‬
‫‪ )vbs ، .vba ، .vbe ، .asp ، .aspx ، .php ، .jsp‬على النظام المحلي أو على أي مشاركة‪ J‬شبكة متصلة‪ .‬تعتبر ملفات التكوين مرشحين مثاليين أيضً ا‪ "ini." :‬و‬
‫"‪ "config.‬و "‪ ، " properties.‬وما إلى ذلك‪ .‬يمكننا تشغيل األوامر التالية لتغطية بعض هذه الملفات‪:‬‬

‫بالتأكيد ‪ ،‬يظهر شيء كهذا (بعد بعض عمليات التنظيف والفرز ‪ ،‬بالطبع)‪:‬‬

‫‪ Psexec‬هي أداة تستخدم بكثرة لتنفيذ األوامر على األنظمة البعيدة‪ .‬يتطلب امتيازات المشرف على الخادم البعيد ‪ ،‬لذلك فمن المرجح أن يكون ‪ svc_mnt‬هو حساب‬
‫المسؤول الثاني في جيبنا‪ .‬إنه اثنان لشخصين‪ .‬يمكن أن نستمر في البحث عن طرق أخرى لتشغيل أجهزة ‪ Windows‬األخرى ‪ ،‬لكننا نفضل االستفادة من هذه‬
‫الحسابات‪ J‬الموجودة للحصول على مزيد من الوصول! (راجع هذا العرض التقديمي الرائع إذا كنت مهتمًا بتصعيد امتياز ]‪ .3.4.3 .)Windows [61‬إنها تمطر‬
‫كلمات المرور حتى اآلن ‪ ،‬لدينا حسابان محليان على ‪ Windows‬يبدوان واعدين‪ admin_svc :‬و ‪ .admin_mnt‬مبشرة بمعنى أنه يمكن استخدامها على أجهزة‬
‫‪ Windows‬األخرى أيضً ا مما يوفر علينا الكثير من المتاعب‪ .‬كيف يمكننا معرفة ذلك؟ بسيط بما فيه الكفاية‪ :‬نحن نتصل بكل جهاز ونختبر ما إذا كانت هذه الحسابات‬
‫تعمل أم ال‪ Crackmapexec .‬يقوم بهذه المهمة‪ J‬على ما يرام‪ .‬يستخدم مجموعة من مكالمات‪ WMI (Windows Management Instrumentation) J‬وطلبات‬
‫‪( SMB‬مشاركة الملفات) للتفاعل مع األجهزة البعيدة‪ .‬بالنسبة لسيناريو القوة الغاشمة‪ ، J‬نحتاج فقط إلى منفذ )‪ ، SMB (445‬لذلك نعود إلى نتيجة ‪ nmap‬الخاصة بنا‬
‫ونحصل على قائمة باآلالت التي تعرض مثل هذا المنفذ‪ .‬ثم أطلقنا )‪ CrackMapExec (CME‬بأوراق اعتماد حصلنا عليها مسب ًقا‪ .‬نظرً ا ألننا نستخدم الحسابات‪J‬‬
‫المحلية ‪ ،‬فإننا نضيف "تبديل مجموعة العمل"‪.‬‬

‫يبدو أن بيانات االعتماد التي حصلنا عليها تعمل فقط على جهاز ‪ 2003‬الذي تم استغالله مسب ًقا (‪ .)192.168.1.70‬يقوم المشرفون في بعض األحيان بإعداد كلمات‬
‫مرور مختلفة وف ًقا إلصدار ‪ . Windows‬في أحيان أخرى ‪ ،‬ليس فقط نفس األشخاص المسؤولين‪ .‬قبل تجربة حظنا بالحساب الثاني (‪ ، )svc_mnt‬دعنا نحصل على‬
‫تجزئة حساب‪ J‬أكثر قوة‪ :‬المسؤول المحلي لجهاز ‪ .Windows 2003‬من المحتمل أن يكون لدينا المزيد من الحظ مع هذا‪.‬‬
‫يوزع الخيار ‪ sam -‬على ‪ CME‬خاليا التسجيل ‪ SYSTEM‬و ‪ SAM‬التي تخزن كلمات مرور التجزئة للمستخدمين المحليين‪ .‬رد الفعل األول لدينا هو كسر هذه‬
‫التجزئة ‪ ،‬ولكن بما أننا نتعامل مع بيئة ‪ ، Windows‬يمكننا فقط تخطي هذا الجزء‪ .‬في الواقع ‪ ،‬على تجزئة ويندوز تعادل كلمة مرور نص عادي بفضل بروتوكول‬
‫‪ NTLM. LM / NTLM NTLM‬عبارة عن مجموعة بروتوكوالت مستخدمة على نظام ‪ Windows‬وتشير إلى كل من خوارزمية التجزئة وبروتوكول منافسة‬
‫االستجابة‪ .‬لنناقش أوالً التجزئة على ‪ .Windows‬يتم تخزين كلمات المرور على أجهزة ‪ Windows‬في تنسيقين ‪ ،‬ألسباب تاريخية‪ :‬تنسيقات ‪ LM‬و ‪NTLM‬‬
‫(المستخدم‪ )LM: NTLM :‬تعتمد تجزئة ‪ LM‬على خوارزمية ‪ ، DES‬وبالتالي فهي األضعف في االثنين‪ .‬باإلضافة إلى ذلك ‪ ،‬فإنه يحتوي على العديد من أوجه‬
‫القصور في التصميم ‪ ،‬مما يسهل عملية التكسير (تقتصر كلمات المرور على ‪ 14‬حر ًف ا ‪ ،‬ورسائل األحرف الكبيرة ‪ ،‬بدون الملح ‪ ،‬وما إلى ذلك)‪ .‬تجزئة ‪NTLM‬‬
‫عبارة عن التفاف لخوارزمية ‪ MD4‬المطبقة على قيمة ‪ Unicode‬لكلمة مرور ويبلغ طولها ‪ 128‬بت‪ .‬إنه سريع لحسابه ‪ ،‬وبالتالي فهو سريع للوحشية ‪ ،‬بالنظر إلى‬
‫الموارد المناسبة‪ .‬في سيناريو تسجيل دخول بسيط حيث يجلس المستخدم أمام الكمبيوتر ‪ ،‬يحسب ‪ Windows‬تجزئة كلمة المرور التي كتبها المستخدم ‪ ،‬ويقارنها‬
‫موجودا على إحدى الشبكات ‪ ،‬تعتمد ‪ Microsoft‬على بروتوكول منافس لالستجابة لمصادقة‬ ‫ً‬ ‫بالقيمة المخزنة‪ .‬سهل بما فيه الكفاية‪ .‬ولكن عندما يكون الخادم‬
‫المستخدمين‪ :‬يرسل الخادم تحد ًي ا إلى محطة عمل العميل‪ :‬رقم عشوائي يقوم العميل بتشفيره باستخدام تجزئة كلمة مرور المستخدم ويرسله مرة أخرى إلى الخادم‪ .‬هذا‬
‫األخير ‪ ،‬مع العلم تجزئة المستخدم ‪ ،‬يمكن أن تفعل نفس الحساب‪ .‬إذا تطابقت النتيجتان ‪ ،‬يكون الخادم متأك ًدا من هوية المستخدم‪ .‬كما الحظت ‪ ،‬يستخدم العميل‬
‫التجزئة للرد على التحدي ‪ ،‬بدالً من كلمة المرور‪ .‬على هذا النحو ‪ ،‬يمكن للمهاجم انتحال شخصية أي مستخدم دون معرفة كلمة المرور الخاصة به‪ .‬طبقت‬
‫‪ Microsoft‬فيما بعد بروتوكول ‪ Kerberos‬لتجنب مثل هذا العيب ‪ ،‬ولكن الشركات عالقة مع ‪ .NTLM‬ال يمكنهم تعطيله بسهولة دون كسر بنية ‪Windows‬‬
‫بالكامل‪ .‬مسلحً ا بتجزئة ‪ NTLM‬لحساب المسؤول ‪ ،‬نطلق ‪ CME‬على جميع خوادم ‪ Windows‬مرة أخرى‪:‬‬

‫اآلن نحن نتحدث! لدينا إمكانية الوصول إلى كل جهاز يعمل بنظام ‪ Windows‬بغض النظر عن إصداره! لذلك يمكننا أن نفعل أي شيء نريده على األجهزة البعيدة‪:‬‬
‫الحصول على الملفات ‪ ،‬والتجسس على المستخدمين ‪ ،‬وإفراغ التجزئة ‪ ،‬وما إلى ذلك‪ .‬ولكن ماذا لو قلت لك ‪ ،‬يمكننا أن نفعل ما هو أفضل من ذلك‪ .‬يمكننا الحصول‬
‫على كلمات مرور نصية واضحة للمستخدمين المتصلين مؤخرً ا على أي مربع ‪ Windows‬دون التنشيط ألي شيء‪ .‬إنها ليست ثغرة أمنية بحد ذاتها ‪ ،‬ولكنها أكثر من‬
‫عيب في التصميم‪ .‬أول أداة عامة الستغالل مثل هذا الخلل تسمى ‪ ، Mimikatz‬وقد غيرت عالم ويندوز الذي يعمل على االختراق والتسلل إلى األبد‪- Mimikatz .‬‬
‫العصا السحرية لـ ‪ Windows‬طور ‪ Gentilkiwi Mimikatz‬الستكشاف األجزاء الداخلية آللية مصادقة ‪ .Windows‬اكتشف أنه بعد تسجيل دخول المستخدم ‪ ،‬يتم‬
‫تخزين كلمات المرور الخاصة به في عملية خدمة النظام الفرعي لسلطة األمان المحلية (‪ )LSASS‬في الذاكرة‪ .‬باستخدام وظائف غير موثقة في ‪ ، Windows‬يمكن لـ‬
‫‪ Mimikatz‬فك تشفير كلمات المرور هذه وعرضها‪ .‬أشجعك على االطالع على محادثات جنتيلكيوي المختلفة [‪ ]62‬حول تفاصيل الخلل ‪ ،‬لكن الشيء المدهش هو أنه‬
‫ال يزال يعمل حتى بعد سنوات عديدة‪ .‬يقدم ‪ Mimikatz‬العديد من الخيارات التي أصبحت أداة مرجعية بشكل فعال عند اختراق ‪ pentesting /‬بيئات ‪.Windows‬‬
‫سنتحدث عن بعض وظائفها في وقت الحق‪ .‬قد تتساءل عما إذا كنا نواجه مخاطرة كبيرة هنا‪ .‬يبدو أن هذه األداة معروفة على نطاق واسع‪ .‬من المؤكد أن منتجات‬
‫مكافحة‪ J‬الفيروسات ومكافحة‪ J‬البرامج الضارة ستضع عالمة على البايت الخمسة األولى من هذه األداة‪ .‬صحيح! ولكن هناك حقيقة واحدة مهمة بسيطة حول منتجات‬
‫مكافحة‪ J‬الفيروسات‪ :‬فهي تقوم فقط بتحليل الملفات التي تكتبها على القرص‪ .‬مهما‪ J‬كانت تقنياتهم رائعة ومبتكرة ‪ ،‬فهي محدودة بهذه الحقيقة البسيطة‪ .‬حقق ‪Mimikatz‬‬
‫هذا النجاح لدرجة أنه تم دمجه بسرعة في معظم أدوات مهاجمة‪ .Windows J‬يمكن لـ ‪( CrackMapExec‬اإلمبراطورية ‪ ،‬و ‪ ، metasploit‬وغيرها) تشغيله عن‬
‫بُعد في الذاكرة ‪ ،‬مع تجنب االكتشاف بواسطة بائعي ‪ AV‬التقليديين كليًا‪:‬‬
‫دعنا نراجع سلسلة الهجوم لفهم هذا األمر‪ Crackmapexec :‬يعمل على خادم ‪ . Front Gun‬يبدأ تشغيل العملية عن بعد في الذاكرة باستخدام "استدعاء العمليات عن‬
‫بُعد" (]‪ )RPC [63‬على المنفذ ‪ .135‬ثم تقوم هذه العملية بتشغيل جهاز ‪ PowerShell stager‬صغير على األجهزة المستهدفة‪ .‬يلتقط هذا الراكب نصًا‬
‫‪ PowerShell‬يقوم بإطالق ]‪ Mimikatz [64‬من ‪( CME‬ومن هنا ‪ ،‬خيارات الخادم والخادم المنفذ) ‪ ،‬وينفذه في الذاكرة ويرسل النتيجة مرة أخرى عبر ‪ .HTTP‬ال‬
‫‪ Mimikatz‬على القرص ‪ ،‬ال الكشف‪ .‬األمر بهذه السهولة‪.‬‬

‫الكل في الكل ‪ ،‬إنها أكثر من ست كلمات مرور فريدة نجمعها‪ .‬كل كلمة من كلمات المرور هي مفتاح محتمل للوصول إلى المزيد من األجهزة على ‪.Greenbox‬‬
‫سيكون هذا موضوع الفصل التالي‪.‬‬

‫نصيحة‪ :‬اعتمدت هذه المناورة بأكملها باستخدام ‪ CrackMapExec‬و ‪ Mimikatz‬على افتراض قوي قد ال يثبت دائمًا أنه صحيح‪ :‬حقيقة أن خوادم ‪ Windows‬في‬
‫المنطقة المجردة من السالح العامة يمكنها االتصال بخادم ‪ Front Gun‬الخاص بنا على المنفذ ‪ 80‬لتوصيل كلمات المرور الناتجة‪ .‬قد ال يكون هذا هو الحال دائمًا ‪،‬‬
‫كما سنرى الح ًقا‪ . 4 .‬داخل العش "الفأر الشجاع للغاية فقط يجعل العش في أذن القط‪ ".‬بدأت إيرل دير بيججرز األشياء مثيرة لالهتمام‪ .‬حتى اآلن ‪ ،‬لدينا‪ :‬التحكم في‬
‫جهاز ‪ Linux‬في ‪( Bluebox‬شبكة ‪ DMZ‬العامة)‪ .‬ستة حسابات‪ J‬مع امتيازات المسؤول على أجهزة ويندوز المختلفة في ‪ .Bluebox‬نفق افتراضي للوصول إلى‬
‫األجهزة داخل ‪ . Bluebox‬إن الشيء الجميل في الجزء التالي من التمرين هو أنه في األساس مجرد إعادة صياغة لما فعلناه من قبل ‪ ،‬أي‪ :‬اكتشاف المنافذ المفتوحة ‪،‬‬
‫واستغالل الثغرات األمنية ‪ ،‬وتفريغ كلمات المرور ‪ ،‬والتكرار ‪ ...‬ولكن دعونا ال ننسى هدفنا الرئيسي‪ :‬نريد الوصول إلى صندوق بريد المدير التنفيذي ‪ ،‬لجلب‬
‫البيانات الهامة ‪ ،‬وبالطبع لتترك أثراً ضئيالً وراءه‪ Active Directory .4.1 .‬من أجل متابعة بقية السيناريو بشكل صحيح ‪ ،‬من المهم أن يكون لديك بعض المعرفة‬
‫األولية لـ ‪ . Active Directory‬يخدم هذا الفصل الصغير مثل هذا الغرض من خالل االنتقال بوضوح إلى بعض مفاهيم ‪ Active Directory‬الرئيسية‪ .‬إذا كنت تشعر‬
‫أنك تعرف م ‪ ،‬يمكنك فقط االنتقال إلى الفصل التالي‪ .‬عاد ًة ما يتم ربط أجهزة ‪ Windows‬في بيئة الشركة م ًعا من أجل مشاركة الموارد واإلعدادات الشائعة‪ .‬تم إعداد‬
‫هذا الربط باستخدام ‪ .Windows Active Directory‬تسمى العقدة الجذرية لـ ‪ Windows Active Directory‬باسم مجموعة التفرعات‪ .‬الغرض الوحيد منه هو‬
‫احتواء المجاالت‪( J‬مجموعات من اآلالت والمستخدمين) التي تشترك في تكوين مماثل [‪ .] 65‬يتبع كل مجال سياساته الخاصة (قوة كلمة المرور ‪ ،‬جدول التحديث ‪،‬‬
‫حسابات المستخدمين ‪ ،‬اآلالت ‪ ،‬إلخ)‪ .‬وحدة تحكم المجال هي جهاز يعمل بنظام ‪ Windows‬ويتحكم في هذا المجال ويديره‪ .‬هذا هو المحور المركزي الذي تعتمد‬
‫عليه الموارد التخاذ القرارات أو استطالع اإلعدادات الجديدة منها‪ .‬أكبر شبكة ‪ ،‬والمزيد من وحدات تحكم المجال هناك لزيادة األداء‪ .‬يمكن تعريف نوعين من‬
‫المستخدمين على جهاز يعمل بنظام ‪ Windows‬متصل بمجال‪ :‬المستخدمون المحليون الذين يتم تخزين تجزئاتهم محليًا على الخادم‪ .‬مستخدمي المجال الذين يتم‬
‫تخزين التجزئة على وحدة تحكم المجال‪ .‬لذلك ال يتم إرفاق مستخدم‪ J‬المجال بمحطة عمل واحدة ويمكنه االتصال بجميع محطات العمل في المجال (ما لم يُمنع من القيام‬
‫بذلك)‪ .‬لالتصال عن بعد على خادم ‪ ،‬يحتاج المستخدم إما امتيازات سطح المكتب البعيد على امتيازات الخادم أو المسؤول المذكورة (سواء محليا أو عبر المجال)‪.‬‬
‫يمكن أن يكون المستخدمون جز ًء ا من مجموعات محلية محددة فقط على جهاز معين ‪ ،‬أو يمكن أن يكونوا جز ًءا من مجموعات المجال المحددة على مستوى المجال ‪-‬‬
‫أي على جهاز التحكم في المجال‪ .‬هناك ثالث مجموعات مجال رئيسية تمتلك سيطرة كاملة على المجال وجميع موارده‪ :‬مجموعة مسؤول المجال‪ .‬مجموعة إدارة‬
‫المؤسسة‪ .‬مسؤولي المجال‪ .‬إذا كنا نتحكم في حساب‪ J‬ينتمي إلى إحدى هذه المجموعات ‪ ،‬فسيكون هذا بمثابة التحقق التلقائي للشركة (‪ !)66‬لمراجعة وضعنا الحالي ‪،‬‬
‫فإن أجهزة ‪ Windows‬التي اخترناها في المنطقة المجردة من السالح (‪ ) DMZ‬العامة غير مرتبطة بمجال ‪ ،‬ولسبب وجيه‪ :‬المجال هو مورد داخلي وليس لديه إدارة‬
‫أعمال أو يحتوي على موارد إنترنت مواجهة عامة‪ .‬في عالم مثالي ‪ ،‬يجب تعريف المجال العام (أو الغابة) للتعامل مع هذه اآلالت‪ .‬بالطبع ‪ ،‬ال ينبغي أن توجد ثقة بين‬
‫المجال الداخلي والمجال "الخارجي"‪ .‬اختار ‪ SPH‬خيارً ا أكثر بساطة‪ :‬استبعاد كافة خوادم ‪ Bluebox‬الخاصة به من المجال الداخلي وإدارتها بكلمة مرور مسؤول‬
‫واحدة‪ .‬الغرض كله من الفصول التالية هو التمحور من أجهزة ‪" Windows‬الخارجية" إلى جهاز المجال ‪ ،‬وبالطبع لتصعيد امتيازاتنا داخل المجال‪ .4.2 .‬إلى أين‬
‫نحن ذاهبون؟ نحن نعرف أن قطاع ‪ Bluebox‬موجود على الشبكة الخاصة ‪ ، 192.168.1.0/24‬ولكن ماذا عن ‪( Greenbox‬الشبكة الداخلية)؟ يمكننا تخمين‬
‫عمياء نطاقه ‪ ،‬لكن هذا ليس ممتعً ا كثيرً ا‪ .‬لحسن الحظ ‪ ،‬اتضح أن خوادم ‪ DMZ‬ملزمة في معظم الحاالت بالتفاعل مع عدد قليل من األجهزة الداخلية ‪ ،‬سواء أكانت‬
‫قواعد البيانات ‪ ،‬أو خوادم الملفات ‪ ،‬أو محطات العمل ‪ ،‬وما إلى ذلك ‪ ،‬وهذا كل ما نحتاج إليه! على أيٍّ من األجهزة الشبهة ‪ ،‬نقوم بتشغيل أمر ‪ netstat‬البسيط‬
‫لسرد جميع اتصاالت ‪ IP‬الثابتة‪.‬‬

‫‪ IP 10.10.20.118‬بالتأكيد ليس جزءًا من شبكة ‪ .Bluebox‬لنجرب مقطع ‪ IP‬هذا‪ .‬كوننا المتسللين المحافظين نحن ‪ ،‬نفترض أنها شبكة صغيرة ‪ 24 /‬حتى يتم إثبات‬
‫ذلك‪ . 4.3 .‬إعادة استخدام كلمة المرور لدينا ما يكفي من مواد كلمة المرور في حقيبتنا ‪ ،‬لذلك لن نبحث بالضرورة عن نقاط ضعف جديدة في قطاع ‪ IP‬الجديد‪ .‬بعد‬
‫كل شيء ‪ ،‬لماذا تبحث عن عمليات استغالل معقدة عندما يمكننا محاكاة‪ J‬تسجيل دخول مستخدم عادي‪ .‬ستكون استراتيجيتنا هي مصادقة‪ J‬بسيطة على جميع أجهزة‬
‫‪ Windows‬باستخدام بيانات االعتماد التي حصلنا عليها بالفعل‪ .‬إنه ليس هجومًا وحشيًا كالسيكيًا (حساب واحد ‪ ،‬كلمات مرور متعددة) ‪ ،‬بل هو "هجوم زوجي" [‬
‫‪ :] 67‬على كل جهاز ‪ ،‬نحاول نفس الحساب ‪ /‬كلمة المرور‪ .‬لذلك نتجنب قفل الحسابات‪ J‬أو تشغيل أي قواعد كشف [‪ .]68‬تتمثل الفكرة في العثور على جهاز ثمين‬
‫ً‬
‫جهازا داخليًا‪ .‬بمجرد العثور‬ ‫مرتبط بمجال ثمين يقبل أحد المستخدمين المحليين الذين حصلنا عليه بالفعل‪ .‬كل ما نحتاج إليه هو واحد من بين ما يبدو قطا ًعا من ‪253‬‬
‫على واحد ‪ ،‬يمكننا إعادة تشغيل ‪ Mimikatz‬والحصول على المزيد من كلمات المرور‪ .‬ولكن هذه المرة من المحتمل أن نحصل على حسابات مجال ‪ -‬ربما حتى‬
‫حسابات مجال مميزة‪ .‬أوالً ‪ ،‬نطلق ‪ nmap‬لتحديد األجهزة المستهدفة‪ J‬مع فتح المنفذ ‪ 445‬لتضييق قائمة الهدف‪ .‬ندرج أيضًا ‪ ، 3389‬حيث قد يثبت أنه مفيد دائمًا‪.‬‬
‫ً‬
‫واحدا‬ ‫بالنظر إلى أننا نتصل بهذه الخوادم من شبكة ‪ ، Bluebox‬فمن المتوقع أن يتم تصفية بعض المنافذ‪ .‬من بين جميع الحسابات التي حصلنا عليها ‪ ،‬يعد ‪svc_mnt‬‬
‫من أكثر الحسابات‪ J‬الواعدة‪ .‬يبدو وكأنه حساب خدمة يستخدم إلدارة نوع من التطبيق‪ .‬لذلك لديه احتماالت أفضل من أن يتم تعريفها على خادم آخر‪ .‬نطلق ‪CME‬‬
‫باستخدام هذا الحساب‪:‬‬

‫نصيحة‪ :‬تحمل عالمة التعجب معنى خاصً ا في ‪ ، bash‬وبالتالي يجب الفرار منها ‪ ،‬خاصة عند وضعها قبل األعداد‪ .‬ومن هنا فإن مكافحة‪ J‬القطع في مجال كلمة‬
‫المرور‪ .‬يبدو أن هناك أجهزة قليلة فقط تقبل ‪ .svc_mnt‬ليس عظيما‪ .‬باإلضافة إلى ذلك ‪ ،‬نظرً ا للتحكم في وصول المستخدم (‪ ، )UAC‬ال يمكننا تشغيل ‪Mimikatz‬‬
‫عن بُعد‪ UAC .‬هي ميزة مقدمة على ‪ Windows VISTA‬تطالبك المستخدمين بمربع حوار منبثق قبل تنفيذ اإلجراءات المتميزة (تثبيت البرنامج ‪ ،‬وما إلى ذلك)‪ .‬لذلك‬
‫‪ ،‬ال يمكن للمسؤول حتى تنفيذ األوامر المميزة على النظام‪ .‬ال يخضع حساب‪ J‬المسؤول االفتراضي افتراضيًا إلى ]‪ ، UAC [69‬ولهذا السبب لم يزعجنا كثيرً ا من قبل‪.‬‬
‫لحسن الحظ ‪ ،‬يبدو أن منفذ )‪ RDP (3389‬مفتوح على أحد األجهزة التي تقبل ‪ .svc_mnt: 10.10.20.118‬إذا استطعنا فتح جلسة تفاعلية رسومية على الخادم البعيد‬
‫‪ ،‬فلم تعد مشكلة ‪ UAC‬مشكلة اآلن ‪ ،‬أليس كذلك! نطلق ‪( rdesktop‬أو ‪ )mstsc‬على خادم ‪ Front Gun‬ونتصل بحساب‪:svc_mnt J‬‬
‫نكتب بعد ذلك نصً ا صغيرً ا يقوم بتنزيل ‪ Mimikatz‬مكتوب من ‪ PowerShell‬ويقوم بتنفيذه فقط في الذاكرة باستخدام أمر )‪:IEX (Invoke-Expression‬‬

‫نفتح موجه األوامر مع امتيازات إدارية (انقر بزر الماوس األيمن> تشغيل كمسؤول) ثم قم بتشغيل البرنامج النصي‪:‬‬

‫ننتظر بصبر لبضع ثوان ‪ ،‬لكن وظيفة ‪ DownloadString‬تتخلف ؛ يبدو أن األجهزة على شريحة ‪ 10.10.20.0/24‬ال يمكنها الوصول إلى اإلنترنت ‪ -‬على األقل‬
‫ليس من دون المرور عبر وكيل يتطلب بيانات اعتماد مجال صالحة ‪ ،‬والتي ليس لدينا حتى اآلن ‪ ...‬لتجاوز هذا القيد ‪ ،‬ن ّزلع ‪ InvokeMimikatz.ps1‬إلى خادم‬
‫‪ Linux‬الذي اخترناه ساب ًقا وقم بتشغيل خادم ‪ HTTP‬بسيط لتوفيره‪:‬‬

‫نقوم بتحديث البرنامج النصي ‪ PowerShell‬ليعكس التغيير في عنوان ‪ URL‬ونطلقه للمرة الثانية‪:‬‬
‫قد ال نكون مدراء مجال حتى اآلن ‪ ،‬لكنني آمل أال تفوت كلمة مرور المسؤول المحلي على الشاشة‪ .Dom_M @ ster_P @ ssword1 :‬يبدو أن أجهزة المجال لها‬
‫حسابات مسؤول محلي مختلفة عن األجهزة األخرى غير المجال‪ .‬الشيء الرائع اآلن هو أننا نستطيع إطالق ‪ Mimikatz‬على جميع األجهزة التي تشترك في نفس‬
‫حساب المسؤول‪ .‬في بعض األحيان ‪ ،‬ستضربها وفي بعض األحيان ستفشل ‪ ،‬بالطبع ‪ ،‬لكننا نحتاج فقط إلى حساب‪ J‬مميز بمجال واحد متصل في الوقت المناسب على‬
‫الجهاز الصحيح! بدالً من إطالق ‪ Mimikatz‬من ‪ - CrackMapExec‬على خادم ‪ Front Gun‬من خالل وكيل الجوارب في شبكة ‪ - Bluebox‬سنطلقه مباشر ًة من‬
‫خادم ‪ . 10.10.20.118‬بهذه الطريقة يمكننا تجنب أي تصفية جدار الحماية تماما‪( .‬تعتمد ‪ CME‬على منافذ ‪ RPC - 135‬و ‪ 49152‬إلى ‪ - 65535‬لتنفيذ‬
‫‪ Mimikatz‬عن بعد‪ .‬ليس شيًئ ا يسمح به جدار الحماية بين ‪ DMZ‬والشبكة الداخلية‪ ).‬نفتح جلسة ‪ RDP‬باستخدام حساب المسؤول الذي حصلنا عليه ‪ ،‬ونعدّل النص‬
‫البرمجي إلى دعم التنفيذ على أجهزة متعددة عن طريق إضافة مفتاح الكمبيوتر‪:‬‬

‫هذه المرة ‪ ،‬سيقوم ‪ Invoke-Mimikatz‬بإنشاء مؤشرات ترابط عن بعد باستخدام تنفيذ ‪ PowerShell‬عن بعد (خدمة ‪ WinRM‬على المنفذ ‪ ، )5985‬ثم تخزين‬
‫النتيجة في نتيجة الملف‪ .txt.‬نصيحة‪ :‬عند استخدام تنفيذ ‪ PowerShell‬عن بُعد ‪ ،‬حدد دائمًا اسم الخادم بدالً من عنوان ‪ IP‬الخاص به (استخدم ‪ .)nslookup‬نصيحة‪:‬‬
‫في حالة عدم تمكين ‪( Remote PowerShell‬المنفذ ‪ ، )5985‬يمكننا إصالحه باستخدام أمر ‪ WMI‬من جهاز يعمل بنظام ‪ :Windows: wmic / user‬المسؤول ‪/‬‬
‫كلمة المرور‪ / Dom_M @ ster_P @ ssword1 :‬عقدة‪ 10.10.20.229 :‬إنشاء‪ J‬استدعاء العملية "‪ "powershell‬تمكين‪ -PSRemoting-‬فرض "‬
‫وها! تم حصاد أكثر من ‪ 60‬كلمة مرور‪ .‬بالتأكيد ‪ ،‬نحن نكتشف حسابًا قد يكون له امتيازات مثيرة لالهتمام‪ .adm_supreme :‬نحن نتساءل عن مجموعة "مدراء‬
‫النطاقات"‪ J‬للتأكد‪:‬‬

‫ينتمي ‪ Adm_supreme‬بالفعل إلى مجموعة "مشرف المجال"‪ .‬تحقق وزميله! نصيحة‪ :‬عند االستعالم عن موارد المجال (المجموعات ‪ ،‬المستخدمون ‪ ،‬إلخ‪ ).‬تذكر‬
‫دائمًا استخدام حساب‪ J‬مجال صالح‪ .‬في الشاشة أعاله ‪ ،‬أعدنا االتصال بـ ‪ 10.10.20.118‬بحساب‪ adm_supreme J‬قبل تنفيذ األمر "‪ ."net group‬الغوص‬
‫العميق استخدام ميزة ‪ invoke-mimikatz‬لتنفيذ التعليمات البرمجية على أجهزة متعددة ليس أمرً ا موثو ًقا به ح ًق ا‪ .‬إذا لم يقم المسؤولون بتكوين التحكم عن بُعد في‬
‫‪ PowerShell‬عن بُعد ‪ ،‬فقد يكون من الصعب بعض الشيء جعله يعمل‪ .‬طريقة واحدة لحل هذه المشكلة هي استخدام ‪ ، WMI‬األداة األخرى المثيرة لالهتمام لتنفيذ‬
‫األوامر عن بعد على الخادم‪ .‬تتمثل الفكرة في إنشاء أمر ‪ PowerShell‬من سطر واحد ينفذ ‪ Mimikatz‬ويقوم بتفريغ المحتوى إلى ملف محلي‪ .‬نطلق هذا الرمز عن‬
‫ثوان ‪ ،‬ثم نسترجع الملف الموجود على الجهاز الخاص بنا‪ .‬لنأخذ األمر خطوة بخطوة‪ .1 .‬قمنا بتغيير الرمز السابق قليالً لتضمين‬ ‫ٍ‬ ‫بُعد باستخدام ‪ ، WMI‬وانتظر بضع‬
‫عنوان ‪ IP‬للهدف في اسم ملف اإلخراج‪:‬‬

‫‪ . 2‬نقوم بتغيير كل فاصل أسطر إلى "؛" ونضع هذا البرنامج النصي داخل متغير في برنامج نصي ‪:PowerShell‬‬

‫‪ .3‬نحن ‪ base64‬ترميز هذا المتغير وتحديد اآلالت الستهدافها‪:‬‬


‫‪ .4‬نقوم بعد ذلك بإعداد حلقة إلطالق ‪ ، WMI‬والتي تفرخ ‪ PowerShell‬مع رمز ‪ base64‬السابق الذي تم تمريره كوسيطة‪:‬‬

‫‪ .5‬أخيرً ا ‪ ،‬ننقل ملفات اإلخراج إلى جهازنا ‪:10.10.20.118‬‬

‫يتم تضمين البرنامج النصي الكامل أدناه مع ملحق ثانوي ‪ -‬مقتطف من التعليمات البرمجية التي تنتظر حتى انتهاء العملية البعيدة قبل استرداد النتيجة‪:‬‬
‫‪ . 4.4‬الحلقة المفقودة هل تذكر حملة التصيد؟ بينما كنا مشغولين بآالت ومجاالت ‪ p0wning‬على حد سواء ‪ ،‬كان الموظفون يقومون بفتح ملفات ‪ Excel‬الخاصة بنا‬
‫بمرح‪.‬‬

‫فلنلق نظرة على كيفية تحقيق نفس النتيجة من خالل االنتقال إلى محطة عمل المستخدم بدالً من ذلك‪.‬‬
‫ِ‬ ‫على الرغم من أننا نتحكم اآلن في كل مورد على شبكة ‪، SPH‬‬
‫مالحظة‪ :‬نعود إلى إطار عمل ‪ ، Empire‬حيث كان المستمع على خادم ‪ Front Gun‬ينتظر االتصاالت الواردة من البرامج الضارة لبرنامج ‪ .Excel‬نتفاعل مع هدف‬
‫عشوائي وسرد المعلومات األساسية‪ J‬عن البيئة‪:‬‬
‫يتم استضافة ‪ shell‬العكس بواسطة عملية ‪ PowerShell‬تعمل في الخلفية‪ .‬حتى إذا أغلق المستخدمون مستند ‪ ، Excel‬فال نزال نحافظ على إمكانية الوصول إلى‬
‫أجهزتهم‪ .‬بالطبع ‪ ،‬ستؤدي عملية إعادة التمهيد البسيطة إلى قتل عميلنا ؛ لذلك ‪ ،‬نحن بحاجة إلى اتخاذ بعض التدابير االحترازية قبل المضي قدما‪ .‬عند كل تسجيل‬
‫دخول جديد ‪ ،‬يبحث ‪ Windows‬عن بعض مفاتيح التسجيل ويقوم بتنفيذ عدد من البرامج بشكل عمياء‪ .‬سوف نستخدم أحد مفاتيح التسجيل هذه لتخزين برنامج‬
‫‪ PowerShell‬النصي الذي سيعيد االتصال في كل مرة يقوم فيها ‪ Mike‬بإعادة تشغيل جهاز الكمبيوتر الخاص به‪.‬‬

‫تستخدم هذه الوحدة المعينة مفتاح ‪ Run‬لتحقيق الثبات ( ‪ HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Run‬وهي طريقة معروفة‬
‫تستخدمها برامج ال تعد وال تحصى‪ .‬إنها أبعد ما تكون عن كونها الطريقة األكثر خلسة التي يمكننا التوصل إليها ‪ ،‬ولكن بالنظر إلى قوتنا المحدودة االمتيازات في‬
‫محطة العمل ‪ ،‬ال يمكننا فعاًل تحمل شيء أكثر جنسية في الوقت الحالي‪ .‬نصيحة‪ :‬يمكننا تنفيذ هذه الوحدة بشكل أعمى على جميع الوكالء اآلخرين ببساطة عن طريق‬
‫تغيير الهدف في الوحدة النمطية‪" :‬تعيين عامل ‪ ." XXXXX‬واآلن بعد أن أصبح لدينا ذلك المغطى ‪ ،‬نحن نريد الستهداف المستخدمين ‪ ،‬من المحتمل أن يكون لديهم‬
‫بعض االمتيازات اإلدارية في المجال ‪ ،‬أو على األقل الوصول إلى بعض الخوادم ‪ ،‬وسيكون هدف دعم قسم تكنولوجيا المعلومات هد ًفا واضحً ا ‪ ،‬ونطلب من ‪Active‬‬
‫‪ Directory‬إدراج الموظفين المسجلين في تلك اإلدارة‪:‬‬

‫نحن نتحقق من النتيجة ضد قائمة األشخاص الذين نقروا على ملفنا الضار‪ .‬عزيزي جون يبرز [‪:]70‬‬
‫على الرغم من أن ‪ John‬هو مدير تكنولوجيا المعلومات ‪ ،‬إال أنه ال يتمتع بامتيازات المسؤول في محطة عمله‪ .‬جيد ‪ ،‬بعض التحدي! هناك العديد من المسارات التي‬
‫يمكنك اتباعها من هنا‪ :‬البحث عن عمليات االستغالل ‪ ،‬والخدمات‪ J‬التي تم تكوينها بشكل خاطئ ‪ ،‬وكلمات المرور في الملفات أو مفاتيح التسجيل ‪ ،‬وما إلى ذلك‪.‬‬
‫يستغل أحدهم شعبية كبيرة وقت كتابة هذا الكتاب ‪ ،‬ويستفيد من مشكلة عدم الحصانة ]‪ .MS016-32 [71‬تتم كتابة رمز المشغل في ‪ ، PowerShell‬مما يجعله مثاليًا‬
‫للسيناريو الحالي‪ .‬ومع ذلك ‪ ،‬فنحن ال نملك دائمًا رفاهية عقد استغالل عام ‪ ،‬لذلك سنتخذ طري ًقا أكثر موثوقية‪ .‬نقوم بتشغيل وحدة ‪ ، PowerUp‬التي تقوم بإجراء‬
‫عمليات الفحص المعتادة على ‪ Windows‬لتحديد مسارات قابلة لالستمرار لرفع امتيازاتنا على الجهاز‪:‬‬
‫ال توجد خدمة غير صحيحة أو ‪ DLL‬قابلة لالختراق أو كلمات مرور غير واضحة‪ .‬دعنا نلقي نظرة على قائمة المهام المجدولة‪:‬‬

‫مثيرة لالهتمام ‪ ،‬من المقرر أن تقوم المهمة بتحديث حافظات شاشة المستخدمين بشكل روتيني في كل مرة يقومون فيها بتسجيل الدخول إلى محطات‪ J‬العمل الخاصة‬
‫بهم‪ .‬البرنامج النصي عبارة عن "‪ "launcher.bat‬بسيط موجود في " ‪ ."\ C: \ Apps \ screensaver‬ماذا عن قائمة‪ J‬الوصول الموضوعة في هذا المجلد؟‬

‫البنغو! يتمتع كل مستخدم‪ J‬بالتحكم الكامل في المجلد " ‪( "\ C: \ Apps \ screensaver‬إذن "‪ .)"F‬يمكننا اختطاف هذه المهمة‪ J‬المجدولة عن طريق استبدال ملف "‬
‫‪ " launcher.bat‬بنصنا الخاص‪ .‬على سبيل المثال ‪ ،‬برنامج نصي يقوم بتشغيل ‪ Mimikatz‬وإفراغ كلمات المرور إلى ملف محلي (\ ‪c: \ users \ john‬‬
‫‪ .)appdata \ local \ temp \ pass_file.txt‬نقوم بإعداد الكود كما هو الحال دائمًا من خالل ترميزه في ‪ .base64‬إنها نفس الخطوات كما كانت من قبل ‪ ،‬لذا‬
‫لن أتطرق إليها‪:‬‬
‫في ما يلي النص " ‪ "launcher_me.bat‬الذي ينتهي في محطة عمل ‪:John‬‬

‫نقوم بتحميله باستخدام ‪ Empire‬في المجلد الهدف‪:‬‬

‫أخيرً ا ‪ ،‬نتنكر نصنا كقاذفة جديدة‬

‫ثم ننتظر بضع ساعات ‪ ،‬ربما يوم أو يومين‪ .‬في النهاية ‪ ،‬عندما يقوم جون بتسجيل الدخول [‪ ] 72‬مرة أخرى ‪ ،‬يمكننا جلب ملفنا (وبالطبع تنظيف الفوضى الصغيرة)‪:‬‬
‫مثير لإلعجاب! يبدو أن هذه المهمة المجدولة يتم تنفيذها بالفعل بامتيازات ‪:adm_supreme‬‬

‫ً‬
‫حديثا لتفرخ جلسة مسؤول جديدة على محطة العمل‪.‬‬ ‫نحن نستخدم بيانات االعتماد هذه المكتسبة‬
‫تحتوي جلسة ‪ adm_supreme‬الجديدة على امتيازات مقيدة بحكم الواقع على محطة العمل (ستضرب ‪ UAC‬مرة أخرى)‪ .‬إذا كنا بحاجة إلى تنفيذ إجراءات مرتفعة‬
‫مثل إعداد طريقة ثبات أفضل ‪ ،‬والتجسس على ‪ ، John‬وما إلى ذلك ‪ ،‬نحتاج إلى استخدام سياق ذي امتياز أعلى ‪ ،‬وبالتالي تجاوز ‪:UAC‬‬
‫النجم الصغير أمام اسم المستخدم العزيز ‪ adm_supreme‬يعني أنه جلسة مرتفعة‪ .‬يمكننا استخدام هذه الجلسة إلعداد الثبات واألشياء األنيقة األخرى على محطة‬
‫العمل‪ .4.5 .‬المزيد من كلمات المرور الكل في الكل ‪ ،‬حصلنا على حساب‪ J‬مشرف مجال واحد‪ .‬هذا وحده يكفي إلحداث الفوضى‪ .‬ولكن ماذا يحدث عندما يغير هذا‬
‫المسؤول كلمة المرور الخاصة بهم؟ بالنظر إلى مستوى الوصول الذي لدينا بالفعل ‪ ،‬هل يمكننا إدارة المزيد من كلمات المرور دون إنتاج الكثير من الضوضاء؟ تكمن‬
‫اإلجابة في ملف ‪ :NTDS.DIT‬قاعدة بيانات ‪ Active Directory‬التي تحتوي على مخططات التكوين وتعريفات الموارد وتجزئة كلمات‪ J‬مرور جميع المستخدمين‪ .‬يتم‬
‫تخزينها وتكرارها على كل وحدة تحكم المجال‪ .‬ومع ذلك ‪ ،‬فإن عملية تصدير هذا الملف وتحليله بطيئة للغاية [‪ .]73‬في الحياة الواقعية ‪ ،‬نحتاج فقط إلى كلمات مرور‬
‫لعدد قليل من المستخدمين‪ .‬سنستهدف هذه التجزئة من خالل استغالل ميزة النسخ المتماثل لـ ‪ .Active Directory‬يمكن لوحدات التحكم بالمجال تبادل تجزئات‬
‫المستخدمين لتفويض المصادقة لبعضهم البعض‪ .‬من خالل انتحال شخصية وحدة تحكم مجال ‪ ،‬يمكن أن يطلب ‪ Mimikatz‬بفعالية أي تجزئة كلمة مرور‪ .‬يطلب‬
‫سطر األوامر أدناه تجزئة مسؤول المجال‪:‬‬

‫باستخدام هذا الحساب‪ ، J‬لم نعد ملزمين بـ ‪ ... UAC‬على اإلطالق! نكرر هذا األمر لكل حساب‪ J‬مجال يهمنا‪ .‬يمكننا إجراء تجزئة لتمثيل هوية هؤالء المستخدمين‪.‬‬
‫نصيحة‪ :‬تتمثل إحدى أساليب الثبات المثيرة لالهتمام في إنشاء‪ J‬تذكرة ذهبية (بطاقة ‪ Kerberos‬صالحة لمدة ‪ 10‬سنوات)‪ .‬راجع‪:‬‬
‫‪ . http://blog.gentilkiwi.com/securite/mimikatz/goldenticket-kerberos. 5‬البحث عن البيانات "اكتشف الكيميائيون في بحثهم عن الذهب أشياء‬
‫أخرى كثيرة ذات قيمة أكبر"‪ .‬آرثر شوبنهاور ‪ ،‬واآلن بعد أن أصبح لدينا مفاتيح للمملكة ‪ ،‬يمكننا التركيز بالكامل على تحقيق الغرض الحقيقي من "زيارتنا"‪ :‬الحصول‬
‫على العمل السري ‪ ،‬الموارد البشرية ‪ ،‬والملفات االستراتيجية‪ .‬إلقاء رسائل البريد اإللكتروني الثمينة للرئيس التنفيذي‪ .‬تسريب سجالت‪ J‬العمالء‪ .5.1 .‬تقنية‬
‫‪ Exfiltration‬تحديد موقع البيانات هو الجزء السهل‪ .‬الحصول عليها دون تشغيل أي نظام إنذار في مكان هو أصعب قليال‪ .‬سوف تصرخ أدوات مثل أنظمة منع فقدان‬
‫البيانات (‪ )DLP‬إذا حاولت تحميل عرض ‪ PowerPoint‬التقديمي الخاطئ إلى ‪ ، Google Drive‬مهما كان صغيراً‪ .‬علينا أن نكون حذرين‪ .‬باختصار ‪ ،‬نحتاج إلى‬
‫استراتيجية قوية من أجل‪ :‬الحصول على بيانات كبيرة كبيرة (غيغا بايت) دون إثارة بعض الحواجب ؛ تشفير البيانات لجعل أي تحقيق مستقبلي أعمى فيما يتعلق بما‬
‫تم أخذه بالفعل ؛ ابحث عن طريقة موثوقة ال يحظرها جدار الحماية أو وكيل الويب‪ .‬إذا قمنا بتسريب ‪ 50‬جيجابايت من البيانات في ليلة واحدة ‪ ،‬فستكون هناك زيادة‬
‫واضحة في الحجم ستتيح للناس في وقت الحق معرفة وقت تسرب البيانات‪ .‬ربما يكون هناك إنذار ينطلق إذا تم تلبية حد معين لحجم الصوت‪ .‬هذا مرهق! لتجنب أي‬
‫مشكلة ‪ ،‬سنقوم بتجزئة البيانات التي نريد تهريبها إلى أجزاء متعددة ونزولها كل ساعة ‪ /‬يوم ‪ /‬أسبوع في أوقات عشوائية‪ .‬لنقل أننا نريد تهريب دليل ‪Rachel‬‬
‫الرئيسي‪ ."C: \ users \ Rachel \ documents " :‬أوالً ‪ ،‬نضغطها باستخدام أوامر ‪ PowerShell‬األصلية (تعمل مع ‪ Windows 8‬و ‪ ، 10‬لكن ليس ‪)7‬‬
‫نصيحة‪ :‬إلعداد كلمة مرور ‪ ،‬قم بتثبيت ‪ 7zip‬على الهدف واستخدم البرنامج النصي ‪PowerShell http://blog.danskingdom.com/powershell-‬‬
‫‪ .function-tocreate-a-password-protected-zip-file‬على الرغم من ذلك ‪ ،‬قد يتم اكتشاف اختبار ملف ‪ zip‬هذا بواسطة أنظمة ‪ DLP‬التي يمكنها فك ضغط‬
‫الملفات للبحث عن المستندات ذات العالمات‪ .‬إذا لم يتمكنوا من فك ضغط الملف ‪ ،‬فقد يقومون بحظره‪ .‬لهذا السبب نحتاج إلى إضافة حجاب‪ J‬آخر للخداع‪ :‬قم بتحويل‬
‫ملف ‪ zip‬الواضح هذا إلى ملف نصي قديم سهل يتجاوز أي نظام ‪ .DLP‬يمكننا استخدام "‪ ، "certutil -encode‬وهو أمر أصلي لـ ‪ Windows‬لترميز المستند‬
‫المضغوط في ‪ ، base64‬ثم إرسال الملف النصي الناتج إلى خدمة تحميل‪ .‬ومع ذلك ‪ ،‬هناك أداة تعمل على أتمتة هذا وتوفر علينا بضع دقائق من التعليمات البرمجية‪:‬‬
‫]‪ . Do-Exfiltration.ps1 by Nishang [74‬هناك خياران رئيسيان متاحان في هذه األداة‪ :‬نقل البيانات عبر ‪ HTTPS‬إلى خادم ويب نتحكم فيه‪ .‬تضمين البيانات في‬
‫استعالمات ‪ DNS‬التي يتم إرسالها إلى خادم ‪ DNS‬الخاص بنا‪ .‬طريقة ذكية ج ًد ا لتجاوز قواعد جدار الحماية وتصفية الوكيل ‪ ،‬نظرً ا ألن ‪ DNS‬يُسمح بالضرورة‬
‫بالمرور عبر هذا النوع من المعدات‪ .‬سنذهب مع الخيار األول ألنه يوفر خيارً ا مثيرً ا لالهتمام لتحميل البيانات مباشر ًة إلى ‪ ، Pastebin.com‬لذلك لن نضطر إلى‬
‫القلق بشأن إعداد خادم ويب‪ .‬لقد أنشأنا حسابًا على ‪ Pastebin‬وحصلنا على مفتاح ‪( API‬المشار إليه أدناه باسم ‪ .)dev_key‬نطلق بعد ذلك ‪DoExfiltration‬‬
‫باستخدام األمر التالي‪:‬‬

‫كما ترون ‪ ،‬يمكننا الحصول على ملفك من ‪ PasteBin‬مباشرة‪:‬‬

‫الستعادة المستند المضغوط ‪ ،‬نقوم بتنزيل الملف النصي ‪ ،‬ثم فك تشفيره باستخدام األمر ‪ base64‬على ‪:Linux‬‬

‫اآلن بعد أن عرفنا كيف نحصل على البيانات ‪ ،‬دعنا نبحث عن بعض الهياكل العظمية الثمينة! ‪ .5.2‬الملفات االستراتيجية عاد ًة ما تكون ملفات الشركات الحساسة‬
‫موجودة في موقعين‪ :‬مشاركة‪ J‬الشبكة على الخوادم (وأحيا ًنا محطات العمل)‪ .‬محطات‪ J‬عمل المستخدم ‪ ،‬آالت ‪ ، VIP‬الموارد البشرية ‪ ،‬التسويق ‪ ،‬والمحاسبة‪ .‬من جلسة‬
‫‪ RDP‬الخاصة بنا على ‪ ، 10.10.20.118‬يمكننا سرد مشاركات‪ J‬الشبكة على الخوادم البعيدة حتى نصل إلى لعبة البنغو‪:‬‬

‫يوفر ]‪ PowerView.ps1 [75‬نفس الخيارات باستخدام ‪ ، Invoke-ShareFinder‬الذي يبحث عن كل مضيف متوفر على المجال وسرد مشاركاته‪:‬‬
‫نصيحة‪ :‬نقوم بتحميل البرنامج النصي باستخدام استدعاء االستدعاء (‪ ) IEX‬لتجنب تشغيل تنبيه مكافحة الفيروسات‪ .‬نقوم بنسخ أي دليل نريده إلى خادم ‪Windows‬‬
‫الذي نتحكم فيه ‪ ،‬ونضغط عليه ‪ ،‬ونختبره باستخدام التقنية المعروضة من قبل‪ .‬عاد ًة ما يمكننا الحصول على بيانات كافية‪ J‬حول مشاركات‪ J‬الشبكة إلعار شركة بأكملها‬
‫سبع مرات حتى يوم األحد‪ .‬إذا كنا نرغب في االنتقال إلى المستوى التالي ‪ ،‬فيمكننا استهداف مستخدمين محددين وسمكة للحصول على معلومات‪ .‬للقيام بذلك ‪ ،‬نحتاج‬
‫إلى معرفة أي منها يشغل مناصب رئيسية داخل الشركة‪ .‬نحن نسأل بلطف الدليل النشط عن موقف وقسم الموظفين ‪ ،‬وبالتالي خريطة التسلسل الهرمي بأكمله‪ .‬نظرً ا‬
‫لوصولنا المتميز ‪ ،‬يمكننا استرداد أي ملف على أجهزتهم عن بُعد ‪ ،‬والجحيم يمكننا حتى تسجيل ضربات المفاتيح ‪ ،‬وتمكين الكاميرا ‪ ،‬والحصول على التسجيالت ‪،‬‬
‫وما إلى ذلك‪ .‬نقوم بإصدار ‪ Get-NetUser‬من ‪ PowerView‬لسرد األشخاص العاملين في الموارد البشرية‪:‬‬

‫نصيحة‪ :‬يمكننا تحقيق نفس النتائج من خالل األمر ‪ GetAdUser‬المتوفر في وحدة ‪ Active Directory PS‬الرسمية‪ - PS> Get-AdUser .‬قسم العقارات ‪ -‬قسم‬
‫التصفية ‪ -‬مثل "‪ - "HR‬نكرر اإلجراء لتعيين كل هيكل رئيسي آخر داخل الشركة‪ ، ExCom :‬التسويق ‪ ،‬المحاسبة ‪ ،‬إلخ‪ .‬بعد الحصول على أسماء المستخدمين‬
‫الخاصة بهم ‪ ،‬يمكننا البدء في تعقبهم أسفل عن طريق العثور على ‪ / IP‬اسم محطات العمل الخاصة بهم‪ .‬ستكون الطريقة األكثر موثوقية للقيام بذلك تحليل سجالت‬
‫أحداث االتصال الناجحة على وحدة تحكم المجال‪ .‬عاد ًة ما يحتوي على آخر جهاز يستخدمه المستخدم لتسجيل الدخول‪ .‬يوفر ‪ PowerView‬وحدة ‪Invoke-‬‬
‫‪ EventHunter‬لتنفيذ هذه المهمة بسهولة‪:‬‬

‫يبدو جولييت تستخدم آخر محطة عمل )‪ .FRPC066 (10.10.20.66‬نحن نحاول الوصول إلى مجلد المشاركة‪ J‬االفتراضي لمحطة العمل الخاصة بها عن بعد ‪ ،‬ولكن‬
‫في النهاية يتم حظره بواسطة جدار الحماية المحلي‪:‬‬
‫ال يوجد أي ‪ ، RDP‬وال توجد منافذ ‪ ... RPC‬بشكل أساسي ال توجد وسيلة من أجهزتنا‪ .‬ومع ذلك ‪ ،‬نحن نتحكم في المجال ‪ ،‬لذلك بالتأكيد يمكننا أن نحقق بعض‬
‫السحر‪ .‬خالصنا يكمن في كائنات السياسات العامة‪ GPO .‬عبارة عن حزمة من اإلعدادات المحددة على مستوى المجال لتغيير تكوين الموارد‪ :‬إعداد وكيل وتغيير‬
‫حافظات الشاشة وتنفيذ البرامج النصية بالطبع! بين الحين واآلخر ‪ ،‬تقوم محطات‪ J‬العمل باستقصاء إعدادات ‪ GPO‬الجديدة من وحدة تحكم المجال ‪ ...‬مما يجعلها مثالية‬
‫للهروب من قواعد جدار الحماية‪ .‬إذا تمكنا من الدخول في إعداد ينفذ برنامج ‪ PowerShell‬النصي ‪ ،‬فيمكننا تشغيل غالف عكسي يعمل على الجهاز الخاص بها‬
‫ونقوم بأي شيء نريده الح ًقا‪ .‬أوالً ‪ ،‬نقوم بتنشيط واستيراد وحدات "نهج المجموعة" في جلسة ‪ PowerShell‬المتاحة في ‪:10.10.20.118‬‬

‫ثم نقوم بإنشاء ‪ GPO‬وهمية تسمى تحديث ‪( Windows‬نستهدف وحدة تحكم المجال ‪:)FRS V210‬‬

‫نريد فقط استهداف حساب‪ Juliette J‬على الكمبيوتر ‪ ، FRPC066‬لذلك نحن نقيّد نطاق ‪:GPO‬‬

‫أخيرً ا ‪ ،‬نربطها بمجال ‪ SPH‬لتنشيطه‪:‬‬

‫ً‬
‫جديدا للخلف العكسي ‪ base64 ،‬تم ترميزه هذه المرة من أجل احتواء مفتاح التسجيل بشكل‬ ‫نعود إلى إطار عمل ‪ Empire‬على خادم ‪ Front Gun‬وننشئ وكياًل‬
‫جيد‪:‬‬
‫بعد ذلك ‪ ،‬نطلب من كائن نهج المجموعة الذي أنشأناه إلعداد مفتاح تسجيل "تشغيل" في المرة التالية التي يقوم فيها جهاز كمبيوتر ‪ Juliette‬باستقصاء إعدادات‬
‫جديدة‪ .‬سينفذ مفتاح التسجيل هذا وكيل ‪ PowerShell‬عند تسجيل الدخول التالي لجولييت‪PS> Set-GPRegistryValue -Name "WindowsUpd :‬‬

‫نحن ننتظر بصبر حتى ‪ ،‬في نهاية المطاف ‪ ،‬لدينا الهواتف قذيفة العكسية‪ J‬المنزل‪:‬‬

‫بمجرد تشغيل محطة العمل ‪ ،‬يمكننا إجراء نفس العمليات كما هو موضح ساب ًق ا في اختبار البيانات‪ .‬نصيحة‪ :‬لتجنب إثارة الشكوك ‪ ،‬نقوم بتنظيف سياسة كائن نهج‬
‫المجموعة وكذلك مفاتيح التسجيل في أقرب وقت ممكن‪ .‬نصيحة‪ :‬لقد اخترنا تعديل سجل لتنفيذ البرنامج النصي الخاص بنا ‪ ،‬ولكن إذا كنا ‪ RDP‬على وحدة تحكم‬
‫المجال ‪ ،‬فيمكننا الحصول على لوحة اختيار أكبر (نشر البرامج النصية وملفات ‪ ، msi.‬إلخ)‪ .‬كما أنها أقل خلسة ‪ ،‬حيث ستسجل سجالت األحداث هذه الجلسة‬
‫التفاعلية‪ .5.3 .‬رسائل البريد اإللكتروني ‪ .5.3.1‬الطريقة المستهدفة‪ J‬الطريقة األسهل للحصول على رسائل البريد اإللكتروني لموظف معين هي استهداف أجهزة‬
‫الكمبيوتر الخاصة بهم [‪ ]76‬وتنزيل ملف ذاكرة التخزين المؤقت لبرنامج ‪( Outlook‬البريد اإللكتروني‪ .‬آخر)‪C: \ Users \ eric \ AppData \ Local \ :‬‬
‫‪ Microsoft \ Outlook C: \ Documents and Settings \ eric \ Local Settings \ Application Data \ Microsoft \ Outlook‬جهاز الكمبيوتر‬
‫الخاص بالرئيس التنفيذي ليس مغل ًقا تمامًا مثل ‪ ، Juliette‬لذلك نحن فقط نرفع المشاركة عن بُعد \\ ‪ $ FRPC074 \ C‬باستخدام بيانات اعتماد مسؤول المجال‬
‫والوصول إلى جميع ملفاته‪ .‬نقوم بنسخ ملف ‪ OST‬الخاص بـ ‪ eric.blackie@sphassets.com‬إلى خادم ‪ Front Gun‬الخاص بنا وعرض كل بريد إلكتروني‬
‫أرسله الرئيس التنفيذي أو تلقاه‪ .‬ومع ذلك ‪ ،‬عندما نفتح ملف ‪ OST‬باستخدام أدوات عادية [‪ ، ] 77‬ال يمكننا عرض معظم رسائل البريد اإللكتروني الحساسة‪ .‬يبدو أن‬
‫المدير التنفيذي لدينا يستخدم تشفير ‪ s / MIME‬لحماية رسائل البريد اإللكتروني الخاصة به‪.‬‬

‫‪ s / MIME s / MIME‬هو بروتوكول قياسي لتبادل رسائل البريد اإللكتروني بشكل آمن على أساس البنية التحتية للمفتاح العام‪ .‬دون الخوض في الكثير من التفاصيل‬
‫‪ ،‬كل مستخدم لديه مفتاح عام وخاصة‪ .‬عندما يرسل المستخدم أ رسالة بريد إلكتروني إلى المستخدم ب ‪ ،‬يقوم أ بتشفير المحتوى باستخدام المفتاح العمومي ب‪ .‬نظرً ا‬
‫ألن المستخدم ب فقط لديه المفتاح الخاص الذي يمكنه عكس التشفير ‪ ،‬يمكن للمستخدم ب فقط عرض البريد اإللكتروني‪ .‬للتوقيع ‪ ،‬تتم العملية العكسية‪ .‬يوقع المستخدم‬
‫أ البريد اإللكتروني باستخدام مفتاحه الخاص وألن المستخدم ب يمكنه الوصول إلى المفتاح العمومي أ ‪ ،‬يمكن للمستخدم ب عكس التوقيع للتحقق من صحته‪ .‬اآلن‬
‫ً‬
‫مبسط ا للغاية وال يدخل في التشفير المختلط ‪ ،‬وحفل المفاتيح ‪ ،‬وتبادل المفاتيح ‪ ،‬وسلطة الشهادة ‪ ،‬وما إلى ذلك ألنها ببساطة ليست مهمة لدراسة‬ ‫أصبح هذا المخطط‬
‫مخز ن على جهازه‪ .‬لكن ال يمكننا الوصول إليها ‪ ،‬حتى مع امتيازات المسؤول ‪ ،‬ألن نظام‬‫ّ‬ ‫الحالة لدينا [‪ .]78‬والمشكلة المطروحة اآلن هي أن المفتاح الخاص إلريك‬
‫التشغيل ‪ Windows‬اعتبرها "غير قابلة لالستيراد" ‪ ...‬كيف نتعامل مع ذلك؟ ‪ Mimikatz‬إلى اإلنقاذ ‪ ...‬مرة أخرى! يا لها من أداة رائعة! نقوم بتشغيله على جهاز‬
‫الكمبيوتر الخاص بالرئيس التنفيذي للتبديل "الذاكرة القابلة للتصدير" في الذاكرة وتفريغ جميع الشهادات إلى الملفات المحلية‪ .‬نحن ]‪ RDP [79‬على آلة الرئيس‬
‫التنفيذي ونعد نصنا الزمني‪:‬‬
‫نقوم بتثبيت الشهادات على آلة ‪ ، Front Gun‬ثم نتمتع برسائل البريد اإللكتروني المشفرة من المدير التنفيذي العزيز! ‪ .5.3.2‬النهج الواسع األسلوب أعاله رائع ‪،‬‬
‫لكن القيام بذلك بشكل متكرر أكثر من عشرة أو مائة صندوق بريد بعيد عن المثالية‪ .‬من الواضح ‪ ،‬إذا قام الجميع بتشفير رسائل البريد اإللكتروني الخاصة بهم فلن‬
‫جد ا من الناس بتشفير رسائل البريد اإللكتروني الخاصة بهم ‪ ...‬لقد أخذنا مثاالً متطر ًفا إلظهار كيف يمكن‬
‫يكون هناك أي حل حولها‪ .‬لحسن الحظ ‪ ،‬يقوم عدد قليل ً‬
‫القيام بذلك ‪ ،‬لكن هذا ال يحدث غالبًا في الحياة الواقعية‪ .‬للحصول على رسائل البريد اإللكتروني للجميع ‪ ،‬نطلب برفق من خادم ‪ Exchange‬المحلي تسليم كل بريد‬
‫إلكتروني موجود في المتجر‪ .‬نظرً ا ألن خادم ‪ Exchange‬جزء من المجال ‪ ،‬فسيتم االمتثال له بلطف‪ .‬يمكننا استخدام ‪ ، MailSniper‬وهي أداة مكتوبة في‬
‫‪ PowerShell‬توفر األوامر الالزمة لجلب وترتيب رسائل البريد اإللكتروني‪ .‬تحقق من األداة في العمل هنا [‪ .5.4 .]80‬سجالت‪ J‬العمالء لتلخيص ذلك ‪ ،‬سيطرنا‬
‫على مجال ‪ ، Windows‬لذلك نحن نسيطر على كل مورد ‪ Windows‬موجود على نظام المعلومات‪ .‬يسمح لنا بالتطفل على المستخدمين والحصول على رسائل‬
‫البريد اإللكتروني وبيانات الموارد البشرية وغير ذلك الكثير‪ .‬ومع ذلك ‪ ،‬بصرف النظر عن مدى صعوبة البحث ‪ ،‬ال يمكن العثور على سجالت العمالء‪ .‬هذا مزعج‬
‫بعض الشيء! أثناء تصفحنا للوحدات التنظيمية المختلفة (‪ )OU‬ومجموعات على ‪ ، Active Directory‬نالحظ شيًئ ا مثيرً ا لالهتمام‪ :‬مجموعة تسمى "حاسب‪ J‬مركزي‬
‫كبير"‪.‬‬

‫المركزية هي آلة حديد كبيرة مع قوة معالجة هائلة‪ .‬وف ًق ا للطراز ‪ ،‬يمكن أن تمتد ذاكرة الوصول العشوائي (‪ )RAM‬طوال الطريق إلى ‪ 10‬تيرابايت ‪ ،‬مع ‪141‬‬
‫معالجً ا ‪ ،‬كل منهم ‪ 5‬جيجاهرتز ‪ ،‬وما إلى ذلك‪ .‬النقطة المهمة هي أنه إذا كانت الشركة تستطيع شراء أحد هذه الوحوش ‪ ،‬فلن يتم االحتفاظ برسائل البريد اإللكتروني‬
‫الخاصة بها‪ .‬غالبًا ما يتم استخدامه الستضافة‪ J‬تطبيقات األعمال الهامة التي تحتاج إلى توفر ‪ .24/7‬لذلك ‪ ،‬هناك فرصة جيدة أن تكون بيانات عمالئنا الثمينة موجودة‬
‫هناك! المشكلة الوحيدة هي أن هذه اآلالت تتمتع بسمعة طيبة من حيث األداء ‪ ،‬والثبات ‪ ،‬وبالطبع من الناحية األمنية! حتى أن البعض يدعي أنهم ال يهزمون ‪ ،‬غير‬
‫قابلين لالختراق ‪ ،‬غير قابلين للكسر ‪ ...‬تحصلون على هذه النقطة‪ .‬ابحث في اإلنترنت عن طرق الختراق حاسوب مركزي وستفاجأ بندرة المعلومات‪ .‬على الرغم من‬
‫أن هذه السنوات األخيرة شهدت‪ J‬طفرة في هذا الموضوع [‪ ، ]81‬إال أننا ال نزال بعيدين عن ما لدينا على نظامي ‪ Windows‬و ‪ ... Linux‬وعلى أي حال ‪ ،‬فإن هدفنا‬
‫هو الحصول على بيانات العمالء‪ ، J‬لذا استعدوا ألنفسكم ‪ ،‬فإننا سنفعل ما ال يمكن تصوره‪ :‬إحضار ركبتيه المركزية‪ .6 .‬اختراق "ال شيء وكل شيء ممكن" ‪ ،‬بارني‬
‫ستينسون ‪ . 6.1‬وضع القطب يمكن أن نهاجم المركزية المركزية مباشرة (مسح المنفذ ‪ ،‬القوة الغاشمة ‪ ،‬إلخ) ‪ ،‬لكن هل نحن بحاجة ح ًقا إلى ذلك؟ لنكن أذكياء حول‬
‫هذا ‪ ...‬نحن نتحكم في كل محطة عمل ‪ Windows‬على الشبكة‪ .‬يستخدم مدراء الحاسوب الرئيسي محطات العمل نفسها هذه لالتصال بالحديد الكبير‪ .‬إذا تمكنا من‬
‫التجسس عليهم والحصول على كلمات المرور الخاصة بهم ‪ ،‬فيمكننا الدخول في ‪ !Mainframe‬نقوم بتوسيع حاسب‪ J‬المجموعة الرئيسي باستخدام األمر ‪ net‬في‬
‫‪:10.10.20.118‬‬

‫نقوم بتحديد موقع محطات عمل ‪ Barney‬و ‪ Rev‬باستخدام ‪ Invoke-UserHunter‬أو ‪ Invoke-EventHunter‬كما فعلنا ساب ًقا باستخدام كمبيوتر ‪ ، Juliette‬ثم‬
‫نقوم بإعداد حمولتنا‪ .‬يمكننا المضي قد ًم ا بطرق مختلفة لتشغيل كلوغرز على محطات العمل الخاصة بهم‪ :‬سرقة بيانات االعتماد الخاصة بهم واالتصال عن بعد‬
‫بمحطات العمل الخاصة بهم باستخدام تمرير التجزئة إلطالق كيلوغر‪( .‬على الرغم من أن الحسابات تحتاج إلى امتيازات المسؤول المحلي ‪ ،‬والتي ال يبدو أن األمر‬
‫كذلك‪ ).‬استخدم حساب مجال لتصيب محطة العمل الخاصة بهم بوكيل إمبراطوري ‪ ،‬ثم قم بتشغيل كيلوغر‪ .‬نشر كائن نهج المجموعة الضار الذي يستهدفهم‪ .‬نختار‬
‫الخيار الثاني ألن كمبيوتر ‪ Barney‬يتيح لنا تنفيذ األوامر عن بُعد باستخدام ‪( WMI‬منافذ ‪ PRC‬مفتوحة على جهازه‪ :‬المنفذ ‪ 135‬والمنافذ أعاله ‪ .)49152‬نقوم‬
‫بإنشاء رمز ‪ stager‬الخاص بنا على خادم ‪:Front Gun‬‬

‫بعد ذلك نقوم بإدراجه في مكالمة ‪ WMI‬عن بُعد من الجهاز ‪:10.10.20.118‬‬

‫بالتأكيد ‪ ،‬حصلنا على اتصال وكيل جديد بحساب ‪:adm_supreme‬‬

‫نتجاوز ‪ UAC‬باستخدام الوحدة النمطية ‪ bypassuac_eventvwr‬التي أثبتت جدواها ‪ ،‬ثم نتفاعل مع الجلسة المرتفعة الجديدة‪ .‬ومع ذلك ‪ ،‬إذا أطلقنا برنامج‬
‫‪ keylogger‬باستخدام هذه الجلسة ‪ ،‬فسنضغط فقط على ضغط المفاتيح من حساب ‪ adm_supreme‬على محطة عمل ‪ ... barney‬وهذا يعني على وجه التحديد ‪0‬‬
‫مفاتيح‪ .‬هذا القيد يرجع إلى بساطة كلوغر الموجودة في إطار ‪ . PowerShell Empire‬لديها مزاياها بالطبع‪ :‬إنها وحدة خفيفة الوزن للغاية وال تولد الكثير من‬
‫الضوضاء‪ .‬النتحال شخصية هوية بارني ‪ ،‬سنولد عملية جديدة على الجهاز الذي يحتوي على رمزه‪ .‬الرمز المميز هو المكافئ لملف تعريف ارتباط جلسة الويب على‬
‫‪ . Windows‬إنها بنية في الذاكرة تشير إلى امتيازات وهوية المستخدم وراء كل عملية‪ .‬للحصول على رمز أمان بارني ‪ ،‬نحن ببساطة "نسرقه" من برنامج حالي‬
‫يديره حاليًا‪ Internet Explorer :‬و ‪ ، Firefox‬إلخ‪.‬‬

‫قد تكون العملية ‪ 1188‬هد ًفا رائعً ا‪ .‬سيطلق األمر "‪ "steal_token‬عملية ‪ PowerShell‬في الخلفية بهوية ‪.Barney‬‬
‫عظيم! اآلن وبعد أن تمكن العميل من انتحال شخصية بارني ‪ ،‬أطلقنا برنامج ‪:keylogger‬‬

‫من المؤكد أن تدفقات ضربات المفاتيح تبدأ في التدفق بينما يكتب بارني بشراسة ما يبدو أنه برنامج ]‪ JCL [82‬في المفكرة‪.‬‬

‫نحن نبحث عن ضغطات المفاتيح داخل البرامج مثل ‪ Quick3270‬و ‪ ، WC3270‬إلخ‪ .‬وعاد ًة ما يتم استخدام هذه األجهزة العميلة السميكة للوصول إلى أجهزة‬
‫الكمبيوتر الرئيسية‪ .‬بعد ساعتين ‪ ،‬حصلنا أخيرً ا على أكثر الجوائز الموعودة‪:‬‬

‫يبدو أن الحاسوب المركزي يجلس على شبكة أخرى تمامًا‪ . 10.10.40.0/24 :‬أتذكر عندما تحدثنا عن منطقة مظلمة تتألف من أشياء مجهولة؟ حس ًنا ‪ ،‬يمكننا اآلن‬
‫إلقاء الضوء على شريحة ‪ IP‬جديدة على األقل‪:‬‬
‫يمكننا بسهولة تحديد موقع كلمة المرور في مجموعة ضغط المفاتيح من خالل البحث عن "سلسلة ‪ TSO". IT‬هو مترجم سطر األوامر على ‪ ، z / OS‬وهو نظام‬
‫التشغيل األكثر شيو ًعا على حاسب‪ .IBM Mainframe J‬الحساب‪ J‬في هذه الحالة هو‪ .BARN / PASS1 :‬للتفاعل مع ‪ ، Mainframe‬نحتاج إلى محاكي ‪[ 3270‬‬
‫‪ ]83‬على الجهاز ‪ x3270( 10.10.20.118‬على ‪ Linux‬أو ‪ wc3270‬على ‪ .)Windows‬فكر في األمر وكأنه نوع خاص من عميل ‪ .Telnet‬نقوم بتنزيله‬
‫واالتصال بعنوان ‪ IP‬الخاص بالكمبيوتر الرئيسي‪.]84[ 10.10.40.33 :‬‬

‫تسمى شاشة التحية بـ ‪ VTAM‬وتمنح الوصول إلى تطبيقات متعددة قد ال تظهر على فحص المنفذ‪ .‬التطبيق الوحيد الذي يهمنا هو ‪ ، TSO‬وهو مترجم سطر األوامر‬
‫على حاسب مركزي [‪.]85‬‬

‫تادا! نحن اآلن على منصة األكثر أمانا في العالم ‪...‬‬


‫‪ .6.2‬ركوب الوحش تدعونا رسالة "‪ "READY‬التي تستقبلنا على الحاسوب المركزي إلى إصدار أوامر ( ُتمنح بناء جملة غريبة ‪ ،‬لكن األمر يتطلب التعود فقط)‪.‬‬
‫للحصول على االمتيازات الحالية لدينا ‪ ،‬نقوم بتشغيل األمر ‪( LU‬اختصار لـ ‪.)ListUser‬‬

‫سمة بارني هي ‪ . NONE‬ليس لدينا امتياز كبير على أجهزة الكمبيوتر المركزية ‪ -‬بدرجة كافية‪ .‬سيكون هذا هو التحدي األول الذي يواجهنا قبل ذلك‪ .‬عادة ما يتم‬
‫تخزين كلمات المرور على ‪ z / OS‬في قاعدة بيانات ‪ RACF‬بتنسيق مجزأ‪ RACF .‬هو منتج األمان األكثر شيو ًعا المستخدم‪ J‬للتعامل مع كل وصول مصادقة والتحكم‬
‫الذي تم إصداره على ‪ .z / OS‬يمكننا تحديد موقع قاعدة بيانات ‪ RACF‬عن طريق استدعاء قائمة ‪:RVARY‬‬

‫يتم تخزين قاعدة البيانات األساسية في ملف ‪ .SYS.RACFDS‬تتبع أسماء الملفات على ‪ z / OS‬اصطالح تسمية يشبه ‪ :DNS‬سلسلة متتالية من التصفيات مفصولة‬
‫بالنقاط‪ .‬يسمى المؤهل األول مؤهل عالي المستوى (‪ ، )HLQ‬وفي هذه الحالة ‪ ، SYS1‬وهو أمر شائع لملفات النظام‪ .‬ومع ذلك ‪ ،‬فإن محاولة قراءة قاعدة بيانات‬
‫‪ RACF‬تطالب بتحذير صغير يمنعنا بلطف من الوصول ‪ ...‬سيء ج ًدا! سنذهب مع فكرة أخرى‪ :‬مكتبات ‪ .APF‬هذه مكافئات‪ J‬المجلدات الخاصة التي تحتوي على‬
‫وحدات ‪ . kernel‬يمكن لكل برنامج يتم إطالقه من هذه المكتبات طلب أعلى االمتيازات وتنفيذ أي إجراء على النظام (الوضع المصرح به)‪ .‬للبحث بسهولة عن‬
‫مكتبات ‪ ، APF‬نستخدم البرنامج النصي الصغير التالي‪ ELV.APF [86] :‬نقوم بتحميله إلى ‪ Mainframe‬باستخدام ‪( IND $ FILE‬ملف قائمة>‪ J‬ملف نقل) مع‬
‫الخيارات التالية‪:‬‬
‫ننفذه بعد ذلك لسرد مكتبات ‪ APF‬المتاحة ووصول ‪ Barney‬إلى كل واحدة منها‪:‬‬

‫قراءة الوصول في كل مكان ‪ ...‬باستثناء على ‪ .USER.LINKLIB‬يبدو أن ‪ Barney‬لديه‬


‫امتيازات كافية لتغيير مورد ‪ APF‬هذا‪ .‬متألق! سنستفيد من هذا الضعف من خالل تجميع‬
‫ً‬
‫معتمدا وتحديث بنية في الذاكرة‬ ‫برنامج في مكتبة ‪ APF‬هذه‪ .‬سيطلب برنامجنا وض ًعا‬
‫تحتوي على امتيازات ‪( Barney‬كتلة التحكم ‪ .)ACEE‬نقوم بتغيير هذا الهيكل إلعطاء‬
‫‪ Barney‬حق الوصول الكامل إلى ‪ :Mainframe‬السمة الخاصة! يقوم ‪ ELV.APF‬بكل‬
‫هذا تلقائيًا ‪ ،‬لذلك لن نضطر إلى كتابة البرنامج الفعلي وتجميعه‪:‬‬

‫الحمد هلل! اآلن وقد أصبحنا خاصين ‪ ،‬يمكننا تنزيل قاعدة بيانات ‪ RACF‬بالكامل وتقسيمها في وضع عدم االتصال بإصدار خاص من "]‪.John the Ripper" [87‬‬
‫هذا سيتيح لنا الوصول إلى حسابات‪ J‬أخرى في حالة قفل هذا الحساب لسبب ما (استخدام ملف ‪ -‬نقل الملفات ‪ ،‬ولكن هذه المرة اختيار نقل ثنائي)‪.‬‬

‫يتم تخزين كلمات المرور افتراضيًا باستخدام خوارزمية ‪( DES‬تقتصر على ‪ 56‬بتة) مع سياسات كلمة مرور ضعيفة (بدون أحرف مختلطة ‪ 3 ،‬أحرف خاصة ‪ ،‬إلخ)‬
‫‪ .xi ts) b ut w ho reallybo the rs ... 6.3‬البحث عن الملفات هذه الخطوة صعبة نو ًعا ما! على ‪ ، Windows‬وصلنا للتو إلى كل ملف على كل خادم يبحث عن‬
‫بيانات مثيرة لالهتمام‪ .‬لم يكن هناك سجل تدقيق يدعو للقلق ألن الناس نادراً ما يسجلون الوصول الناجح إلى الملفات (كان لدينا حقوق مسؤول المجال ‪ ،‬حتى نتمكن‬
‫من الوصول إلى كل شيء ‪ ،‬تذكر؟) حس ًن ا على الحاسوب المركزي ‪ ،‬األمور مختلفة بعض الشيء‪ .‬ال يزال األشخاص ال يقومون بتسجيل الدخول الناجح إلى الملفات ‪،‬‬
‫ً‬
‫ارتباطا وثي ًقا باستهالك‬ ‫لكنهم يراقبون استخدام وحدة المعالجة المركزية الخاصة بهم عن كثب‪ .‬ال يشعرون بالقلق بشأن األداء ‪ ،‬ولكن ألن الفاتورة التي يدفعونها ترتبط‬
‫وحدة المعالجة المركزية الخاصة بهم‪ .‬يجب أن نكون حريصين على عدم العمل بشكل كبير لتجنب الكشف [‪ .]88‬تتمثل إحدى الطرق في التحقق من مجلدات‬
‫المستخدم الرئيسية فقط‪ .‬احذر ‪ ،‬على أي حال ‪ ،‬من السهل أن يضم اآلالف من المستخدمين بسهولة‪ .‬لذلك ‪ ،‬لن نستهدف سوى المستخدمين ذوي السمات المهمة‪:‬‬
‫العمليات‪ :‬تم تعيينها للمستخدمين أو حسابات الخدمة للوصول إلى أي بيانات بغض النظر عن قواعد األمان المعمول بها‪ .‬محمي‪ :‬عادة ما يتم تعيينه لحسابات الخدمة‬
‫(قواعد البيانات ‪ ،‬البرامج الوسيطة ‪ ،‬وما إلى ذلك) لتقييد قدرتها على فتح جلسات تفاعلية‪ .‬نحن نستخدم البرنامج النصي ]‪ REXX.GETUSERS [89‬لجلب هؤالء‬
‫المستخدمين بشكل فريد‪:‬‬

‫مثير لإلعجاب! ‪ CICS‬عبارة عن برنامج وسيط يستخدم الستضافة التطبيقات التفاعلية على الحاسوب الرئيسي‪ .‬تعتمد معظم تطبيقات األعمال الحالية التي تتعامل مع‬
‫التحويالت البنكية والبيانات المصرفية والتحكم في االحتيال عليها ‪ ،‬مما يجعلها هد ًفا جي ًدا‪ .‬دعنا نسرد 'المجلد' الرئيسي الخاص به‪:‬‬

‫ملفات واعدة جدا حقا! لكن إخراجها ليس بهذه البساطة‪ .‬هذه مجموعات بيانات ‪ VSAM‬مفهرسة‪ :‬ملفات ثنائية تحتوي على بيانات مفهرسة‪ .‬نحن بحاجة إلى تحويلها‬
‫إلى ملفات مسطحة قبل تنزيلها باستخدام ‪ IND $ FILE‬أو ‪ .FTP‬نقوم بإعداد برنامج نصي على خادم ‪ Front Gun‬لتحويل ملفات ‪ VSAM‬هذه إلى ملفات مسطحة‪ .‬إنه‬
‫رمز ‪ JCL‬الذي يطلق برنامج ‪ .SORT‬هذا األخير بنسخ سجل واحد في وقت مجموعات بيانات )‪ VSAM (CICSPROD.ACCOUNT‬في ملف ثابت عادي (‬
‫‪ .)BARNEY.FLAT.ACCOUNT‬باقي الخيارات قياسي فقط عند نسخ ملف (مساحة‪ J‬مخصصة للملف الجديد ‪ ،‬طول كل سطر ‪ ،‬نوع الملف ‪ ،‬إلخ‪).‬‬

‫نصيحة‪ :‬في الحياة الواقعية ‪ ،‬نحتاج إلى التأكد من أن حجم ملف اإلخراج وطول سجله يتطابقان مع خصائص ملف اإلدخال‪ .‬من أجل البساطة ‪ ،‬لقد أغفلنا هذه‬
‫التفاصيل‪ .‬نقوم بتحميل هذا البرنامج النصي على الحاسوب الرئيسي باستخدام خيار نقل الملفات (هذه المرة مع الخيارات ‪)LRECL = 80 ، BLKSIZE = 24000‬‬
‫وتنفيذها باستخدام األمر التالي على ‪:TSO‬‬
‫بمجرد االنتهاء ‪ ،‬يمكننا تنزيل ملف ‪ BARNEY.FLAT.ACCOUNT‬الناتج باستخدام خيار نقل الملفات أو عميل ‪ FTP‬عادي‪:‬‬

‫نصيحة‪ :‬يحتاج ‪ Barney‬إلى وصول )‪ OMVS (Unix‬ليتمكن من استخدام ‪ . FTP‬بالنظر إلى أن لدينا امتياز خاص ‪ ،‬يمكننا منحها لحسابه‪ .‬نصيحة‪ :‬لمعرفة المزيد‬
‫حول القرصنة المركزية ‪ ،‬تحقق من هذا الكالم بواسطة ‪ Soldier of Fortran‬و ‪BigEndianSmalls: https://www.youtube.com/watch‬؟‬
‫‪ .v=LgmqiugpVyU 6.4‬انتظر ‪ ،‬أليس هذا الغش؟ قد يجادل البعض‪‘ :‬حس ًنا‪ ، J‬هذا كل شيء لطيف ‪ ،‬لكنك غش هناك! لقد استخدمت امتيازات مجال ‪Windows‬‬
‫لتتمكن من تحديد موقع ‪ "-" .Mainframe‬ماذا لو لم تكن هناك مجموعة ‪ Windows‬يمكن التعرف عليها بسهولة ُتسمى ‪mainframeAdms‬؟ إذا ‪...‬؟ "يتلخص‬
‫أمن النظام في أمان أضعف حلقاته‪ .‬قد يكون الجهاز المركزي بالفعل أكثر األنظمة أما ًن ا على وجه األرض‪ .‬ومع ذلك ‪ ،‬بالنظر إلى بيئة غير آمنة ‪ ،‬فمن الواضح أنها‬
‫ضا من المرح ونستمتع‪ .‬دعنا نفترض أننا‬ ‫ستفشل‪ .‬ولكن بعد ذلك مرة أخرى ‪ ،‬نظرً ا ألن هذه التقنية قد تركها مجتمع الهاكرز (ألسباب تاريخية لن ندخل) ‪ ،‬فلنطلق بع ً‬
‫ال نستطيع استنشاق أي شيء مفيد للوصول إلى ‪ ... Mainframe‬هل ال يزال بإمكاننا الدخول؟ اتبعني إلى الفصل التالي لمعرفة ذلك‪ .6.5 .‬الترجيع ‪ -‬أول جهة‬
‫بحثا عن عالمات اإلطار الرئيسي المحكي‪ .‬عاد ًة ما يتم تشغيل الخدمة الرئيسية (‪ )VTAM‬على‬ ‫اتصال باستخدام ]‪ ، Nmap [90‬نقوم بمسح الشبكات الفرعية المختلفة ً‬
‫المنافذ ‪ 23‬و ‪ 10023‬و ‪ 2323‬و ‪ 992‬و ‪ .5023‬وسنركز عليها في تسريع الفحص‪:‬‬
‫يحدد الخيار "‪ "sV-‬البانر المرتبط بكل منفذ مفتوح‪ .‬كما ترى ‪ ،‬يظهر عنوانان ‪ IP‬يستضيفان خدمة ‪ TN3270: 10.10.40.33‬و ‪ .10.10.40.34‬يحتوي ‪Nmap‬‬
‫على مكتبة ‪ TN3270‬نظرً ا ألنه إصدار ‪ ، 7.0‬لذلك يمكننا التفاعل بسهولة مع الحاسوب الرئيسي‪:‬‬

‫تسمى الشاشة‪ J‬األولى من الحاسوب الرئيسي ‪ ، VTAM‬من أجل "طريقة الوصول إلى االتصاالت االفتراضية"‪ .‬إنه برنامج تشغيل يتولى جلسات ‪ TCP / IP‬و ‪.SNA‬‬
‫ألغراضنا ‪ ،‬فإنه يتيح فقط الوصول إلى التطبيقات األخرى التي لن نراها من خالل فحص المنفذ‪ .‬في هذه الحالة ‪ ،‬فإنه يتيح الوصول إلى ]‪ ، TSO [91‬وهو مترجم‬
‫سطر األوامر على ‪ z / OS‬و ‪ ، CUST1‬والذي ‪ ،‬وف ًق ا لوصفه ‪ ،‬يستخدمه عمالء البنوك‪ .‬سنحول انتباهنا تلقائيًا إلى تطبيق األعمال ‪:CUST1‬‬
‫نموذج تسجيل الدخول هذا خاص‪ .‬إنه برنامج افتراضي يتم شحنها بواسطة ‪ IBM‬يسمى ‪( CESN‬اسم جميل)‪ .‬عند الضغط على ‪( PF3‬أو ‪ F3‬العادي على لوحة‬
‫المفاتيح) ‪ ،‬يتم مسح الشاشة‪ J‬للتو ونخرج من البرنامج ‪ ...‬لكننا ال ننهي الجلسة‪ .‬ما زلنا في ‪ ، Mainframe‬فقدنا للتو في مكان ما في طي النسيان ‪...‬‬

‫‪ .6.6‬ثم كان هناك ‪ CICS‬لفهم ما حدث للتو ‪ ،‬تنغمس في استنشاق سريع حول تاريخ أجهزة الكمبيوتر والبرامج‪ .‬في الستينات من القرن الماضي ‪ ،‬لم يكن هناك طريقة‬
‫بسيطة لترميز تطبيق تفاعلي على أجهزة الكمبيوتر المركزية‪ .‬لم تكن هناك أجهزة كمبيوتر شخصية ‪ ،‬وال شبكة ‪ ،‬وال حتى اإلنترنت في ذلك الوقت‪ .‬من أجل توصيل‬
‫حواسب رئيسية متعددة لمعالجة المعامالت المصرفية على سبيل المثال ‪ ،‬كان على المرء أن يتطور من معالجة طلبات الصفر ‪ ،‬وملفات التخزين المؤقت ‪ ،‬والوصول‬
‫إلى الموافقة ‪ ،‬وما إلى ذلك‪ .‬من أجل تسهيل هذه العملية ‪ ،‬في عام ‪ 1968‬توصلت ‪ IBM‬إلى ‪ .CICS‬وقد ساعد ذلك أيضً ا على النهوض بشبكات ‪ SNA‬مرة أخرى‬
‫(والتي تم استبدالها في النهاية بواسطة ‪ TCP / IP‬في التسعينيات)‪ .‬عندما تفكر في األمر ‪ ،‬فإن ‪ CICS‬هي مجرد مجموعة ملتوية من ‪( CMS‬مثل ‪)WordPress‬‬
‫ووسيطة كالسيكية (‪ Apache‬أو ‪ :)Tomcat‬إنها تمنح ‪ API‬أو اختصارات الستخدامها‪ J‬في ‪ COBOLcode‬التي تتعامل مع الملفات ‪ ،‬والتخزين المؤقت ‪ ،‬وموازنة‬
‫التحميل ‪ ،‬إلخ‪ .‬بنفس الطريقة فإن ‪ CMS‬مثل ‪ WordPress‬ستمنح حق الوصول إلى بعض الوظائف المحددة مسب ًقا‪ .‬ثم يستضيف هذه التطبيقات ويجعلها متاحة‬
‫للمستخدمين (من خالل ‪ ، VTAM‬على سبيل المثال) بنفس الطريقة التي يستضيف بها ‪ Apache‬مواقع ويب متعددة‪ .‬لذا ‪ ،‬فإن برنامج ‪ CUST1‬ليس سوى تطبيق‬
‫‪ ، CICS‬ومن خالل الخروج من التطبيق (‪ PF3‬في نموذج المصادقة) ‪ ،‬عدنا إلى شاشة "‪ "CICS‬أو المحطة الطرفية‪ .‬يشبه العودة إلى جذر موقع ويب بعد الضغط‬
‫على زر تسجيل الخروج‪ .‬ومع ذلك ‪ ،‬هذه الصفحة الجذر مختلفة‪ .‬يطلب منا ماذا نطلق بعد ذلك ‪ ...‬اآلن يمكن أن تكون ممتعة‪ .6.7 .‬البرامج والمعامالت وبعض‬
‫‪ p0wnage‬تنتظر محطة ‪ CICS‬مع ّر ف المعاملة ‪ ،‬وهو رمز مكون من أربعة أرقام يشير إلى برنامج لبدء التشغيل ‪ ،‬مثل ‪ ، CESN‬برنامج المصادقة‪ .‬اآلن يمكننا أن‬
‫نعرف هذا المعرف البسيط للمعامالت‪ J‬مع نصوص ‪ Nmap‬الحالية [‪ .] 92‬ومع ذلك ‪ ،‬يمكننا أن نبدأ بالتحقق من هاتين المعاملتين أوالً‪( CEMT :‬برنامج المحطة‬
‫الطرفية ‪ )CICS Master‬يعالج الموارد على ‪ :CICS‬الملفات ‪ ،‬البرامج ‪ ،‬معرف المعاملة‪ ، J‬إلخ‪ .‬تقدم ‪ CECI‬مترجمًا زائ ًفا لتنفيذ األوامر مثل قراءة الملفات ‪ ،‬كتابة‬
‫الملفات ‪ ،‬إلخ‪ .‬إذا كان لدينا إمكانية الوصول إلى هذين البرنامجين ‪ ،‬فيمكننا إلى حد كبير التحكم في ‪ CICS‬وكل تطبيق مستضاف عليه‪ .‬بدالً من التفاعل مباشرة مع‬
‫‪ CICS‬باستخدام عميل ‪ ، )wc3270( 3270‬والذي يمكن أن يكون مره ًقا إلى حد كبير ‪ ،‬سنقوم بتنزيل برنامج يسمى ‪ ، CICSPwn‬وهو برنامج نصي بيثون يقوم بكل‬
‫األحمال الثقيلة لنا‪.‬‬

‫اتضح أن لدينا إمكانية الوصول إلى ‪ CENT‬و ‪ ... CECI‬فلنبدأ العمل ‪ ،‬ثم ‪ ،‬وسرد الملفات المسجلة حاليًا في ‪:CICS‬‬
‫نحن نتعرف على بعض الملفات التي رأيناها ساب ًقا‪ .‬باالنتقال إلى ‪ CICSPwn‬لمشاهدتها ‪ ،‬نتجنب متاعب التحويل التي تعاملنا معها ساب ًقا‪:‬‬

‫تقوم ‪ CICSPwn‬بإعداد الخيارات المناسبة على الملف (مفتوحة وقابلة للقراءة ومم ّك نة) ثم تعرض المحتوى بالكامل بطريقة سحرية تقريبًا‪ !Et voilà :‬سجالت‪ J‬العمالء‬
‫مع مصادقة‪ J‬صفر من الجهاز األكثر اخترا ًق ا! يتساءل المتسلل الغريب بداخلك إذا كان من الممكن المضي قد ًم ا ‪ ،‬لتنفيذ التعليمات البرمجية ‪ ،‬لرفع االمتيازات ‪ ....‬حس ًنا‬
‫‪ ،‬نعم ‪ -‬تقدم ‪ CICSPwn‬مجموعة من الخيارات األنيقة ‪ ،‬لكن سيتعين عليك أن تقرأ عنها بنفسك ‪ ،‬حيث أكملنا رسميا ً هدفنا النهائي! ‪ .7‬الخالصة أتمنى أن تكون قد‬
‫استمتعت بالتواجد في أحذية أحد المتسللين وكل المشاعر التي تنطوي عليها‪ :‬اإلحباط والفرح واإلثارة‪ .‬كان هذا بالطبع مثاالً مزي ًفا تم إعداده في مختبري لتقليد شبكة‬
‫الشركة الحقيقية عن كثب ‪ ،‬لكنه يبرز بدقة بالغة العديد من العيوب التي يمكن أن نجدها ونستغلها في الحياة الحقيقية‪ .‬من المعتاد أن يستغرق االختراق ‪ /‬المكبوتون‬
‫مثل هذا بضعة أيام أو أسابيع إلكماله ‪ ،‬لكننا أسرعنا في العملية قليالً وركزنا أسا ًس ا على األهداف التي حددناها في البداية‪ .‬إذا كنت جدي ًدا في مجال القرصنة األخالقية‬
‫‪ ،‬فإني أشجعك على قراءة المقاالت المشار إليها في هذا الكتاب‪ .‬ال تتردد في تنفيذ البرامج النصية المتعددة واألوامر المقدمة‪ .‬العب معهم ‪ ،‬وقلب حججهم ‪ ،‬واتقن‬
‫حدودهم‪ .‬استمتع بفترة قصيرة [‪ ]93‬العالم!‬

‫متصفحك لديه بصمة فريدة‪ :‬إصدار نظام التشغيل ‪ ،‬والمكونات اإلضافية المثبتة ‪ ،‬والتصحيح‬

‫المستوى ‪ ،‬وما إلى ذلك يتم استخدامه من قبل العديد من الشبكات‪ J‬االجتماعية لتحديد المستخدمين حتى لو كانوا‬

‫تغيير عناوين ‪.IP‬‬

‫[‪ /http://www.imdb.com/title/tt4044364 ]2‬و ‪https://www.theguardian.com/usnews/the-nsa-files‬‬


‫‪/https://www.bitcoin.com‬‬ ‫[‪]6[ ]3‬‬
‫‪/https://www.torproject.org‬‬
‫‪http://cryto.net/~joepie91/bitcoinvps.html‬‬
‫‪)HTTPs‬‬ ‫طبقة‪]7‬من األمان تستخدم عبر ‪ HTTP‬لتشفير محتوى الويب (‬
‫[‪[ ] 4‬‬

‫‪/https://www.kali.org‬أخرى للدفع مجهول الهوية‬ ‫[‪]8[ ]5‬‬


‫استخدم ‪ Bitcoin‬أو عمالت تشفير‬
‫‪ /http://www.linuxliveusb.com‬للحصول على ‪USB‬‬
‫‪/https://www.whonix.org‬‬ ‫[‪]9[ ]10‬‬
‫‪ Linux‬القابل للتمهيد‪.‬‬
‫[‪/https://tails.boum.org ]11‬‬

‫[‪https://blog.barkly.com/phishing-statistics-2016 ]12‬‬

‫[‪ ]13‬باستخدام خدمة بريد إلكتروني مجهولة ‪ ،‬بالطبع‪، protonmail.com :‬‬


.‫ إلخ‬، yopmail.com

https://github.com/laramies/theHarvester ]14[

/https://getgophish.com ]15[

:‫ ] على الرغم من محاولة بعض المتسللين إخفاء الملف عن طريق إضافة ملحق وهمية‬١٦[

."image.jpg.exe" ، ‫على سبيل المثال‬

/https://www.metasploit.com ]17[

ID=3353‫؟‬http://www.freevbcode.com/ShowCode.asp ]18[

https://www.peerlyst.com/posts/resource-infosec-powershell-toolsresources-and-authors ]19[

http://www.labofapenetrationtester.com/2015/05/week-of-powershellshells-day-1.html ]20[

http://www.shellntel.com/blog/2016/9/13/luckystrike-a-database-backedevil-macro-generator ]21[

/https://www.powershellempire.com ]22[

page_id=110‫؟‬/http://www.powershellempire.com ]23[

https://github.com/Veil-Framework/Veil-Evasion ]24[

http://www.consulting-bolte.de/index.php/9-ms-office-and-visual-basic- forapplications-vba/154-determine-architecture- ]25[


64-or-32-bit-in -vba

‫ شريطة أن يكون‬، Windows ‫] السيناريو أعاله سيعمل على أي كمبيوتر يعمل بنظام‬26[

‫ بعض المتسللين يخطو خطوة‬.‫يفتح المستخدم المستند وينشط وحدات الماكرو الخاصة به‬

‫ أو على المتصفح‬Word / Excel ‫كذلك واستغل ثغرة أمنية في‬

‫ وما إلى ذلك) من أجل‬، ‫ قارئ أدوبي‬، ‫(ال سيما المكونات المثبتة مثل فالش‬

‫ هذه‬.‫تنفيذ التعليمات البرمجية على الكمبيوتر ورفع االمتيازات الخاصة بهم تلقائيًا‬

‫تسمى الثغرات األمنية التي لم يتم تصحيحها بعد من قِبل المحرر صفر أيام و‬

.Microsoft ‫ خاصة بالنسبة لمنتجات‬، ‫يمكن بسهولة أن يكون بقيمة آالف الدوالرات‬

ً ‫] راجع هذا المستودع‬٢٧[


PowerShell ‫بحثا عن اإللهام حول التشويش على‬

https://github.com/danielbohannon/Invoke-Obfuscation

https://github.com/darkoperator/dnsrecon ]28[

https://github.com/rbsec/dnscan ]29[

‫ ] وهناك طريقة أخرى تتمثل في االستعالم المباشر عن قواعد البيانات الخاصة بالملكية الفكرية‬30[

‫ ولكن العديد من األدوات عبر اإلنترنت‬، ‫ أو مسجليها العاديين‬SPH ‫شرائح مسجلة بواسطة‬

.‫طلب الدفع ألداء مثل هذه الطلبات الدقيقة‬

‫ قانونية محتملة عند نشر‬J‫] وضعت نطا ًقا خاصً ا لتجنب أي مشكالت‬31[

‫كتاب‬

:Burp Suite ‫] كيفية تكوين‬32[

https://portswigger.net/burp/help/suite_gettingstarted.html
.‫ بايت من البيانات‬32 ‫ حزمة تحتوي على‬Windows ‫ على‬ping ‫] يرسل األمر‬33[

http://pentestmonkey.net/cheatsheet/shells/reverse-shell-cheat-sheet ‫] يمكن العثور على المزيد من الخطوط الفردية هنا‬34[

‫ لمعرفة أي منها‬BURP ‫ أو‬ZAP ‫ باستخدام‬HTTP ‫] تحقق من رؤوس‬35[

.‫اللغة التي يستخدمها الموقع‬

‫ بلغات متعددة‬J‫ للحصول على صفحات الويب األساسية‬fuzzdb ‫] تحقق من‬36[

https://github.com/tennc/webshell/tree/master/fuzzdb-webshell

‫ ذلك تلقائيا‬."Wappalyzer" ‫] ملحق متصفح مفيد للحصول عليه هو‬37[

.‫بصمات األصابع كل مكون على الموقع‬

2B ٪‫ مشفر في شريط العنوان إلى‬URL ‫" عبارة عن عنوان‬+" ]38[

SQL: https://www.amazon.com/SQLInjection-Attacks-Defense-Second/dp/1597499633 ‫] كتاب كامل عن حقن‬39[

https://github.com/sqlmapproject/sqlmap ]40[

‫ فراجع ما يلي‬، ‫ يدويًا‬SQL ‫] إذا كنت ترغب في ممارسة حقن‬41[

http://pentestmonkey.net/cheat-sheet/sql-injection/mysql-sql-injectioncheat-sheet ‫موقع الويب‬

https://www.drupal.org/project/drupal/releases/8.0.0 ]42[

/https://crackstation.net ]43[

http://www.netmux.com/blog/how-to-build-a-password-cracking-rig ]44[

-https://www.digitalocean.com/community/tutorials/how-to-set-up-ssh-keys ]45[

-https://legalhackers.com/advisories/MySQL-Exploit-Remote-Root-Code ]46[
/https://nmap.org ]48[
Privesc-CVE-2016-6662.html -‫إعدام‬
www.shodan.io ]49[
Windows ‫ لبروتوكول سطح المكتب البعيد هو بروتوكول يستخدم في‬RDP ]47[

.3389 ‫ عادة ما يتم تشغيل الخدمة على المنفذ‬.‫التحكم عن بعد في الجهاز‬

‫ أصبح من الواضح أن اآلالف منهم‬، ‫ أثناء تحرير هذا الكتاب‬، ‫ ] ومن المثير لالهتمام‬50[

‫ حاليًا بواسطة المستخدمين الضارين الذين يقومون بتشفير البيانات‬MongoDBs ‫يتم حصر‬

‫ الشيء المخيف هو أن نفس "الضعف" يؤثر‬.‫واطلب فدية‬

.Redis ‫ و‬ElasticSearch ‫ و‬Cassandra ‫قواعد بيانات‬

:‫ وفيما يلي بعض األمثلة على ذلك‬.‫ ] يمكننا إنشاء قواعد مخصصة فعالة لجون‬51[

http://contest-2010.korelogic.com/rules.html

https://github.com/lanjelot/patator ، https://github.com/vanhauser-thc/thchydra ، https://github.com/galkan/crowbar ]52[

‫ المشبوه إلظهار بعض التمحور اللطيف‬Linux ‫] سنلتزم بخادم‬53[

‫ وإال فإنه سيكون من السهل إذا هبطنا مباشرة على‬، ‫التقنيات في وقت الحق‬

.‫ويندوز من البداية‬

‫ لنظام التشغيل‬.Windows: http://tim3warri0r.blogspot.fr/2012/09/windows-postexploitation-command-list.html ‫] لنظام التشغيل‬54[


.Linux: https://github.com/mubix/postexploitation/wiki/Linux-Post-Exploitation-Command-List
‫[‪ ]55‬هناك دائمًا خادم ‪ MongoDB‬الذي وصلنا إليه ساب ًقا ‪ ،‬لكنني أريد أن أعرض‬

‫كيف تهاجم واحد من "الداخل"‪.‬‬

‫[‪https://raw.githubusercontent.com/mfontanini/ProgramsScripts/master/socks5/socks5.cpp ]56‬‬

‫[‪ ]57‬يقوم جدار الحماية بحظر كل منفذ بخالف ‪ 80‬و ‪ ، 443‬وهو موجود بالفعل‬

‫المستخدمة‪ J‬من قبل الموقع‪.‬‬

‫[‪/http://proxychains.sourceforge.net ]58‬‬

‫[‪ ]59‬لم أتمكن مطل ًقا من تشغيل ملف متر مربع في نظام التشغيل ‪Windows‬‬

‫آلة‪ .‬ومع ذلك ‪ ،‬بالنظر إلى أن مدراء يترددون في تجهيز لينكس مع‬

‫حل مكافحة الفيروسات ‪ ،‬يمكن أن نكون متسامحين‪.‬‬

‫[‪ ]60‬تحقق من ‪ explot-db.com‬للتعرف على شفرة االستغالل المتاحة للجمهور‪.‬‬

‫[‪https://www.youtube.com/watch ]61‬؟‪v=_8xJaaQlpBo‬‬

‫[‪https://www.youtube.com/watch ]62‬؟‪v=-IMrNGPZTl0‬‬

‫[‪ ]63‬استدعاء اإلجراءات عن بُعد هو بروتوكول يستخدمه ‪ Windows‬للتفاعل‬

‫عن بعد مع الجهاز‪ .‬تم إجراء مكالمة إلى المنفذ ‪ ، 135‬والذي يرشد العميل‬

‫لالتصال بمنفذ عشوائي (بين ‪ 49152‬و ‪ )65335‬إلصدار أوامره‪.‬‬

‫[‪https://github.com/clymb3r/PowerShell/tree/master/Invoke-Mimikatz ]64‬‬

‫[‪ ]65‬يمكن تقسيم كل مجال إلى وحدات تنظيمية‪.‬‬

‫[‪ ] 66‬هناك عدة طرق أخرى لتحقيق السيطرة الكاملة على المجال‪ :‬الكتابة‬

‫امتياز على ‪ ، GPO‬تفويض إداري ‪ ،‬إلخ‪.‬‬

‫[‪ ]67‬مصطلح اخترعته للتو‪.‬‬

‫[‪ ] 68‬ينطبق هذا البيان فقط على المستخدمين المحليين‪ .‬كما هو موضح سابقا ‪،‬‬

‫مستخدم المجال يصادق على وحدة تحكم المجال‪ .‬عدد قفل هو بعد ذلك‬

‫التي عقدتها العاصمة وال تأخذ في االعتبار الجهاز المستهدف‪ .‬على سبيل المثال ‪ ،‬إذا‬

‫تأمين = ‪ 5‬وفشلنا المصادقة‪ J‬على ‪ 5‬أجهزة مختلفة ‪ ،‬مجال‬

‫الحساب‪ J‬مغلق فعليا ‪ ،‬في حين أن الحساب المحلي ليس كذلك‪.‬‬

‫[‪ ]69‬قد يقوم المسؤول في بعض األحيان بإعداد سجل ‪LocalAccountTokenFilterPolicy‬‬

‫المفتاح الذي يعطل بشكل فعال ‪ UAC‬عن بعد‪.‬‬

‫[‪ ]70‬سنبين الح ًقا كيفية استهداف المستخدمين الذين لم ينقروا على‬

‫الحمولة الخبيثة‪.‬‬

‫[‪https://github.com/FuzzySecurity/PowerShell-Suite/blob/master/InvokeMS16-032.ps1 ]71‬‬

‫[‪ ] 72‬لكي تنجح هذه المناورة ‪ ،‬من الواضح أننا نحتاج إلى إقامة ثبات‬

‫مخطط ‪ ،‬وذلك باستخدام مفتاح التشغيل على سبيل المثال كما هو مفصل سابقا‪.‬‬

‫[‪ ]73‬الطريقة األولى الستخراج ‪:NTDS‬‬


‫)‪/https://www.trustwave.com/Resources/SpiderLabs-Blog/Tutorial-for-NTDSgoodness-(VSSADMIN،-WMIS،-NTDS-dit،-SYSTEM‬‬

‫الطريقة الثانية‪https://www.cyberis.co.uk/2014/02/obtaining-ntdsdit-usingin-built.html :‬‬

‫[‪https://github.com/samratashok/nishang/blob/master/Utility/DoExfiltration.ps1 ]74‬‬

‫[‪https://github.com/PowerShellMafia/PowerSploit/tree/master/Recon ]75‬‬

‫[‪ ]76‬غطينا هذا الجزء في القسم السابق‪ 5.6.2 :‬ملفات استراتيجية‪.‬‬

‫[‪ ]77‬عميل ‪ Outlook‬يعمل بشكل جيد‪ .‬خالف ذلك هناك الكثير الذي يمكن العثور عليه على‬

‫جوجل التي تقوم بهذه المهمة على ما يرام‪.‬‬

‫[‪ ] 78‬ال يمكنني التفكير في كتاب أكبر للتشفير أكثر من كتاب بروس شنير‬

‫تطبيق التشفير‪.‬‬

‫[‪ ]79‬إذا لم يكن منفذ ‪ RDP‬متاحً ا ‪ ،‬لكان بإمكاننا استخدام ‪ GPO‬كما كان من قبل ‪،‬‬

‫أو مكالمات ‪ ، WMI‬والتي سنظهرها الح ًقا‪.‬‬

‫[‪/http://www.blackhillsinfosec.com ]80‬؟‪p=5296‬‬

‫[‪ ]81‬شكرً ا جزيالً للباحثين مثل ‪، Soldier of Fortran‬‬

‫‪ BigEndianSmalls‬و ‪.Singe‬‬

‫[‪ ] 82‬لغة التحكم في الوظيفة ‪ ،‬وهي لغة «نصية» تستخدم في أجهزة الكمبيوتر المركزية‬

‫تنفيذ البرامج‬

‫[‪http://x3270.bgp.nu/download.html ]83‬‬

‫[‪ ] 84‬الطريقة الصحيحة للقيام بذلك هي تنزيل وكيل الجوارب الثاني و‬

‫تشغيله في ‪ .10.10.20.118‬بعد ذلك ‪ ،‬اطلب من البروكسيين البحث عن وكيلين‪:‬‬

‫واحد في المنطقة المجردة من السالح ‪ ،‬ثم هذه الثانية‪ .‬منذ أن مفصلة بالفعل كيفية وضع هذا‬

‫في مكانه ‪ ،‬أفضل التركيز بالكامل على الحاسوب الرئيسي‪.‬‬

‫إلجبار‬
‫الحاسوب الرئيسي قبل االستخدام‬ ‫المذهلة عن‬ ‫‪nmap‬‬
‫المستخدمون‬ ‫النصية‬
‫ينفصل‬ ‫حتى‬‫البرامج‬ ‫بعض‬
‫االنتظار‬ ‫هناكعلينا‬ ‫‪]91‬‬
‫يتعين‬ ‫[ [‬
‫‪] 85‬‬
‫حسابات المستخدمين أيضًا‬
‫أوراق اعتمادهم‪.‬‬
‫ككلمات مرور‪ .‬أشجعك على مراجعة عمل جندي فورتران‬
‫‪https://github.com/ayoul3/Privesc/blob/master/ELV.APF‬‬ ‫[‪]86‬‬
‫على الموقع‬

‫‪https://github.com/magnumripper/JohnTheRipper‬‬ ‫[‪]87‬‬
‫موضوع‪.‬‬

‫‪https://github.com/zedsec390/NMAP‬المركزية في السويد‪:‬‬
‫للحديث عن االختراق الفعلي ألحد أجهزة الكمبيوتر‬
‫‪]92] 88‬‬
‫[ [‬

‫‪https://www.youtube.com/watch‬؟‪v=SjtyifWTqmc‬‬
‫[‪ ]93‬من الناحية القانونية ‪ ،‬بالطبع‪.‬‬

‫[‪https://github.com/ayoul3/Rexx_scripts/blob/master/REXX.GETUSERS ]89‬‬

‫[‪ ]90‬ندير وكياًل ثانويًا للجوارب على الجهاز ‪ .10.10.20.118‬بهذه الطريقة لدينا‬

‫تحقيقات يمكن تجنب جدار الحماية ‪ .DMZ‬نقوم بتغيير ملف تهيئة ‪ proxychain‬إلى‬

‫أخذه بعين االعتبار‪.‬‬

You might also like