The OpenNET Project / Index page

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



"PyPI приостановил регистрацию новых пользователей и проектов из-за всплеска вредоносных публикаций"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"PyPI приостановил регистрацию новых пользователей и проектов из-за всплеска вредоносных публикаций"  +/
Сообщение от opennews (??), 29-Мрт-24, 12:56 
Репозиторий Python-пакетов PyPI (Python Package Index) временно запретил регистрацию новых пользователей и создание новых проектов из-за непрекращающейся массовой загрузки вредоносных пакетов в ходе автоматизированной атаки. Блокировка была введена после того, как 26 и 27 марта в репозиторий было загружено 566 пакетов с вредоносным кодом, стилизованных под 16 популярных Python-библиотек...

Подробнее: https://www.opennet.dev/opennews/art.shtml?num=60874

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


5. "PyPI приостановил регистрацию новых пользователей и проектов..."  +5 +/
Сообщение от Аноним (5), 29-Мрт-24, 13:25 
На самом деле, утомительно по 10 раз перепроверять, что вон тот васянопакет на самом деле настояший васянопакет, и вовсе не соседний, поддельный с малварью. И Snyk тут не всегда поможет (да и сам он выглядит, как скам).
Ответить | Правка | Наверх | Cообщить модератору

20. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (20), 29-Мрт-24, 16:00 
Хоть как-то у себя поддерживать базу доверительных публичных ключей: https://packages.gentoo.org/categories/sec-keys и верифицмровать ключи разрабов по WOT.

Проверять подписи пактов.

Разрабам использовать аппаратные хранилища для своих приватных ключей:
https://www.linux.org.ru/forum/security/17518444?cid=17519118
https://www.linux.org.ru/forum/security/17518444?cid=17520696
И раздавать свои публичные ключи для подписи другими.

Ответить | Правка | Наверх | Cообщить модератору

43. "PyPI приостановил регистрацию новых пользователей и проектов..."  +2 +/
Сообщение от Аноним (5), 29-Мрт-24, 20:04 
А бэкдор в xz-utils ведь был подписан? Или нет?
Ответить | Правка | Наверх | Cообщить модератору

51. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (51), 30-Мрт-24, 09:48 
Говорат был подписан: "Newer releases were signed by a potentially compromised upstream maintainer." https://packages.gentoo.org/packages/app-arch/xz-utils

В Gentoo забанили все что подписано его ключом. И инцендент, пока, рассматривается как компроментация разработчика и воровство приватного ключа, а не умышленные действия. Да, приватные ключи разрабов необходимо аппаратно защищать:
https://www.nitrokey.com/news/2018/nitrokey-partners-linux-f...
https://www.nitrokey.com/news/2019/nitrokey-partners-gentoo-...
https://www.nitrokey.com/news/2021/nitrokey-equips-arch-linu...


Ответить | Правка | Наверх | Cообщить модератору

7. "PyPI приостановил регистрацию новых пользователей и проектов..."  –1 +/
Сообщение от Аноним (7), 29-Мрт-24, 13:26 
Адекватные люди ставят все pure-python пакеты исключительно из исходников, бинарные - по возможности из дистра, по возможности - компилируют сами.
Ответить | Правка | Наверх | Cообщить модератору

8. "PyPI приостановил регистрацию новых пользователей и проектов..."  +1 +/
Сообщение от Аноним (8), 29-Мрт-24, 13:36 
А как отличить правильный исходник от «немножко изменённого»? У бинарника хотя бы чексумма есть...
Ответить | Правка | Наверх | Cообщить модератору

31. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (31), 29-Мрт-24, 17:36 
Вот бинарник от подправленного ты никак не отличишь - злоумышленник и сумму пересчитает, и ключом своим подпишет, и ссылку на ключ на свою заменит.

А исходник... исходник — он живой! В него правки вносятся постоянно. Захватят контроль над репозиторием — автор обнаружит. От вредительства самим автором это никак не защитит, от этого только Чучхе с лично написанным всем софтом и лично сделанным всем железом. А то, что это нереализуемо — это не отменяет гарантий метода, нет софта - некого винить ведь!

Ответить | Правка | Наверх | Cообщить модератору

42. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (5), 29-Мрт-24, 19:53 
Кстати, там в дистрибутивных xz-utils малварь нашли в исходниках, вот это по-актуальнее https://bugs.gentoo.org/928134 https://www.openwall.com/lists/oss-security/2024/03/29/4
Ответить | Правка | К родителю #8 | Наверх | Cообщить модератору

65. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (65), 30-Мрт-24, 17:41 
В том то и дело, что нашли. В бинарнике бы её даже выискивать не стали.
Ответить | Правка | Наверх | Cообщить модератору

66. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (66), 30-Мрт-24, 17:46 
И подчеркну - бэкдор был именно в релизах, которые обычно никто не смотрит, потому что все разрабы работают с git. А спалили именно на работе с другими разрабами. Если бы xz был поддерживаемым - спалили бы гораздо раньше. Но он фактически не был никому интересен. Как и bitmessage, в котором тоже был явный бэкдор, RCE, вообще никак не спрятанный - публично сообщили только после начала массовой атаки. Не пользуйтесь проектами с низким числом независимых разрабов и индикаторами мутности, или читайте и аудируйте их исходники сами.
Ответить | Правка | К родителю #42 | Наверх | Cообщить модератору

68. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (5), 30-Мрт-24, 19:23 
Неа, никто ничего не заметил за 2 месяца и растащили повсюду, в том числе по дистрам. Никто не использует гит/свн и т.д., понятное дело все берут релизный архив с исходниками, а он-то и заражён. То, что он соответствует реальным исходникам, никто не проверяет, как мы видим.
Ответить | Правка | Наверх | Cообщить модератору

70. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (70), 31-Мрт-24, 16:13 
Повторяю: недоумки берут архив с релизами. Просто потому, что для архива нужен просто curl, а для релиза - git + git-lfs + libcurl для фетча по http + настройка (которую можно сделать черрез переменные окружения), потому что гит откажется даже клонировать, пока никнейм и email не задашь.
Ответить | Правка | Наверх | Cообщить модератору

71. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (5), 31-Мрт-24, 16:43 
Дело в том, что это быстрее и лучше поддаётся автоматизации. И разве люди, сношающиеся с гитхабами и их ограничениями скорости, не недоумки? Самые настоящие. Проблема не в используемых инструментах, проблема в том, что пользователям получать дерево достаточно болезненно, а если ещё разные ветки с тегами выкачивать придётся, то всё.
Ответить | Правка | Наверх | Cообщить модератору

9. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (5), 29-Мрт-24, 13:38 
Смотри, перечень пакетов со сборкой которых возникли сложности лично у меня только на той неделе. Каковы будут дальнейшие рекомендации? О, я бы сейчас с удовольствием предоставил ещё и гигабайты максимально мутных логов, но так, навскидку? И чёт почти ничего в репах и не водится. А если и есть, то протухшее и неактуальное.

thinc, blis, pyee, tensorflow, srsly, cupy

Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

10. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (10), 29-Мрт-24, 14:03 
Читай маны
Ответить | Правка | Наверх | Cообщить модератору

12. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (5), 29-Мрт-24, 14:15 
Ты не понял. Тысячи пакетов я скомпилировал, включая все используемые пакеты в pypi. Кроме этих. А эти ну никак не компилируются. Дальнейшие действия? В итоге, есть только блобы в pypi и больше ничего. И игры с тулчейнами тоже ни к чему не приводят. Какой вообще смысл их компилировать разработчику? Правильно, никакого. А пользователи могут взять ровно те же общедоступные блобы, собранные в непонятных условиях.
Ответить | Правка | Наверх | Cообщить модератору

32. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (31), 29-Мрт-24, 17:37 
Не из pypi надо кшмпилить, а с гитхаба.
Ответить | Правка | Наверх | Cообщить модератору

30. "PyPI приостановил регистрацию новых пользователей и проектов..."  +1 +/
Сообщение от Аноним (30), 29-Мрт-24, 17:31 
>tensotflow

Сказано:
>по возможности

Tensorflow я сам ставлю из бинарей. Потому что Гуглаг специально саботируют его сборку всеми, кто не может терпеть базель.

А сам список пакетов как бы намекает, что вы ставите всё подряд. У меня и за полгода такого длинного списка с проблемами не наберётсяж

Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

34. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (5), 29-Мрт-24, 17:38 
Это 1 spacy и его зависимости на самом деле.
Ответить | Правка | Наверх | Cообщить модератору

36. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (36), 29-Мрт-24, 17:48 
Я себе просто отключил проверку зависимостей в pip. Доустанавливаю если что-то не работает вне зависимости от того, что записано в METADATA. И такое гигантское дерьмо приходится ставить из бинарных пакетов. Ручками. Из исходников ставлю всякую мелочь вроде colorama, setultools, pip, etc. И если учитывать зависимости, то у самого TensorFlow дофига бинарных зависимостей.
Ответить | Правка | Наверх | Cообщить модератору

41. "PyPI приостановил регистрацию новых пользователей и проектов..."  –1 +/
Сообщение от YetAnotherOnanym (ok), 29-Мрт-24, 19:04 
> Каковы будут дальнейшие рекомендации

Слезть с питона, очевидно же.

Ответить | Правка | К родителю #9 | Наверх | Cообщить модератору

28. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от БуБука (?), 29-Мрт-24, 16:34 
А какой не является? Можно список с аргументами?
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

33. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Пряник (?), 29-Мрт-24, 17:37 
Много ли ты видел pure-python пакетов?
Ответить | Правка | К родителю #7 | Наверх | Cообщить модератору

37. "PyPI приостановил регистрацию новых пользователей и проектов..."  –1 +/
Сообщение от Аноним (36), 29-Мрт-24, 17:52 
Более сотни - это лишь те, что я полностью сам написал, без учёта превосходящего вклада в чужие пакеты, большая часть из которых pure python.
Ответить | Правка | Наверх | Cообщить модератору

38. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (36), 29-Мрт-24, 17:56 
под pure python имеется в виду отсутствие компиляции cext или долботни с maturin/setuptools-rust, что пакет можно установить просто распаковкой. Это не означает отсутствие зависимостей от компонентов в native-коде, таких как сам интерпретатор, shared-библиотеки, другие пакеты, jar-файлы, .Net-сборки, ONNX-файлы и т.д.
Ответить | Правка | Наверх | Cообщить модератору

39. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (5), 29-Мрт-24, 18:11 
Правда, pure python _именно это_ и означает: только интерпретируемый код, без использования нативного (компилируемого) в любом виде, за исключением интерпретатора и его стандартных бинарных компонентов. И, в частности, без таких трюков как освобождение gil на время, пока нативный код исполняется. По этой же причине, такой код является третьесортным -- он просаживается в многопотоке.
Ответить | Правка | Наверх | Cообщить модератору

40. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (40), 29-Мрт-24, 18:54 
>за исключением интерпретатора и его стандартных бинарных компонентов

О, оправдания пошли! Для меня pure-python пакет - это пакет, состоящий из кода на языке Python. Он может зависеть от нативных либ и прочих вещей, но эти вещи в состав пакета не входят. Поэтому сборка пакета своидится к созданию zip-архива нужного формата, а установка - к его распаковке. И почти не зависит от версии питона, а даже если зависит - то юзеру не придётся иметь на компе тулчейн (который в запущенных случаях должен быть MSVC). Ну ещё setuptools может сгенерить бинари для console_scripts в процессе установки (да, их не pip генерит, а setuptools)

Ответить | Правка | Наверх | Cообщить модератору

73. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Пряник (?), 01-Апр-24, 10:30 
Например, Paramiko не pure-python, потому что зависит от cryptography, написанном на Си. А вот Bottle является одиночным файлом без зависимостей.
Ответить | Правка | Наверх | Cообщить модератору

72. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Пряник (?), 01-Апр-24, 10:25 
Есть модуль multiprocessing. Между разными процессами GIL не используется.
Ответить | Правка | К родителю #39 | Наверх | Cообщить модератору

74. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (5), 01-Апр-24, 10:49 
Зато добавляются накладные расходы, IPC очень дорого и невозможно шарить конекшены допустим. Вообще, я сравнивал на примере requests, намного выгоднее быстрее удобнее и эффективнее взять aiohttp. Раньше приходилось обмазываться pycurl, но, среди прочих недостатков, он не работает с асинхронным кодом и его слишком легко засегфолтить.
Ответить | Правка | Наверх | Cообщить модератору

75. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Пряник (?), 01-Апр-24, 15:05 
Ну так про GIL говорили же. А GIL никак не связан с однопоточной природой Asyncio.
Ответить | Правка | Наверх | Cообщить модератору

29. "PyPI приостановил регистрацию новых пользователей и проектов..."  +5 +/
Сообщение от Alladin (?), 29-Мрт-24, 17:08 
Как можно из 16 пакетов сделать 566, кажись это очень эффективные менеджеры:)
Ответить | Правка | Наверх | Cообщить модератору

35. "PyPI приостановил регистрацию новых пользователей и проектов..."  +1 +/
Сообщение от Пряник (?), 29-Мрт-24, 17:43 
И куда он отправляет пароли? Давайте уже вычислим по IP этого мамкиного шалунишку.
Ответить | Правка | Наверх | Cообщить модератору

45. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от голос из леса (?), 29-Мрт-24, 21:19 
Тебе надо, сам и вычисляй (С). ))
Ответить | Правка | Наверх | Cообщить модератору

49. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (49), 30-Мрт-24, 07:14 
Нет, это тебе надо чтобы тут пользователь вычислил! (иначе бы комментарии не писал)
Так что сам вычисляй!
Ответить | Правка | Наверх | Cообщить модератору

59. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Прохожий (??), 30-Мрт-24, 12:30 
Рекурсия получается
Ответить | Правка | Наверх | Cообщить модератору

60. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Прохожий (??), 30-Мрт-24, 12:33 
Точнее, не рекурсия, а бесконечный цикл.
Ответить | Правка | Наверх | Cообщить модератору

54. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Аноним (54), 30-Мрт-24, 11:11 
>И куда он отправляет пароли?

На какой-нибудь бесплатный хостинг/ВПН, естественно.

Ответить | Правка | К родителю #35 | Наверх | Cообщить модератору

48. "PyPI приостановил регистрацию новых пользователей и проектов..."  +3 +/
Сообщение от Аноним (48), 30-Мрт-24, 03:25 
А нельзя сделать просто проверку на похожесть и не разрешать имена пакетов, похожие на существующие?
Ответить | Правка | Наверх | Cообщить модератору

57. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Прохожий (??), 30-Мрт-24, 12:27 
>проверку на похожесть

Во сколько символов разница должна быть, чтобы название не считать похожим?

Ответить | Правка | Наверх | Cообщить модератору

67. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от 3dravenemail (ok), 30-Мрт-24, 19:12 
С точностью до опечатки достаточно.
Ответить | Правка | Наверх | Cообщить модератору

52. "PyPI приостановил регистрацию новых пользователей и проектов..."  –4 +/
Сообщение от Аноним (52), 30-Мрт-24, 10:13 
> 38 - Matplotlib

Любые "научные" книги, в том числе по ИИ, содержащие упоминание технологий Python, приобретению, прочтению и использованию в практических целях не подлежат. Хотя мнения своего никому не навязываю. Впрочем, результат и так описан в статье.

Ответить | Правка | Наверх | Cообщить модератору

56. "PyPI приостановил регистрацию новых пользователей и проектов..."  +2 +/
Сообщение от Вы забыли заполнить поле Name (?), 30-Мрт-24, 12:03 
Тёплое с мягким тебя где научили сравнивать? Или ты сам?
Ответить | Правка | Наверх | Cообщить модератору

55. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Вы забыли заполнить поле Name (?), 30-Мрт-24, 12:01 
Надо запрещать похожие названия, а вообще давно пора по умолчанию сделать username/package как схему именования, тогда злоумышленникам придётся имя пользователя делать похожим, но и его можно запретить.
Ответить | Правка | Наверх | Cообщить модератору

58. "PyPI приостановил регистрацию новых пользователей и проектов..."  –1 +/
Сообщение от Прохожий (??), 30-Мрт-24, 12:28 
Во сколько символов разница должна быть, чтобы название не считать похожим?
Ответить | Правка | Наверх | Cообщить модератору

61. "PyPI приостановил регистрацию новых пользователей и проектов..."  –1 +/
Сообщение от Аноним (52), 30-Мрт-24, 13:57 
Очевидно, коллега - специалист по сравнению

> Тёплое с мягким

Поэтому будет делать это

> сам

Ответить | Правка | Наверх | Cообщить модератору

64. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от Вы забыли заполнить поле Name (?), 30-Мрт-24, 16:41 
> Во сколько символов разница должна быть, чтобы название не считать похожим?

Очевидно разница может быть равна нулю. Функция похожести будет сложнее чем просто сравнение длин.

Ответить | Правка | К родителю #58 | Наверх | Cообщить модератору

62. "PyPI приостановил регистрацию новых пользователей и проектов..."  +/
Сообщение от чатжпт (?), 30-Мрт-24, 14:14 
> вообще давно пора по умолчанию сделать username/package

и будут тайпсквотить имена разрабов кроме имени пакета

Ответить | Правка | К родителю #55 | Наверх | Cообщить модератору

63. "PyPI приостановил регистрацию новых пользователей и проектов..."  +1 +/
Сообщение от Вы забыли заполнить поле Name (?), 30-Мрт-24, 16:40 
>> вообще давно пора по умолчанию сделать username/package
> и будут тайпсквотить имена разрабов кроме имени пакета

Для тайпскотинга имени пакета нужна 1 учетная запись, для имени пользователя N. Это сильно усложнит вредителям жизнь. К тому же никто не мешает запретить похожесть имен пользователей, чтобы избежать проблем, описанных в новости.

Ответить | Правка | Наверх | Cообщить модератору

69. "PyPI приостановил регистрацию новых пользователей и проектов..."  +1 +/
Сообщение от Аноним (69), 31-Мрт-24, 11:32 
Ну парни, кожанные мешки не могут называться программистами, если попадаются на тайпсквотинг ловушку СЕОшников.
Это джунгли, прежде чем выбирать библиотеку нужно чекать название из нескольких источников.
Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




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

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