Invalid URL generation in bitlyshortenerGHSA-rcrv-228c-gprj
Fix: impredicative/bitlyshortener@b307d70GHSA-rcrv-228c-gprj is a security vulnerability in bitlyshortener. A fix is available for bitlyshortener — see the affected versions and patch details below.
Real-World Exposure
bitlyshortenerReal-time download stats are indexed for npm and PyPI packages. This vulnerability affects PyPI packages — download data is not available via public APIs for these ecosystems.
Description
Impact
Due to a sudden upstream breaking change by Bitly, versions of bitlyshortener <0.6.0 generate invalid short URLs. All users are affected and must update immediately.
Patches
Upgrading bitlyshortener to 0.6.0 or newer will prevent the generation such invalid short URLs.
Workarounds
A workaround is to replace "https://j.mp/" in each generated short URL with "https://bit.ly/".
References
Affected Packages
| Ecosystem | Package | Vulnerable range | Fix |
|---|---|---|---|
| 🐍PyPI | bitlyshortener | all versions | 0.6.0pip install --upgrade 'bitlyshortener==0.6.0' |
Detection & mitigation playbook
Open-source dependencyDetect
Scan your dependency tree (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, etc.) for bitlyshortener, including transitive dependencies — a direct dependency you never call can still pull in a vulnerable version.
Fix
Update bitlyshortener to 0.6.0 or later, then make sure no transitive (indirect) dependency still pins the vulnerable range — O3 confirms GHSA-rcrv-228c-gprj is resolved across your whole dependency graph.
Workarounds
If you can't upgrade right away: gate or disable the affected feature, validate untrusted input at the boundary, and avoid passing attacker-controlled data into the vulnerable path. O3's runtime protection blocks exploitation in production as an interim safeguard until the upgrade lands.
Frequently Asked Questions
Is GHSA-rcrv-228c-gprj in your dependencies?
Find it across PyPI, including transitive dependencies.