Get Mystery Box with random crypto!

Алексу Бірсану, досліднику у сфері безпеки, вдалося зламати Ap | Radio Kottans

Алексу Бірсану, досліднику у сфері безпеки, вдалося зламати Apple, Netflix, PayPal та інші провідні компанії.

Компанії часто створюють репозиторій для зберігання проектів, які не мають бути у загальному доступі. Тоді при виконанні команди npm install npm спочатку пошукає залежність у репозиторії компанії і якщо не знайде її, буде шукати у публічному реєстрі.

Проте що буде якщо залежність є у приватному та у публічному репозиторії одночасно?

Алекс отримав від свого знайомого Джастіна package.json який використовується PayPal в одному зі своїх проектів. У цьому файлі були залежності на приватні репозиторії npm - auth-paypal, wurfl-paypal та т.і. Тож Алекс поставив собі питання, яке ми ставили раніше - який репозиторій має вищий пріоритет?

У пошуках відповіді Алекс почав розшукувати файли маніфестів залежностей інших компаній для npm, PyPI та RubyGems.

Після цього він створив на GitHub купу проектів з такими самими назвами, як і приватні пакети.

І після виконання цих операцій він зрозумів, що менеджери залежностей віддають перевагу публічній версії репозиторія. Алекс додав preinstall скрипт у свої проекти, який ідентифікував комп’ютер на який було інстальовано залежність та використовував DNS, щоб передати цю інформацію та обійти внутрішній захист компаній.

Тож потенційно шкідливий код може потрапити у закритий проект компанії просто з наступним оновленням залежностей, без будь-якого контролю з боку розробників.

Детальніше про цю історію ви можете почитати тут: https://www.bleepingcomputer.com/news/security/researcher-hacks-over-35-tech-firms-in-novel-supply-chain-attack/

Закінчилося все добре - Алекс отримав більш ніж 130 000 USD як винагороду за пошук вразливостей. Проте захист у будь-якому випадку залежить від компаній, поведінка менеджерів залежностей залишилась незмінною