Use of Hard-coded, Security-relevant Constants
The product uses hard-coded constants instead of symbolic names for security-critical values, which increases the likelihood of mistakes during code maintenance or security reviews.
Hard-coded values make code harder to understand and maintain. When security-relevant values are hard-coded, it increases the risk of errors when the code needs to be modified.
この脆弱性の修正方法
2 件の Shoulder 検出ルールに基づく Hardcoded Security Constants の予防策。
Use environment variables for URLs with localhost as a development fallback
- const API_URL = 'http://localhost:3000'; + const API_URL = process.env.API_URL || 'http://localhost:3000'; const response = await fetch(`${API_URL}/users`);
Load URLs from environment variables with localhost as the development fallback
- API_URL = "http://localhost:3000/api" - DB_HOST = "127.0.0.1" + import os + + API_URL = os.getenv('API_URL', 'http://localhost:3000/api') + DB_HOST = os.getenv('DB_HOST', 'localhost') def fetch_data(): response = requests.get(f'{API_URL}/data') return response.json()
主要なプラクティス
- Use environment variables
- configurable via environment variables
コードの脆弱性を見つける
Shoulderを使用してコードのUse of Hard-coded, Security-relevant Constantsパターンをスキャンしましょう。 2 ルール.
# Scan with Shoulder CLI npx @shoulderdev/cli trust --cwe=547 # Or scan entire project npx @shoulderdev/cli trust .
検出ルール (2)
コードレビューで注目すべき点
これらのパターンはUse of Hard-coded, Security-relevant Constantsの潜在的な脆弱性を示しています。コードレビューとセキュリティ監査中に探してください。
コードベースをスキャン: Use of Hard-coded, Security-relevant Constants
Shoulder CLI はコードベース全体から脆弱なパターンを見つけます。