home.social

#pypi — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #pypi, aggregated by home.social.

  1. WTF is pypi.org/project/backports.lzm - seems to be a copy of my archived pypi.org/project/backports.lzma but why... made by pypi.org/user/moinonin/ who seems to have a bunch of possible typo-swatting packages all described as packages for predicting buy and sell signals going back years. Something fishy here! #PyPI #Python

  2. WTF is pypi.org/project/backports.lzm - seems to be a copy of my archived pypi.org/project/backports.lzma but why... made by pypi.org/user/moinonin/ who seems to have a bunch of possible typo-swatting packages all described as packages for predicting buy and sell signals going back years. Something fishy here! #PyPI #Python

  3. WTF is pypi.org/project/backports.lzm - seems to be a copy of my archived pypi.org/project/backports.lzma but why... made by pypi.org/user/moinonin/ who seems to have a bunch of possible typo-swatting packages all described as packages for predicting buy and sell signals going back years. Something fishy here! #PyPI #Python

  4. WTF is pypi.org/project/backports.lzm - seems to be a copy of my archived pypi.org/project/backports.lzma but why... made by pypi.org/user/moinonin/ who seems to have a bunch of possible typo-swatting packages all described as packages for predicting buy and sell signals going back years. Something fishy here! #PyPI #Python

  5. WTF is pypi.org/project/backports.lzm - seems to be a copy of my archived pypi.org/project/backports.lzma but why... made by pypi.org/user/moinonin/ who seems to have a bunch of possible typo-swatting packages all described as packages for predicting buy and sell signals going back years. Something fishy here! #PyPI #Python

  6. Восемь аниме-плееров рунета изнутри: шифр Цезаря, пустой параметр и домен, который увели

    Я взял за основу популярную опенсорсную библиотеку парсеров аниме-плееров, запустил её — и получил от Kodik 500 Internal Server Error . Не «токен протух», не «IP заблокирован», а именно 500 на каждый запрос. Разбор занял вечер, а причина оказалась в одном символе: библиотека отправляла параметр ref пустым, а сервер требует его заполненным и раскодированным . Дальше выяснилось, что это не единичная поломка, а норма жанра. Один плеер полгода назад переехал на другой формат страницы. Другой отвечает бесконечным редиректом на самого себя. У третьего домен просто увели — сейчас там индонезийский интернет-магазин, а не аниме. Четвёртый прячет ссылки в WebSocket из обфусцированного бандла на 600 КБ, и его я честно не осилил. Под катом — разбор восьми плееров: как каждый отдаёт видео, где именно ломаются существующие парсеры и что из этого следует, если вы пишете что-то похожее. Библиотека получилась побочным продуктом и лежит в открытом доступе.

    habr.com/ru/articles/1079156/

    #python #парсинг #реверсинжиниринг #hls #m3u8 #аниме #pypi #github_actions #websocket

  7. Восемь аниме-плееров рунета изнутри: шифр Цезаря, пустой параметр и домен, который увели

    Я взял за основу популярную опенсорсную библиотеку парсеров аниме-плееров, запустил её — и получил от Kodik 500 Internal Server Error . Не «токен протух», не «IP заблокирован», а именно 500 на каждый запрос. Разбор занял вечер, а причина оказалась в одном символе: библиотека отправляла параметр ref пустым, а сервер требует его заполненным и раскодированным . Дальше выяснилось, что это не единичная поломка, а норма жанра. Один плеер полгода назад переехал на другой формат страницы. Другой отвечает бесконечным редиректом на самого себя. У третьего домен просто увели — сейчас там индонезийский интернет-магазин, а не аниме. Четвёртый прячет ссылки в WebSocket из обфусцированного бандла на 600 КБ, и его я честно не осилил. Под катом — разбор восьми плееров: как каждый отдаёт видео, где именно ломаются существующие парсеры и что из этого следует, если вы пишете что-то похожее. Библиотека получилась побочным продуктом и лежит в открытом доступе.

    habr.com/ru/articles/1079156/

    #python #парсинг #реверсинжиниринг #hls #m3u8 #аниме #pypi #github_actions #websocket

  8. Восемь аниме-плееров рунета изнутри: шифр Цезаря, пустой параметр и домен, который увели

    Я взял за основу популярную опенсорсную библиотеку парсеров аниме-плееров, запустил её — и получил от Kodik 500 Internal Server Error . Не «токен протух», не «IP заблокирован», а именно 500 на каждый запрос. Разбор занял вечер, а причина оказалась в одном символе: библиотека отправляла параметр ref пустым, а сервер требует его заполненным и раскодированным . Дальше выяснилось, что это не единичная поломка, а норма жанра. Один плеер полгода назад переехал на другой формат страницы. Другой отвечает бесконечным редиректом на самого себя. У третьего домен просто увели — сейчас там индонезийский интернет-магазин, а не аниме. Четвёртый прячет ссылки в WebSocket из обфусцированного бандла на 600 КБ, и его я честно не осилил. Под катом — разбор восьми плееров: как каждый отдаёт видео, где именно ломаются существующие парсеры и что из этого следует, если вы пишете что-то похожее. Библиотека получилась побочным продуктом и лежит в открытом доступе.

    habr.com/ru/articles/1079156/

    #python #парсинг #реверсинжиниринг #hls #m3u8 #аниме #pypi #github_actions #websocket

  9. Чужой код у вас в Production. Как устроены Supply Chain Attacks и что с ними делать

    Что может быть привычнее для разработчика, чем ежедневный ввод команд установки или обновления зависимостей: npm install , pip install , uv add , bundle add , cargo add ? Пакетный менеджер находит нужную библиотеку, скачивает её вместе с транзитивными зависимостями и за несколько секунд устанавливает в проект сотни тысяч строк чужого кода. В этот самый момент мы не задумываемся о том, что совершаем серьёзный акт доверия. Мы доверяем автору пакета, его аккаунту, системе публикации, сборочному конвейеру и всем зависимостям, которые пакет подтянет вместе с собой. Бесспорно, большую часть этого кода мы не читали и, скорее всего, не прочитаем никогда. Пока всё работает как задумано, этот процесс остаётся незаметным. Но стоит злоумышленнику скомпроментировать хотя бы одно звено этой цепочки, и обычное добавление или обновление библиотеки превращается в установку вредоносного кода в сотни или даже тысячи проектов. Именно на этой идее и строится атака на цепочку поставок — supply-chain attacks. Зачастую злоумышленнику не обязательно искать уязвимости непосредственно в вашем приложении, планировать дорогостоящие многовекторные атаки и применять социальную инженерию. Ему достаточно увести учётку разработчика даже не особо известного пакета, добавить бэкдор в новую версию, опубликовать её в тот же npm или PyPi — и вуаля: вот уже вредоносный код отправляет персональные данные ваших клиентов прямиком на серверы хакеров.

    habr.com/ru/companies/domclick

    #supply_chain #npm #bundler #pypi #cargo #nexus

  10. Wednesday night I'll be speaking at the NYC Open Source Security User Group meetup.

    If your release pipeline still has stored API tokens in it, come find out how to delete them for good.

    Wed Aug 26, 6-8 PM, pizza at 6, talk at 6:30
    Amazon office, 12 W 39th St, NYC

    Free, but you must register for building access - last chance: luma.com/5mwalp6p?tk=JivtHQ

    Already registered? See you soon! Bring a colleague, have them sign up first - building access requires photo ID.

    #Python #OpenSourceSecurity #SupplyChainSecurity #NYCTech #PyPI

  11. quicktipp #117: Bootstrapping a portable Python bundle on MS Windows using the `pywinbundle` tool.

    github.com/christian-korneck/p

    A bundle is a bit like a venv, but self-contained and can get moved/renamed to any path or copied to any Windows machine. The bundle will continue to work, even if there is no existing Python installation.

    #python #windows #pip #venv #virtualenv #uv #jupyter #pypi

  12. Vibe-coding и зависимости: как не дать Claude и Cursor затащить дырявый пакет

    На прошлой неделе я попросил Claude Code добавить рендеринг markdown в проект. Через секунду в зависимостях появился flutter_markdown — нормальный пакет от flutter.dev, паблишер проверенный. Я нажал accept. А потом случайно открыл его карточку, а там прямо в шапке: «This project has been discontinued, and will not receive further updates.» Пакет уже больше года как мёртв. Другой пример: Cursor добавляет minio/minio:latest в docker-compose для S3-совместимого хранилища. Только репозиторий архивирован 25 апреля 2026 года, и MinIO Inc. толкает всех в коммерческий AIStor. В статье разбираю: — что такое slopsquatting и почему эта атака работает только из-за ИИ-агентов; — что показала USENIX Security 2025 на 576 000 примерах кода (спойлер: 19,7% рекомендованных LLM пакетов вообще не существуют); — что реально творилось с npm и PyPI в 2024–2025 — от ultralytics до Shai-Hulud-червя и атаки на chalk с 2 млрд weekly downloads; — готовый skill для Claude Code, который заставит агента проверять пакет до установки.

    habr.com/ru/articles/1051000/

    #slopsquatting #supply_chain #Claude_Code #Cursor #vibe_coding #npm #pypi #безопасность_зависимостей

  13. Mini Shai-Hulud Worm Compromises TanStack, Mistral AI, Guardrails AI & 169 Packages

    A large-scale supply chain attack targeted npm and PyPI packages from major projects like TanStack, Mistral AI, UiPath, and OpenSearch, exploiting GitHub Actions vulnerabilities to steal credentials and publish malici...

    🔗 salehgnutux.github.io/GT-NEWST

    #Mini_Shai-Hulud #Cybersecurity #Supply_Chain #npm #PyPI #TanStack #Mistral_AI #GitHub_Actions

  14. Il colloquio di lavoro come arma: Lazarus Group e la campagna Graphalgo contro gli sviluppatori crypto

    Da maggio 2025, Lazarus Group conduce la campagna Graphalgo: 192 pacchetti npm e PyPI malevoli distribuiti tramite finti colloqui di lavoro tecnici per sviluppatori blockchain. Il malware a tre stadi punta direttamente ai wallet MetaMask. Un'operazione di cyberspionaggio e furto crypto a firma nordcoreana tuttora attiva.

    insicurezzadigitale.com/il-col

  15. #pypi on the #sha1hulud situation:

    "PyPI has not been exploited, however some PyPI credentials were found exposed in compromised repositories. We've revoked these tokens as a precaution, there's no evidence they have been used maliciously. This post raises awareness about the attack and encourages proactive steps to secure your accounts, especially if you're using build platforms to publish packages to PyPI."

    blog.pypi.org/posts/2025-11-26

  16. #QuantumComputing made more accessible: Scientists from our #QualityEngineering business unit designed and released #Qrisp, a high-level programming framework that makes it easy for developers to write efficient and scalable quantum algorithms: ▶️ fokus.fraunhofer.de/en/fokus/n

    Qrisp is available for free installation as an #OpenSource codebase on #PyPi and @GitHub. Qrisp is funded by the @BMWK: ▶️ qrisp.eu/index.html