HighA02:2025CWE-489Configuration

Debug Endpoints Exposed

Development and debugging endpoints left accessible in production can expose application internals, configuration details, database connections, environment variables, and provide direct access to application functionality.

Overview

Many frameworks include powerful debugging tools (Django debug toolbar, Flask debugger, Spring Actuator, Express error handler) that provide detailed application internals. When left enabled in production, these endpoints can expose source code, environment variables, database connections, and sometimes even provide interactive code execution consoles.

Impact

Remote code execution (debug consoles), information disclosure, configuration exposure, database access.

Examples

Common Debug Endpoints

/debug
/console
/actuator
/elmah.axd
/__debug__/
/phpinfo.php
/.env

Remediation

Remove all debug endpoints before deployment, use environment-based configuration to disable debug features, implement authentication for any necessary diagnostic endpoints.

Disable all debugging features in production

Use environment variables to control debug mode

Implement deployment checklists that verify debug is disabled

Monitor for accidental debug endpoint exposure

Related SuperClue scanner checks

These scanner checks look for signs of Debug Endpoints Exposed. What a scan can confirm from outside depends on your application.

Debug Endpoint DiscoveryDevelopment Feature Detection

Scan a domain you have verified with up to 350 modules, paid in credits.

See how website scanning works

References

Related Vulnerabilities