CVE-2025-57754

9.8 CRITICAL

📋 TL;DR

The eslint-ban-moment ESLint plugin versions 3.0.0 and earlier expose a sensitive Supabase URI with embedded credentials in the .env file. This allows attackers to gain complete unauthorized access to the associated Supabase database, potentially leading to data theft, modification, or destruction. Anyone using the vulnerable versions of this plugin is affected.

💻 Affected Systems

Products:
  • eslint-ban-moment
Versions: 3.0.0 and earlier
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Vulnerability exists in the plugin's source code repository, affecting any deployment using the vulnerable versions.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete compromise of the Supabase database with exfiltration of all sensitive data, modification or deletion of database contents, and potential lateral movement to connected systems.

🟠

Likely Case

Unauthorized access to database leading to data exfiltration or manipulation of user data and application content.

🟢

If Mitigated

Limited impact if proper access controls, network segmentation, and credential rotation are implemented.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires access to the .env file containing the Supabase URI, which may be exposed through source code repositories, build artifacts, or misconfigured deployments.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.0.1

Vendor Advisory: https://github.com/kristoferfannar/eslint-ban-moment/security/advisories/GHSA-2486-4cjg-pw98

Restart Required: No

Instructions:

1. Update eslint-ban-moment to version 3.0.1 or later using npm: npm update eslint-ban-moment. 2. Verify the .env file no longer contains the Supabase URI. 3. Rotate all Supabase credentials immediately.

🔧 Temporary Workarounds

Remove Supabase URI from .env

all

Manually remove the exposed Supabase URI from the .env file and rotate credentials

# Edit .env file and remove SUPABASE_URL line
# Rotate Supabase credentials in Supabase dashboard

Restrict file permissions

linux

Set strict permissions on .env file to prevent unauthorized access

chmod 600 .env
chown root:root .env

🧯 If You Can't Patch

  • Immediately rotate all Supabase database credentials and API keys
  • Implement network segmentation to restrict database access to authorized IPs only

🔍 How to Verify

Check if Vulnerable:

Check package.json for eslint-ban-moment version 3.0.0 or earlier, and inspect .env file for exposed Supabase URI

Check Version:

npm list eslint-ban-moment

Verify Fix Applied:

Verify eslint-ban-moment version is 3.0.1 or later and .env file no longer contains Supabase credentials

📡 Detection & Monitoring

Log Indicators:

  • Unusual database access patterns from unexpected IP addresses
  • Failed authentication attempts followed by successful access

Network Indicators:

  • Database connections from unauthorized IP ranges
  • Unusual data export traffic patterns

SIEM Query:

source="supabase" AND (event_type="authentication" OR event_type="query") AND src_ip NOT IN [authorized_ips]

🔗 References

📤 Share & Export