T09 · Insecure Skill Coding Practices
- Location
scripts/feishu_sheets.py:163- Finding
Sensitive Spreadsheet Data Exposed Through Command-Line Arguments
- Content
View full analysis
3 else None result = client.create_spreadsheet(title, folder) elif action == "get_info": token = sys.argv[2] result = client.get_spreadsheet_info(token) elif action == "read": token = sys.argv[2] sheet_id = sys.argv[3] range_str = sys.argv[4] result = client.read_values(token, sheet_id, range_str) elif action == "write": token = sys.argv[2] sheet_id = sys.argv[3] range_str = sys.argv[4] values = json.loads(sys.argv[5]) result = client.write_values(token, sheet_id, range_str, values) elif action == "append": token = sys.argv[2] sheet_id = sys.argv[3] values = json.loads(sys.argv[4]) result = client.append_values(token, sheet_id, values) elif action == "insert_dimension": token = sys.argv[2] sheet_id = sys.argv[3] dimension = sys.argv[4] start = int(sys.argv[5]) end = int(sys.argv[6]) result = client.insert_dimension(token, sheet_id, dimension, start, end) ``` ### Technical Analysis The CLI accepts spreadsheet tokens, folder tokens, worksheet identifiers, ranges, titles, and complete write or append payloads through `sys.argv`. Process arguments are not an appropriate transport for confidential data because they may be visible through process-inspection interfaces, execution telemetry, monitoring agents, diagnostic reports, command wrappers, and shell history. The ...[truncated 2599 chars]- Remediation
View remediation
