Изучим проекты, выпустившие свой первый релиз в рамках действия кампании 26 июня — 7 июля, захватив слева и справа дополнительное время для наглядности: с 12 июня по 15 июля.
Разработчик, публикуя проект, может по желанию оставить email для обратной связи. В этот промежуток было опубликовано всего 4 пакета с явным указанием почты на
@inbox.ru, все легитимные.График 1 (см. ниже) демонстрирует, принял ли решение разработчик указать email в первом релизе своего проекта.
Наблюдаем:
1. Снижение общей активности разработчиков в выходные (видны двухдневные ямы, чередующиеся с пятидневными буднями).
2. Всплески пакетов без email, выпущенные 27 июня (378), 30 июня (662), 1 июля (509).
Второе наблюдение соотносится со статистикой PyPI: 27 июня выпущено 295 пакетов на
@inbox.ru, 30 июня — 740, 1 июля — 249, с поправкой на часовые пояса.В рамках периода активности есть 1403 проекта без email с одинаковым описанием: "Minimal package created automatically" — и версией 0.0.1 (график 2). Они совпадают с периодом активности кампании, которой были недовольны администраторы PyPI.
Названия пакетов из этой пачки — явный тайпсквоттинг (атака на то, что разработчик опечатается в названии пакета при установке или поведется на хорошее название — и поставит себе троян):
🟢
avoid 🐱🟢
common-io🟢
win32crypt🟢
win32com🟢
pywintypes🟢
jsap🟢
webdav2🟢
arbuzmining 🍉🟢
requirements-cpu-txt🟢
requirements-cuda-txt🟢
dl-pivot-pandas🟢
steambaselib 💀🟢
catboost-spark🟢
numpynumpy🟢
antlr4-runtime🟢
celery-telegram🟢
exllama-kernels🟢
booking-apiНекоторые из названий тагретят разработчиков российских компаний:
🟢
youla-spark-session 🐱🟢
ipy-kaspersky 💀🟢
vkads 🟢
vkpay🟢
vkplay-sync 😺🟢
vkplay-metricsНа этих названиях становится понятно, что администрация PyPI пресекла кампанию, от которой могли пострадать наши соотечественники 🥺
#ti #pypi #pyanalysis #scs
@ptescalator
Пост 3/4
Продолжение⬇️

