Blog
Package Firewall: Blocking 8,000+ malicious packages daily
Published:
Jun 9, 2026Updated:
Jun 10, 2026The Replit Team
Replit already scans your projects for vulnerable dependencies, and audits your dependencies before you publish. But risk shows up earlier than that, while you are developing, the moment a malicious package gets installed.
Today we're launching Package Firewall, in partnership with Socket (a software supply-chain security company) . Package Firewall blocks malicious and compromised packages from ever being installed into your app, even while you are building. This network-level security protection eliminates any window for malware to be installed into your project. It's on by default for every builder, with nothing to set up.
Since rolling out a week ago, Package Firewall has been blocking around 8,000 packages per day across builders on Replit. Over the course of a year, millions of vulnerable package installs will be blocked, leaving builders and their users safer:
“Replit is helping define how the next generation of software gets built, with AI agents working alongside developers to create and ship applications faster. That makes install-time security more important than ever. By partnering with Replit, Socket is enabling builders to move quickly while keeping malicious packages out of the development workflow and stopping supply chain attacks before a single line of malicious code runs." — Feross Aboukhadijeh, CEO, Socket
How it works
When you or the Agent run an install command like npm install or pip install to install a new dependency, the request passes through Package Firewall. If the package is clean, the install runs as usual and you won't notice a thing. If Socket has flagged the package as malicious or compromised, the install is blocked before any code reaches your environment.
When something is blocked, you get a clear message about what was stopped and why, with a link to Socket's findings for that package. The Agent sees the same signal, so it can suggest a safe alternative, like fixing a misspelled package name, or hand the decision back to you.

Blocking packages at install time is critical for a particular class of vulnerabilities, called malware. Most supply-chain tools only scan dependencies at publish time, long after a package has already been installed into your project. For ordinary vulnerabilities that may be fine, but malware is different: it does its damage the instant it's installed, stealing secrets, opening backdoors, or exfiltrating your environment variables. By the time a publish-time scan flags it, the attack has already run.
What we're seeing in blocked packages
The packages blocked most often are not obscure, they are the workhorses of modern codebases: form-data, protobufjs, handlebars, fast-xml-parser, jspdf, grpc-go, pgx. The flagged versions carry verified critical and high severity vulnerabilities spanning remote code execution, path traversal, authorization bypass, prototype pollution, and denial of service.
The overwhelming majority of these advisories were disclosed in 2025 and 2026, after the training cutoff of the models recommending them. LLMs confidently suggest dependency versions that were genuinely known-good in their training data but have since been disclosed as vulnerable. In the most extreme case we saw a model reaching for a package that doesn't exist as a real dependency, and resolved to a malware placeholder, hallucinating a package that should never be installed at all.
These ways bad packages can be installed, even by LLMs, have names in the field:
- Typosquats: a malicious package with a name one keystroke away from a real one (
reqeustsinstead ofrequests). You explicitly ask for a download of the wrong package. - Slopsquats: LLMs sometimes hallucinate a package name that doesn't exist; attackers register that exact name and wait for the next agent to install it.
- Stale recommendations: a real package with a disclosed vulnerability, that the AI recommends because it was known-good before its training cutoff.
This is just the start
Package Firewall is one part of Replit Auto-Protect, the set of protections we turn on by default for every organization, alongside Security Agent and Security Center.
Moving forward, we'll keep investing in tooling that protects builders by default, right as they're developing their apps. This complements the protections we already offer before you publish, like Security Agent and our pre-publish security review.

More
Sep 10, 2026Databricks Integration is Now Available with Native Lakebase Support
The Replit | Databricks integration gives enterprise teams a faster path to utilizing governed data for production-ready applications. Today, we’re excited to announce the integration is generally available alongside a new capability: native Databricks Lakebase support. This builds on the foundation introduced from our public preview announcement this past June. The result is one seamless path from idea to production: Replit accelerates application creation, while Databricks hosts and provides governed access and security to live enterprise data. Through Lakebase, Databricks also delivers a managed database for storing and updating application data. With native Lakebase support, teams can build full-stack, context-rich apps that combine live Databricks warehouse data with information created and updated through the app. When an app built with Replit is ready to deploy, Replit Agent automatically provisions its Lakebase database, eliminating the need for manual setup. New Capabilities for a Faster, Safer Launch Automated Preview Deploys: Test your apps before they go live. Replit automatically creates a separate preview environment that keeps test data isolated from live business data in Databricks, giving teams a safe place to build, review changes, and make adjustments.
Jul 29, 2026Introducing Replit Design
The next era of design, for everyone
Jun 17, 2026Replit is now available in Claude
Replit is now available directly inside Claude, making it easier than ever to go from a conversation to a fully built, shipped product - without losing context, in one seamless workflow. Design in Claude, Build in Replit You can now design on-brand, beautiful apps in Claude Design using natural language. Once your design is ready, send it directly to Replit to continue building, refining, and shipping your app—all through natural language and in one seamless workflow. No copy-pasting, no context switching, no friction. Delegate Any Task to Replit