T09 · Insecure Skill Coding Practices
- Location
scripts/garmin-auth.py:36- Finding
Garmin Account Password Stored with Reversible Base64 Encoding and Exposed Through Command-Line Arguments
- Content
View full analysis
[--cn]") print("\nExamples:") print(" Global account: python3 garmin-auth.py user@example.com password123") print(" China account: python3 garmin-auth.py user@qq.com password123 --cn") sys.exit(1) email = sys.argv[1] password = sys.argv[2] is_cn = "--cn" in sys.argv ``` ```python # scripts/garmin-sync.py:21-38 def load_credentials(): """Load saved Garmin credentials""" import base64 session_file = Path.home() / ".garth" / "session.json" if not session_file.exists(): print(f"❌ No credentials found at {session_file}") print("\nRun: python3 garmin-auth.py [--cn]") return None try: with open(session_file, 'r') as f: creds = json.load(f) # Decrypt password if 'password_encrypted' in creds: ...[truncated 2461 chars]- Remediation
View remediation
