نسخة ساذجة من RottenPotatong ، مع القليل من العصير ، أي أداة تصعيد امتياز محلية أخرى ، من حسابات خدمة Windows إلى NT Authority System
تقوم شركة RottenPotatong ومتغيراتها بتعزيز سلسلة تصاعد الامتياز بناءً على خدمة BITS التي تحتوي على مستمع MITM على 127.0.0.1:6666 وعندما SeImpersonate أو امتيازات SeAssignPrimaryToken . خلال مراجعة بناء Windows ، وجدنا إعدادًا حيث تم تعطيل BITS عن عمد وتم أخذ المنفذ 6666 .
قررنا تسليح Rottenpotatong: قل مرحباً للبطاطا المثيرة .
للاطلاع على النظرية ، راجع تصعيد البطاطا الفاسدة - امتياز من حسابات الخدمة إلى النظام واتبع سلسلة الروابط والمراجع.
اكتشفنا أنه ، بخلاف BITS ، هناك العديد من خوادم COM التي يمكننا إساءة استخدامها. يحتاجون فقط إلى:
IMarshalبعد بعض الاختبارات ، حصلنا واختبرنا قائمة واسعة من CLSID المثيرة للاهتمام على العديد من إصدارات Windows.
يتيح لك Juicypotato:
الهدف CLSID
اختر أي clsid تريد. هنا يمكنك العثور على القائمة التي نظمتها OS.
كوم ميناء الاستماع
حدد ميناء الاستماع COM الذي تفضله (بدلاً من 6666 المربى المربوط.
عنوان IP للاستماع
ربط الخادم على أي IP
وضع إنشاء العملية
اعتمادًا على امتيازات المستخدم المنتحل ، يمكنك الاختيار من بينها:
CreateProcessWithToken (يحتاج إلى SeImpersonate )CreateProcessAsUser (يحتاج SeAssignPrimaryToken )both عملية إطلاق
قم بتشغيل برنامج نصي قابل للتنفيذ إذا نجح الاستغلال
حجة العملية
تخصيص حجج العملية التي تم إطلاقها
عنوان خادم RPC
للحصول على نهج خلسة ، يمكنك المصادقة على خادم RPC خارجي
منفذ خادم RPC
مفيد إذا كنت ترغب في المصادقة على خادم خارجي وجدار الحماية يحظر المنفذ 135 ...
وضع الاختبار
أساسا لأغراض الاختبار ، أي اختبار clsids. إنه ينشئ DCOM ويطبع مستخدم الرمز المميز. انظر هنا للاختبار
T:>JuicyPotato.exe
JuicyPotato v0.1
Mandatory args:
-t createprocess call: <t> CreateProcessWithTokenW, <u> CreateProcessAsUser, <*> try both
-p <program>: program to launch
-l <port>: COM server listen port
Optional args:
-m <ip>: COM server listen address (default 127.0.0.1)
-a <argument>: command line argument to pass to program (default NULL)
-k <ip>: RPC server ip address (default 127.0.0.1)
-n <port>: RPC server listen port (default 135)
-c <{clsid}>: CLSID (default BITS:{4991d34b-80a1-4291-83b6-3328366b9097})
-z only test CLSID and print token's user

إذا كان لدى المستخدم امتيازات SeImpersonate أو SeAssignPrimaryToken ، فأنت نظام .
يكاد يكون من المستحيل منع إساءة استخدام كل هذه الخوادم. يمكنك التفكير في تعديل أذونات هذه الكائنات عبر DCOMCNFG ولكن حظًا سعيدًا ، سيكون هذا أمرًا صعبًا.
الحل الفعلي هو حماية الحسابات والتطبيقات الحساسة التي يتم تشغيلها ضمن حسابات * SERVICE . من المؤكد أن إيقاف DCOM من شأنه أن يمنع هذا الاستغلال ولكن يمكن أن يكون له تأثير خطير على نظام التشغيل الأساسي.
بناء تلقائي متاح. يمكن تنزيل الثنائيات من قسم القطع الأثرية هنا.
متوفر أيضا في Blackarch.