Professional Documents
Culture Documents
كيف هاك مثل جديد
كيف هاك مثل جديد
حقوق النشر © 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 ملفكنت
يمكننا إذا
قليالمن
شيءكوب
ليس لي سوفبالتأكيد
نذهب مع VBAهو ذلك ،كما
اإللكتروني. عمالءومع
البريد الحاسوب.
جميع
Linuxل.Kali
علىاألوامر
وجلب الخادم لدينا ،
افتراضي العودة إلى
تثبيته بشكل أن الهواتف .يتم
تنفيذ ،ويرسل النتيجة مرة أخرى :قذيفة عكسية.
نظرً ا ألننا نريد اختبار الكود أوالً ،فقد أنشأنا a
VBA )1ساللة نقية
المستمع على خادم Front Gunباستخدام أداة .Netcatأنه
Visual Basicهي لغة برمجة يمكن أن تكون
وغالبا ما تسمى سكين الجيش السويسري القراصنة .انها ببساطة
، Office
الخام ،لكنه يمكن أيضا (Wordالمقبس ، Excel
اتصاالت مستنداتويستقبل
مضمن في يرسل
الشركات
عكسي ،نقل الملفات ، بكثرة في
غالف ذلك) .يستخدم
للحصول على وما إلى
استخدامها باور بوينت ،يمكن
، 443وينتظر وصوله
المنفذوبالتالي البيانات.هذا األمر
الموظفين ، إلخ .يفتح
العالم لمعالجة
روابط.
سيؤدي ذلك إلى إنشاء حمولة عكسية للعمارة ، x86دون أي تشفير خاص (عام /بال) .نقوم بنسخ /لصق الشفرة في ماكرو :Excelإذا فحصنا الرمز gen
إذا فحصنا الرمز الذي تم إنشاؤه ،فإننا نفهم أنه يقوم بما يلي :تشغيل الحمولة عند فتح المستند عن طريق استدعاء اإلجراء ( Workbook_Openغير مرئي في
الشكل أعاله) ؛ تحديد صفيف يحتوي على الكود الفعلي الذي يؤدي االتصال العكسي وتنفيذ الكود .في x86التجميع ،وبالتالي مستقلة عن اللغة المستخدمةVBA ،( J
، PowerShellوما إلى ذلك) ؛ تخصيص القليل من الذاكرة القابلة للتنفيذ ،والتي يتم نسخ رمز shellإليها ثم تنفيذها .تتبع Metasploitدائمًا هذا النمط إلنشاء
حموالتها بغض النظر عن اللغة المستخدمة .هذا يجعل من التافه لحلول مكافحة الفيروسات Jلالشارة الى أي شيء ينتج عن هذه األداة .الكثير لشبح .يمكننا بسهولة
إضافة وظائف التشفير التي تشفر المتغير الذي يحمل رمز القشرة (بعض اإللهام هنا [ ، ]18على سبيل المثال) ،ولكن دعونا نجرب طريقة جديدة تمامًا مع عوائق
أقل PowerShell )2 .إلنقاذ PowerShellهي واحدة من أقوى لغات البرمجة النصية على .Windowsلقد نمت بسرعة لتصبح األداة األكثر وثوقية للمشرف -
وعلى نفس المنوال ،عشيقة القراصنة المحبوبة .راجع بعض أدوات PSالرائعة ح ًقا على صفحة الويب هذه [ .]19باتباع نفس النمط كما كان من قبل ،نريد إنشاء
غالف عكسي في PowerShellثم تضمينه في مستند .Officeنبدأ مع البرنامج النصي ].PS [20
#إرسال قذيفة موجه
حلقة الظهر
للتأكد من عمل البرنامج النصي بشكل صحيح ،نقوم بتنفيذه على جهاز Windowsعادي باستخدام األمر التالي:
:: 4444متألق! لدينا تنفيذ عن بعد على جهاز بعيد (اختبار) .من الناحية المثالية اآلن ،نود أن نسمي هذا البرنامج النصي باستخدام رمز VBAالذي يبدو كالتالي:
)" VBA> Shell ("powershell c: \ temp \ revers.ps1ولكن بعد ذلك نحتاج إلى كتابة البرنامج النصي على قرص الهدف ،والذي قد تحريك المزيد من
اإلنذارات .طريقة واحدة لتجنب ذلك هي استخدام ميزة PowerShellالرائعة لتنفيذ األوامر المضمنة! بدالً من تنفيذ ملف ،نقوم بتنفيذ سلسلة من التعليمات البرمجية
التي تم تمريرها كوسيطة إلى .powershell.exeنبدأ بإضافة شبه "‘ ؛ "في نهاية كل تعليمات:
نقوم بعد ذلك بترميز محتوى البرنامج النصي في Unicode base64على :Linux
يمكننا تعديل قرص 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
يمكنك أن ترى أن الوكيل يستخدم متماثل
سنستكشف بعض الميزات المثيرة لإلمبراطورية في الفصول التالية ،ولكن في غضون ذلك ،يمكنك التحقق من أمر المساعدة للحصول على فكرة .لتضمين البرنامج
النصي 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الكالسيكي .التثبيت طويل بعض الشيء ،لكن بمجرد الوصول إلى هناك يصبح األمر
بديهيًا للغاية.
يمكننا بعد ذلك اختبار ملف meter.batللتأكد من أنه يعمل بشكل صحيح:
حس ًنا ،اآلن لتضمين هذه الحمولة في ملف ، Excelنحتاج إلى الغوص في الشفرة يدويًا لبعض الوقت .إذا قمت بفتح الملف meter.batالذي تم إنشاؤه ،فسترى أن
الغرض الوحيد منه هو معرفة بنية الهدف وإطالق إصدار PowerShellالمناسب (إما x86أو .)x64
نحن ننفذ ملف 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فإنه من الناحية
تنفيذ أوامر نظام إضافية .للقيام بذلك ،نحن المستخدمين باإلضافة إلى تنفيذ األمر :ping
مثير لإلعجاب! دعنا نجرب شيًئ ا ما قليالً .ماذا عن غالف عكسي من خط واحد [ ]34يتيح لنا الوصول التفاعلي إلى الجهاز:
على خادم السالح الخاص بنا ،نحتاج فقط إلى تشغيل مستمع بسيط ،مثل ، Netcatالستالم shellالوارد من خادم بعيد:
نحن مشتركون! يمكنك االنتقال إلى القسم 4إذا كنت تريد
معرفة كيفية االستفادة من هذا الوصول المنخفض المستوى
ألداء انهيار واسع النطاق ،ولكن من أجل االكتمال ،دعونا
نتحقق من مواقع الويب األخرى والبحث عن كنوز أخرى
ً
بسيطا ج ًدا لإلحماء ، Jلكنه مخفية .مالحظة :كان هذا مثااًل
يضع أساس تنفيذ التعليمات البرمجية عن بُعد .تحقق من
ثغرة أمنية على ، phpmailerوالتي تتبع نفس الروح
حس ًنا ،ال شيء كثيرً ا ح ًق ا .حصلنا على خطأ لطيف من موقع الويب يقول إنه يحظر أي تنسيق غير . 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باألمر التالي:
قريب بما فيه الكفاية! على الرغم من أنها لم تعمل على الفور ،إال أن كلمة المرور " "! 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على الفور ،لكن يبدو أن هناك نوعً ا من التشدد تم تنفيذه بعد كل شيء.
البنغو! باستخدام أي فك شفرة 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
يتم تضمين البرنامج النصي الكامل أدناه مع ملحق ثانوي -مقتطف من التعليمات البرمجية التي تنتظر حتى انتهاء العملية البعيدة قبل استرداد النتيجة:
. 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
ثم ننتظر بضع ساعات ،ربما يوم أو يومين .في النهاية ،عندما يقوم جون بتسجيل الدخول [ ] 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
باستخدام األمر التالي:
الستعادة المستند المضغوط ،نقوم بتنزيل الملف النصي ،ثم فك تشفيره باستخدام األمر 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
ً
جديدا للخلف العكسي 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
نتجاوز 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
سمة بارني هي . 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إلى كل واحدة منها:
الحمد هلل! اآلن وقد أصبحنا خاصين ،يمكننا تنزيل قاعدة بيانات 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االجتماعية لتحديد المستخدمين حتى لو كانوا
[https://blog.barkly.com/phishing-statistics-2016 ]12
https://github.com/laramies/theHarvester ]14[
/https://getgophish.com ]15[
: ] على الرغم من محاولة بعض المتسللين إخفاء الملف عن طريق إضافة ملحق وهمية١٦[
/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[
شريطة أن يكون، Windows ] السيناريو أعاله سيعمل على أي كمبيوتر يعمل بنظام26[
بعض المتسللين يخطو خطوة.يفتح المستخدم المستند وينشط وحدات الماكرو الخاصة به
وما إلى ذلك) من أجل، قارئ أدوبي، (ال سيما المكونات المثبتة مثل فالش
هذه.تنفيذ التعليمات البرمجية على الكمبيوتر ورفع االمتيازات الخاصة بهم تلقائيًا
تسمى الثغرات األمنية التي لم يتم تصحيحها بعد من قِبل المحرر صفر أيام و
.Microsoft خاصة بالنسبة لمنتجات، يمكن بسهولة أن يكون بقيمة آالف الدوالرات
https://github.com/danielbohannon/Invoke-Obfuscation
https://github.com/darkoperator/dnsrecon ]28[
https://github.com/rbsec/dnscan ]29[
] وهناك طريقة أخرى تتمثل في االستعالم المباشر عن قواعد البيانات الخاصة بالملكية الفكرية30[
ولكن العديد من األدوات عبر اإلنترنت، أو مسجليها العاديينSPH شرائح مسجلة بواسطة
قانونية محتملة عند نشرJ] وضعت نطا ًقا خاصً ا لتجنب أي مشكالت31[
كتاب
https://portswigger.net/burp/help/suite_gettingstarted.html
. بايت من البيانات32 حزمة تحتوي علىWindows علىping ] يرسل األمر33[
https://github.com/tennc/webshell/tree/master/fuzzdb-webshell
https://github.com/sqlmapproject/sqlmap ]40[
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[
أصبح من الواضح أن اآلالف منهم، أثناء تحرير هذا الكتاب، ] ومن المثير لالهتمام50[
حاليًا بواسطة المستخدمين الضارين الذين يقومون بتشفير البياناتMongoDBs يتم حصر
: وفيما يلي بعض األمثلة على ذلك. ] يمكننا إنشاء قواعد مخصصة فعالة لجون51[
http://contest-2010.korelogic.com/rules.html
وإال فإنه سيكون من السهل إذا هبطنا مباشرة على، التقنيات في وقت الحق
.ويندوز من البداية
[https://raw.githubusercontent.com/mfontanini/ProgramsScripts/master/socks5/socks5.cpp ]56
[ ]57يقوم جدار الحماية بحظر كل منفذ بخالف 80و ، 443وهو موجود بالفعل
[/http://proxychains.sourceforge.net ]58
[ ]59لم أتمكن مطل ًقا من تشغيل ملف متر مربع في نظام التشغيل Windows
آلة .ومع ذلك ،بالنظر إلى أن مدراء يترددون في تجهيز لينكس مع
[https://www.youtube.com/watch ]61؟v=_8xJaaQlpBo
[https://www.youtube.com/watch ]62؟v=-IMrNGPZTl0
عن بعد مع الجهاز .تم إجراء مكالمة إلى المنفذ ، 135والذي يرشد العميل
[https://github.com/clymb3r/PowerShell/tree/master/Invoke-Mimikatz ]64
[ ] 66هناك عدة طرق أخرى لتحقيق السيطرة الكاملة على المجال :الكتابة
[ ] 68ينطبق هذا البيان فقط على المستخدمين المحليين .كما هو موضح سابقا ،
مستخدم المجال يصادق على وحدة تحكم المجال .عدد قفل هو بعد ذلك
التي عقدتها العاصمة وال تأخذ في االعتبار الجهاز المستهدف .على سبيل المثال ،إذا
[ ]70سنبين الح ًقا كيفية استهداف المستخدمين الذين لم ينقروا على
الحمولة الخبيثة.
[https://github.com/FuzzySecurity/PowerShell-Suite/blob/master/InvokeMS16-032.ps1 ]71
[ ] 72لكي تنجح هذه المناورة ،من الواضح أننا نحتاج إلى إقامة ثبات
مخطط ،وذلك باستخدام مفتاح التشغيل على سبيل المثال كما هو مفصل سابقا.
[https://github.com/samratashok/nishang/blob/master/Utility/DoExfiltration.ps1 ]74
[https://github.com/PowerShellMafia/PowerSploit/tree/master/Recon ]75
[ ]77عميل Outlookيعمل بشكل جيد .خالف ذلك هناك الكثير الذي يمكن العثور عليه على
[ ] 78ال يمكنني التفكير في كتاب أكبر للتشفير أكثر من كتاب بروس شنير
تطبيق التشفير.
[ ]79إذا لم يكن منفذ RDPمتاحً ا ،لكان بإمكاننا استخدام GPOكما كان من قبل ،
[/http://www.blackhillsinfosec.com ]80؟p=5296
BigEndianSmallsو .Singe
[ ] 82لغة التحكم في الوظيفة ،وهي لغة «نصية» تستخدم في أجهزة الكمبيوتر المركزية
تنفيذ البرامج
[http://x3270.bgp.nu/download.html ]83
واحد في المنطقة المجردة من السالح ،ثم هذه الثانية .منذ أن مفصلة بالفعل كيفية وضع هذا
إلجبار
الحاسوب الرئيسي قبل االستخدام المذهلة عن 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إلى