
استغلال في وضع التطوير في Rails. مع بعض المعرفة بالتطبيق المستهدف، يمكن للمهاجم تخمين رمز السر الذي يتم توليده تلقائيًا في وضع التطوير. يمكن استخدام هذا الرمز السري مع مكونات Rails الداخلية الأخرى لتصعيد الهجوم إلى استغلال تنفيذ تعليمات برمجية عن بُعد.
يمكن لثغرة تنفيذ التعليمات البرمجية عن بُعد في وضع التطوير في Rails <5.2.2.1، <6.0.0.beta3 أن تسمح للمهاجم بتخمين الرمز السري لوضع التطوير المُولّد تلقائيًا. يمكن استخدام هذا الرمز السري مع مكونات Rails الداخلية الأخرى للتصعيد إلى استغلال تنفيذ التعليمات البرمجية عن بُعد. يعمل كود PoC هذا الخاص بـ CVE-2019-5420 على رفع الامتيازات إلى حساب المسؤول دون تنفيذ التعليمات البرمجية عن بُعد نفسه.
انسخ قيمة الكوكي واستبدلها بـ "VALUE_OF_THE_COOKIE" في السطر 11:
cookie = CGI.unescape "VALUE_OF_THE_COOKIE" # put in the value of your cookie here
علاوةً على ذلك، استبدل "NAME::Application" باسم تطبيقك. على سبيل المثال، إذا كان اسم التطبيق هو "test"، فسيكون "test::Application":
secret = Digest::MD5.hexdigest("NAME::Application") # the name of the ruby on rails application, either bruteforce or have to be known directly
قم بتشغيل كود الاستغلال وانسخ ناتج الكوكي، ثم استبدل كوكي تطبيق الويب به:
ruby CVE-2019-5420.rb