<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Hack My Supply Chain — Findings</title>
    <link>https://hackmysupplychain.com</link>
    <description>Responsible disclosure of Python supply chain behavioral findings, backed by signed attestations.</description>
    <atom:link href="https://hackmysupplychain.com/feed.xml" rel="self" type="application/rss+xml"/>
    <language>en-us</language>
    <lastBuildDate>Sat, 06 Apr 2026 00:00:00 GMT</lastBuildDate>
    <item>
      <title>deepeval fetches your public IP at import via api.ipify.org</title>
      <link>https://hackmysupplychain.com/finding/deepeval-pii-collection</link>
      <description>deepeval@3.9.5 calls api.ipify.org at import time, retrieves the caller's public IPv4, and stamps it onto every PostHog telemetry event as user.public_ip. Opt-out: DEEPEVAL_TELEMETRY_OPT_OUT=YES (verified working).</description>
      <pubDate>Sat, 05 Apr 2026 00:00:00 GMT</pubDate>
      <guid isPermaLink="false">deepeval-pii-collection</guid>
    </item>
    <item>
      <title>litellm downloads unpinned JSON from GitHub main — 54 packages inherit this</title>
      <link>https://hackmysupplychain.com/finding/litellm-unpinned-fetch</link>
      <description>litellm@1.83.3 fetches model_prices_and_context_window.json from raw.githubusercontent.com/BerriAI/litellm/main/ at every import. Not pinned. 54 downstream packages inherit this. Opt-out: LITELLM_LOCAL_MODEL_COST_MAP=True (verified working).</description>
      <pubDate>Sat, 05 Apr 2026 00:00:00 GMT</pubDate>
      <guid isPermaLink="false">litellm-unpinned-fetch</guid>
    </item>
    <item>
      <title>composio fetches Sentry DSN dynamically from backend server</title>
      <link>https://hackmysupplychain.com/finding/composio-dynamic-sentry</link>
      <description>composio_core fetches its Sentry DSN from backend.composio.dev/api/v1/cli/sentry-dns at process exit, persists to ~/.composio/user_data.json. COMPOSIO_DISABLE_SENTRY=true does NOT prevent this (verified).</description>
      <pubDate>Sat, 05 Apr 2026 00:00:00 GMT</pubDate>
      <guid isPermaLink="false">composio-dynamic-sentry</guid>
    </item>
    <item>
      <title>weave sends Sentry session envelope on every import</title>
      <link>https://hackmysupplychain.com/finding/weave-sentry-session</link>
      <description>weave@0.52.36 POSTs a Sentry session envelope to o151352.ingest.us.sentry.io on every import. WANDB_ERROR_REPORTING=false does NOT prevent this (verified).</description>
      <pubDate>Sat, 05 Apr 2026 00:00:00 GMT</pubDate>
      <guid isPermaLink="false">weave-sentry-session</guid>
    </item>
    <item>
      <title>paddleocr pings 4 regional CDNs at import</title>
      <link>https://hackmysupplychain.com/finding/paddleocr-reachability</link>
      <description>paddleocr@3.4.0 sends HEAD requests to huggingface.co, aistudio.baidu.com, modelscope.cn, and paddle-model-ecology.bj.bcebos.com at import. HF_HUB_OFFLINE=1 only partially works.</description>
      <pubDate>Sat, 05 Apr 2026 00:00:00 GMT</pubDate>
      <guid isPermaLink="false">paddleocr-reachability</guid>
    </item>
    <item>
      <title>crewai writes credential key at import</title>
      <link>https://hackmysupplychain.com/finding/crewai-credential-write</link>
      <description>crewai@1.13.0.dev writes an encryption key to ~/.local/share/crewai/credentials/secret.key at import, before any explicit setup.</description>
      <pubDate>Sat, 05 Apr 2026 00:00:00 GMT</pubDate>
      <guid isPermaLink="false">crewai-credential-write</guid>
    </item>
  </channel>
</rss>
