Про це пише The Verge.
Уразливість заснована на досить простому методі: вона замінює приватні пакети загальнодоступними. Коли компанії створюють програми, вони часто використовують відкритий код, написаний іншими людьми, тож вони не витрачають час і ресурси на розв’язання проблеми, яку вже розв’язано.
Ці загальнодоступні програми можна знайти в таких репозиторіях, як npm для NodeJS, PyPi для Python і RubyGems для Ruby. Бірсан виявив, що ці сховища можуть бути використані для проведення цієї атаки, але вона не обмежується лише трьома репозиторіями.
На додаток до цих загальнодоступних пакетів компанії часто створюють свої власні приватні, які вони не завантажують, а замість цього поширюють серед своїх власних розробників.
Бірсан виявив, що якщо він може знайти назви приватних пакетів, які використовуються компаніями (завдання, яке в більшості випадків виявилося дуже простий), він може завантажити свій власний код в один із загальнодоступних репозиторіїв з тим же ім’ям. Внаслідок цього автоматизовані системи будуть використовувати його код. Вони не тільки завантажили б його пакет замість правильного, але також запустили б код всередині нього.
Схоже, компанії дійшли спільної думки, що проблема досить серйозна.
Бірсан повідомив, що більшість компаній виплатила максимальні суми винагород за цю інформацію в рамках пропонованих ними програм пошуку помилок.
Він додав, що більшість компаній, з якими він зв’язався з приводу експлойта, змогли швидко виправити свої системи, щоб вони більше не були уразливі. Microsoft навіть підготувала технічний документ, в якому пояснюється, як системні адміністратори можуть захистити свої компанії від подібних атак.
- Дослідниця безпеки з Google Project Zero Наталі Сильванович (Natalie Silvanovich) виявила небезпечну уразливість відразу в декількох популярних месенджерах.