The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

В каталоге Python-пакетов PyPI выявлены три вредоносные библиотеки

13.12.2021 16:50

В каталоге PyPI (Python Package Index) выявлены три библиотеки, содержащие вредоносный код. До выявления проблем и удаления из каталога в сумме пакеты успели загрузить почти 15 тысяч раз.

Пакеты dpp-client (10194 загрузки) и dpp-client1234 (1536 загрузок) распространялись с февраля и включали код для отправки содержимого переменных окружения, которые, например, могли включать ключи доступа, токены или пароли к системам непрерывной интеграции или облачным окружениям, таким как AWS. Пакеты также отправляли на внешний хост список с содержимым каталогов "/home", "/mnt/mesos/" и "mnt/mesos/sandbox".

Пакет aws-login0tool (3042 загрузки) был размещён в репозитории PyPI 1 декабря и включал код для загрузки и запуска троянского приложения для захвата контроля над хостами, работающими под управлением Windows. При выборе имени пакета расчёт был сделан на то, что клавиши "0" и "-" находятся рядом и есть вероятность, что разработчик наберёт "aws-login0tool" вместо "aws-login-tool".

Проблемные пакеты были выявлены в ходе простого эксперимента, в рамках которого при помощи утилиты Bandersnatch была загружена часть пакетов PyPI (около 200 тысяч из 330 тысяч пакетов в репозитории), после чего утилитой grep были выделены и проанализированы пакеты, в файле setup.py которых упоминается вызов "import urllib.request", обычно применяемый для отправки запросов к внешним хостам.

  1. Главная ссылка к новости (https://medium.com/ochrona/3-n...)
  2. OpenNews: В каталоге PyPI выявлены вредоносные библиотеки, использующие CDN PyPI для скрытия канала связи
  3. OpenNews: Из каталога PyPI удалены вредоносные пакеты mitmproxy2 и mitmproxy-iframe
  4. OpenNews: 46% Python-пакетов в репозитории PyPI содержат потенциально небезопасный код
  5. OpenNews: В каталоге PyPI (Python Package Index) выявлено 6 вредоносных пакетов
  6. OpenNews: Применение тайпсквоттинга для распространения вредоносных модулей NPM, PyPI и Gems
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/56337-pypi
Ключевые слова: pypi
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (61) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 16:58, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +12 +/
    Hahaha, classic…
     
     
  • 2.12, Аноним (-), 18:30, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Hahaha, classic…

    https://www.opennet.ru/opennews/art.shtml?num=48948
    > В AUR-репозитории Arch Linux найдено вредоносное ПО
    > Проблема выявлена в пакетах acroread 9.5.5-8 (Adobe PDF Reader), balz 1.20-3 (утилита для сжатия файлов) и minergate 8.1-2 (GUI для майнинга криптовалют). В данные пакеты был добавлен код для загрузки и запуска скрипта с внешнего сервера, активируемый во время установки пакетов.

    Да, classic.

     
     
  • 3.32, Аноним (32), 21:04, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Adobe Acrobat не выпускается с 2013 года. Это легаси дыра.  
     
     
  • 4.37, Аноним (-), 22:15, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> В данные пакеты был добавлен код для загрузки и запуска скрипта с внешнего сервера,
    > Adobe Acrobat не выпускается с 2013 года. Это другое!

    Ладно, не прошел по ссылке на новость, но хотя бы сначала дочитать до конца и лишь потом писать, что "Это другое!" - не позволяет религия?

     
  • 4.41, й (?), 00:35, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    да-да, а Adobe Acrobat Reader DC версии 2021.007.20099 на сайт adobe.com подкинули!
     
     
  • 5.45, Аноним (45), 01:54, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > DC версии ... 2021.007.20099

    Не ври, DC - это версия 2015. Support by Adobe ended April 7, 2020.

     

  • 1.2, Аноним (2), 17:06, 13/12/2021 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • –9 +/
     

     ....ответы скрыты (4)

  • 1.3, corvuscor (ok), 17:07, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +9 +/
    > была загружена часть пакетов PyPI (около 200 тысяч из 330 тысяч пакетов в репозитории), после чего утилитой grep были выделены и проанализированы пакеты, в файле setup.py которых упоминается вызов "import urllib.request", обычно применяемый для отправки запросов к внешним хостам.

    Вот это я понимаю юниксвей))

     
     
  • 2.36, ip1982 (ok), 21:45, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Учтём. Спасибо!
     

  • 1.5, Какаянахренразница (ok), 17:10, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    > выявлены три вредоносные библиотеки

    Што ви гаварице?! Нэ может биц!

     
  • 1.6, kai3341 (ok), 17:13, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Идея фишинга стара, как мир. Поэтому будь то npm, будь то pip -- один хрен я иду уточнять имя библиотеки на официальный сайт

    > упоминается вызов "import urllib.request"

    А ведь это только верхушка айсберга -- эти пацаны даже не пытаются скрыться

     
  • 1.7, Аноним (7), 17:23, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    pip list | grep dpp-client
     
     
  • 2.42, x3who (?), 01:42, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • –5 +/
    ~ $ pip list | grep dpp-client
    No command pip found, did you mean:
    Command pic in package groff
    Command ip in package iproute2
    Command php in package php
    Command pil in package picolisp
    Command pup in package pup
    Command ip in package termux-tools
    Command zip in package zip
     
     
  • 3.73, Аноним (73), 19:47, 16/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    C:\> pip list | grep dpp-client
    "pip" не является внутренней или внешней
    командой, исполняемой программой или пакетным файлом.
     

  • 1.8, Аноним (8), 17:34, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >(около 200 тысяч из 330 тысяч пакетов в репозитории)

    Места на жёстком диске не хватило, не иначе.

     
     
  • 2.9, Аноним (8), 17:37, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Хотя нет, видимо я ошибся:

    >For this research, I was careful to exclude exceedingly large distributions, only pull the latest versions of packages, and configured a lower number of workers to avoid putting excess pressure on PyPI’s servers.

     

  • 1.14, Чихиро (?), 18:43, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    import urllib.request
    Господа, вирусописатели, переходим на requests
     
     
  • 2.15, Аноним (15), 18:54, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Нет. Он тоже синхронный и блокируется. А ещё он плохо скалируется в мультипотоке из-за GIL, много данных не отправишь. Ничем не лучше.
     
     
  • 3.50, GG (ok), 11:17, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    При чём тут GIL?
    Скалируется он так же как и любой HTTP: спавни сколько хочешь потоков и отправляй сколько угодно реквестов.

    Не влезает в ядро?
    Спавни процессы или добавь воркеров в гипервизоре.

     
     
  • 4.59, Аноним (15), 17:18, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    GIL тут при том, что эффективность экспоненциально падает с увеличением числа потоков и приходится спавнить значительно более дорогие процессы или использовать какой-нибудь curl не завязанный на гил. Из-за него питон фактически однопоточный и этого для скалирующихся задач не достаточно.
     
     
  • 5.61, GG (ok), 17:39, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > экспоненциально

    Неуд тебе по математике, приходи пересдавать когда выучишь.
    От того что у тебя миллион реквестов в ожидании висеть будут поменяется примерно ничего.
    Разница с си меньше 10% если руки прямые.

     
     
  • 6.62, Аноним (15), 17:42, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    В каком ещё ожидании, ты в себе? Разница с си никогда не будет 10% и в мультипотоке эффективность просто улетает под плинтуса.
     
  • 2.16, Массоны Рептилоиды (?), 18:54, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > import urllib.request
    > Господа, вирусописатели, переходим на requests

    Мы перешли, нас не нашли

     
  • 2.20, kusb (?), 19:28, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    pull requests
     

  • 1.17, Аноним (17), 19:00, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Отсылочка к Black Mirror засчитана.
     
     
  • 2.19, _dz (?), 19:15, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Какая отсылочка?
     

  • 1.22, EuPhobos (ok), 19:30, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    > Пакет aws-login0tool (3042 загрузки)
    > расчёт был сделан на то, что клавиши "0" и "-" находятся рядом

    3042 раза программисты прокосили по кнопкам.

     
     
  • 2.43, x3who (?), 01:44, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    аавтодополнения небось рулят
     

  • 1.24, Аноним (45), 19:52, 13/12/2021 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +5 +/
     

     ....ответы скрыты (2)

  • 1.30, Онаним (?), 20:53, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    /mnt/mesos, говорите
    Ряд деввасянов ждут сюрпризы
     
     
  • 2.38, пох. (?), 23:40, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    вот тот случай - когда не знал о какой-то ненужной х-не, и дальше лучше и не узнавать.

    https://mesos.apache.org/getting-started/ - просто прекрасно.

     

  • 1.31, Аноним (-), 21:03, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    meson в топку? мне казалось хакеры продвинули питон в линукс чтобы распитонячить системы
     
     
  • 2.34, Аноним (32), 21:07, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Нет для этого продвинули node.js теперь даже маки у фронтенд разработчиков кишат вирусами и майнерами, а те и не в курсе потому что на маке нет вирусов. И антивирус они конечно же ставить не будут.  
     
     
  • 3.40, анонимуслинус (?), 23:44, 13/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    вирусы могут быть везде. вот только линь держится еще из-за пока что строгих прав доступа. на маке и винде для удобства считай что их нет. итог мак тоже стал осью для вирусов. кстати линь тоже может легко стать такой осью , если прокладка между монитором и сиденьем довольно тупа. ничто не совершенно. но маки на стары powerG процах были топ машинками, а на интел стали хламом.
     
     
  • 4.44, x3who (?), 01:50, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    у меня гибко с правами, даже хомяки без noexec монтируются и никакой срани тюфу-тьфу нет.. хотя надо бы маунты пофиксить чот подумалось вдруг.
     
     
  • 5.51, GG (ok), 11:20, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    $ which python3
     
     
  • 6.58, Онаним (?), 16:12, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    /usr/bin/which: no python3 in (/home/***/.local/bin:/home/***/bin:/home/***/.local/bin:/home/***/bin:/home/***/.local/bin:/home/***/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin)
     

  • 1.35, Онаним (?), 21:07, 13/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    normal.exe
    Эти люди что-то знают о пистонистах.
     
  • 1.46, Аноним (46), 03:16, 14/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >330000 пакетов
    >всего 3 вредоноса

    Либо чуствительность поиска крайне низкая, либо pip никому на фиг не нужен. Склоняюсь к первой гипотезе.

     
     
  • 2.55, макпыф (ok), 14:13, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    grep -r "import urllib.request"
    вот и весь поиск
     

  • 1.48, microcoder (ok), 08:20, 14/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А кто-то вообще проверяет код который штампует Open Source сообщество? Ведь там же гигантский код, на миллионы строк в сумме при каждом апдэйте rolling-системы (Arch, Manjaro) или не rolling, но не так часто обновления. Кто это проверяет? Тот кто проверяет компетентен в том, что там вообще бывает написано в этих самых исходниках? Знает все языки, конструкции, парадигмы? Он не подкупен, если что за 30 серебренников? ))) А Линус, разве не может протянуть в ядро бэкдор, троян ради хохмы или ради выгоды? Я понимаю, что некоторые крупные проекты Open Source визируют код прежде чем добавить его в master ветку, но кто этот тот, кто знает и читает весь код и понимает, что там написано? Откуда у него столько времени на чтение кода?
     
     
  • 2.49, пох. (?), 10:34, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > А кто-то вообще проверяет код который штампует Open Source сообщество?

    дык, этот, тысячегласс жеж. (Мифическое астральное создание, якобы присматривающее с седьмого неба за всем посвященным шва6одке и лично встолману софтом.)

    Ему, правда, что-то давно человеческих жертв не приносили... ты, кстати, вполне подходишь.

     
     
  • 3.54, Аноним (-), 14:09, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > дык, этот, тысячегласс жеж. (Мифическое астральное создание, якобы присматривающее с седьмого
    > неба за всем посвященным шва6одке и лично встолману софтом.)

    Просто глаза у него в том же самом месте, что и у поклонников (и глаза и, зачастую, руки) - энергия веры форматирует тысячегласса "по образу и подобию".

     
  • 3.56, myhand (ok), 14:42, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > дык, этот, тысячегласс жеж.

    Т.е. ты готов предъявить тысячи пакетов, которые прописали себе это в зависимости, верно?

    > ты, кстати, вполне подходишь.

    А ты шо, таки отощщал?

     
  • 2.66, PaleMoon (?), 01:07, 15/12/2021 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Дык от проекта ж зависит и репутационных потерях от внедрения бэкдора. Вон институтские пытались в ядро бэкдор впихнуть, были вышвырнуты и потом долго извинялись.
    Для не rolling: в RedHat и Canonical люди сидят на зарплате, вот и проверяют.
    Ну и уязвимости везде находят.

    Вот кому выгодно нарабатывать репутацию годами и потом потерять доверие от злоумышленных действий?
    Arch AUR, PIP, NPM  не использует этот механизм

     
     
  • 3.69, Аноним (-), 02:29, 15/12/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Угу, в фантазиях анонимов мotivated reasoning , кажись оно может так и было, ... большой текст свёрнут, показать
     

  • 1.53, microcoder (ok), 13:30, 14/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Это всегда так будет, пока любая вещь популярна. Сделали Пайтон популярным - притянули криминал.
     
  • 1.60, Аноним (60), 17:28, 14/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Это судьба всех этих pip-ов, npm-ов и каргоф. Это реальность. Можете минусовать. Всё равно реальность не изменить.
     
     
  • 2.63, Аноним (-), 17:50, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Это судьба всех этих pip-ов, npm-ов и каргоф. Это реальность.

    Писать бред - судьба опеннетных анонимных дурачков. Это реальность. Можете минусовать и полыхать. Все равно реальность не изменить.


     
  • 2.64, Аноним (-), 19:59, 14/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Поддвачну. Сделали язычку одной реализации встроенную помойку с троянами - принимайте последствия. Нормальный язык с таким поставляться не будет.
     
     
  • 3.67, PaleMoon (?), 01:11, 15/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Интересно как Perl CPAN и частично Ruby gems этого избежали?
     
     
  • 4.70, Аноним (70), 11:54, 15/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А они избежали ?
     
     
  • 5.71, Аноним (-), 14:52, 15/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > А они избежали ?

    Да нет:
    https://www.opennet.ru/opennews/art.shtml?num=53448
    > В Perl-пакете Module-AutoLoad выявлен вредоносный код
    > 29.07.2020 11:27
    > В распространяемом через каталог CPAN Perl-пакете Module-AutoLoad, предназначенном для автоматической загрузки CPAN-модулей на лету, выявлен вредоносный код. Вредоносная вставка была найдена в коде теста 05_rcx.t, который поставляется с 2011 года. Примечательно, что вопросы о загрузке сомнительного кода возникали на Stackoverflow ещё в 2016 году.

    https://www.opennet.ru/opennews/art.shtml?num=52785
    > В RubyGems выявлено 724 вредоносных пакета
    > 22.04.2020 09:55

    Просто "Это другое!"(с)

     

  • 1.65, Аноним (-), 20:00, 14/12/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Казалось бы, при чём тут Rust?
     
     
  • 2.68, Аноним (45), 01:13, 15/12/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ага... На расте проектов нету. Совсем.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру