في باحث أمني قدر يخترق الشبكات الداخلية ل35 شركة عالمية من ضمنهم #PayPal, #Apple, #Microsoft, #Uber وغيرهم, وحصل علي مبلغ مكفأة 135 ألف دولار. الإختراق تم من خلال ثغرة معروفه بإسم dependency confusion
إيه هي الثغرة دي؟
لو مثلا الفريق البرمجي في شركة PayPal عملو مكتبة برمجية Package زي مثلا NPM Package للإستخدام الداخلي داخل الشركة وسموها PayDe وزي ما قولت هي داخلية وبالتالي مفيش public package بالإسم ده. طيب لو الهكرز عملو public package بنفس الإسم اللي PayPal عملاه وجه الدفلوبرز بتوع الشركة يستخدمو في الكود بتاعهم ال NPM package اللي اسمها PayDe فساعتها أنهي واحدة اللي هتتحمل وتشتغل؟ اللي هما عاملينها واللي موجوده Internally فقط ولا ال Public اللي عاملها الهاكرز؟
طلع ان الأولوية لل Public package, وفي حالات بسيطة بتكون الأولوية للباكدج اللي ال version بتاعها أعلي. وبالتالي الباحث الأمني قدر يشغل ال package بتاعته علي أبلكيشنز كتير في 35 شركة عالمية. والباكدج اللي عاملها الباحث الأمني بتطبق أوامر علي السرفرات اللي نازله عليها الأبلكيشنز دي وبتبعت DNS Request للسرفر بتاع الباحث الأمني عشان يعرف انه فعلا الكود بتاعه اشتغل علي سرفرات الشركة الفلانية. وبناء علي المعلومات اللي بتوصله, بلغ بيها الشركات المصابه وحصل علي مبلغ مكفأة 135 ألف دولار!
كالعادة مبرمجين كتير جدا بينسو أمثلة من الكود بتاعهم علي موقع GitHub وغيره, ودي الطريقة اللي قدر بيها الباحث الأمني يوصل لأسامي ال packages الخاصة بالشركات دي بإصداراتها كمان زي مهو موضح في الصور.


