NPM-пакет с 3 млн еженедельных установок содержал опасную уязвимость

NPM-пакет с 3 млн еженедельных установок содержал опасную уязвимость

NPM-пакет с 3 млн еженедельных установок содержал опасную уязвимость

Популярный NPM-пакет «pac-resolver» затрагивала серьёзная уязвимость, приводящая к удалённому выполнению кода. Учитывая количество загрузок этого пакета — более трёх миллионов только за одну неделю, — масштабы бреши можно назвать огромными.

В результате проблема затрагивала приложения, использующие Node.js и полагающиеся на зависимости с открытым исходным кодом.

Согласно описанию разработчиков, pac-resolver представляет собой модуль, допускающий использование файлов конфигурации, написанных на JavaScript, и генерирующий специальную функциональность приложения. С помощью этой функции пользователь может настроить определённые домены на использование прокси.

Опасную уязвимость в пакете pac-resolver обнаружил Тим Перри, который также уточнил, что выявленный баг позволяет злоумышленнику запустить произвольный код в локальной сети (в процессе Node.js). Уязвимость получила собственный идентификатор — CVE-2021-23406.

По словам Перри, корень проблемы должен быть как-то связан с обработкой файлов формата Proxy Auto-Config (PAC). Эти файлы состоят из JavaScript-кода, с помощью которого указывается конфигурация прокси.

Тим Перри опубликовал PoC-код для обнаруженной уязвимости, наглядно демонстрирующий, как потенциальный атакующий может выбраться за пределы песочницы модуля. Брешь особенно актуальна для версий pac-resolver ниже 5.0.0.

 

К счастью разработчики уже выпустили соответствующий патч, который можно установить с версией 5.0.0. Теперь в модуле используется более надёжный механизм песочницы.

Google Play начнёт сообщать Android-приложениям возраст пользователей

Google готовит глобальный запуск Play Age Signals API — инструмента, который позволит приложениям узнавать примерный возраст пользователя и подстраивать под него контент. Паспорт показывать не придётся: вместо даты рождения разработчики получат один из четырёх диапазонов — 0-12, 13-15, 16-17 или 18+.

Получив такой сигнал, приложение сможет изменить доступные функции, отфильтровать контент или хотя бы разговаривать с ребёнком не так, как со взрослым.

Это обратная сторона родительского контроля: Family Link не просто закрывает детям неподходящие приложения, а Age Signals помогает самим приложениям вовремя переключиться в детский режим.

 

Раздавать возраст направо и налево Google не собирается. Пользователи смогут решать, каким приложениям разрешено получать эту информацию, а родители — полностью отключить её передачу. Точные персональные данные разработчикам при этом не раскрываются.

Компания также установила жёсткие правила использования API. Возрастные диапазоны разрешено применять только для создания подходящего пользователю интерфейса и контента. Превращать их в новый инструмент рекламного таргетинга или аналитики нельзя. По крайней мере, на бумаге лазейку сразу закрыли.

 

Сейчас Age Signals API уже доступен разработчикам в Бразилии. В ближайшие недели Google расширит программу на Канаду и Австралию, а до конца года планирует запустить её по всему миру.

Поддерживать API разработчики будут добровольно, поэтому мгновенно взрослеть и молодеть все приложения не начнут. Но инструмент у них появится полезный: узнать не день рождения пользователя, а лишь то, стоит ли показывать ему взрослый интернет во всей его красе.

RSS: Новости на портале Anti-Malware.ru