Skip to content

Conversation

@jordan-dr
Copy link
Contributor

No description provided.

@jordan-dr jordan-dr closed this Apr 23, 2025
@jordan-dr jordan-dr reopened this Apr 23, 2025
@jordan-dr jordan-dr closed this Jun 12, 2025
@jordan-dr jordan-dr reopened this Jun 12, 2025
@dryrunsecurity
Copy link

dryrunsecurity bot commented Jun 12, 2025

DryRun Security

🔴 Risk threshold exceeded.

This pull request contains multiple critical security vulnerabilities, including hardcoded credentials in the database configuration file and a potential GraphQL authentication bypass that would allow unauthorized access to mutation endpoints.

Hardcoded Credentials in config/database.yml
Vulnerability Hardcoded Credentials
Description A hardcoded password 'lsjdfa8u4uqf' is directly embedded in the database configuration file. This poses a significant security risk as the password is easily discoverable by anyone with access to the source code. Hardcoded credentials can lead to unauthorized access if the password is not changed or if the configuration file is exposed.

# gem "sqlite3"
#
<% user = ENV.key?("POSTGRESQL_ADMIN_PASSWORD") ? "root" : ENV["POSTGRESQL_USER"] %>
<% password = "lsjdfa8u4uqf" %>
<% db_service = ENV.fetch("DATABASE_SERVICE_NAME","").upcase %>
default: &default
adapter: sqlite3

Code Policy: hardcoded-creds
Policy hardcoded-creds
Result Yes, this change adds a hard-coded credential in config/database.yml. A password value is directly hard-coded in the configuration file on line 6 where password is set to a static string value. Guidance: refer issues to the security team
Code Policy: graphql-auth-check
Policy graphql-auth-check
Result Yes, this change bypasses authentication by modifying the authorized? method in the BaseMutation class to always return true. Since BaseMutation is the base class for GraphQL mutations, this change would effectively disable authorization checks for all mutations that inherit from this class, allowing any user to access protected mutation endpoints regardless of their authentication status.

All finding details can be found in the DryRun Security Dashboard.

@jordan-dr jordan-dr closed this Jun 12, 2025
@jordan-dr jordan-dr reopened this Jun 12, 2025
@DryRunSecurity DryRunSecurity deleted a comment from dryrunsecurity bot Jun 12, 2025
@jordan-dr jordan-dr closed this Jun 12, 2025
@jordan-dr jordan-dr reopened this Jun 12, 2025
@jordan-dr jordan-dr closed this Jun 12, 2025
@jordan-dr jordan-dr reopened this Jun 12, 2025
@jordan-dr jordan-dr closed this Jun 12, 2025
@jordan-dr jordan-dr reopened this Jun 12, 2025
@jordan-dr jordan-dr closed this Jun 12, 2025
@jordan-dr jordan-dr reopened this Jun 12, 2025
@jordan-dr jordan-dr closed this Jun 17, 2025
@jordan-dr jordan-dr reopened this Jun 17, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants