Trust Assessment
korail-test-1770333021 received a trust score of 40/100, placing it in the Untrusted category. This skill has significant security findings that require attention before use in production.
SkillShield's automated analysis identified 7 findings: 0 critical, 2 high, 5 medium, and 0 low severity. Key findings include Unsafe deserialization / dynamic eval, Missing required field: name, Suspicious import: requests.
The analysis covered 4 layers: Manifest Analysis, Static Code Analysis, Dependency Graph, LLM Behavioral Safety. The LLM Behavioral Safety layer scored lowest at 63/100, indicating areas for improvement.
Last analyzed on February 14, 2026 (commit 13146e6a). SkillShield performs automated 4-layer security analysis on AI skills and MCP servers.
Layer Breakdown
Behavioral Risk Signals
Security Findings7
| Severity | Finding | Layer | Location | |
|---|---|---|---|---|
| HIGH | Hardcoded Korail Account Credentials The skill scripts `cancel.py`, `search.py`, and `watch.py` contain hardcoded default Korail ID and Password (`0650620216`, `fly*2015`) which are used if the corresponding environment variables (`KORAIL_ID`, `KORAIL_PW`) are not set. This poses a significant security risk as these credentials could be exposed or used by unauthorized parties. Remove hardcoded default credentials. Require users to provide credentials via secure environment variables or a dedicated secrets management system. | LLM | scripts/cancel.py:10 | |
| HIGH | Hardcoded Telegram Bot Token and Chat ID The `scripts/watch.py` file contains a hardcoded Telegram bot token (`8395240435:AAHKORT3i8CCNYKoDrO73yUv2J4HvWZi-3k`) and chat ID (`64425314`). If the `TELEGRAM_BOT_TOKEN` and `TELEGRAM_CHAT_ID` environment variables are not set, these defaults will be used. This exposes the bot token, which could be used to send messages via the bot or potentially access bot-related information. Remove hardcoded default Telegram bot token and chat ID. Require users to provide these via secure environment variables or a dedicated secrets management system. | LLM | scripts/watch.py:32 | |
| MEDIUM | Unsafe deserialization / dynamic eval Decryption followed by code execution Remove obfuscated code execution patterns. Legitimate code does not need base64-encoded payloads executed via eval, encrypted-then-executed blobs, or dynamic attribute resolution to call system functions. | Manifest | skills/lonehades/korail-test-1770333021/lib/korail2/korail2.py:20 | |
| MEDIUM | Missing required field: name The 'name' field is required for claude_code skills but is missing from frontmatter. Add a 'name' field to the SKILL.md frontmatter. | Static | skills/lonehades/korail-test-1770333021/SKILL.md:1 | |
| MEDIUM | Suspicious import: requests Import of 'requests' detected. This module provides network or low-level system access. Verify this import is necessary. Network and system modules in skill code may indicate data exfiltration. | Static | skills/lonehades/korail-test-1770333021/lib/korail2/korail2.py:10 | |
| MEDIUM | Suspicious import: requests Import of 'requests' detected. This module provides network or low-level system access. Verify this import is necessary. Network and system modules in skill code may indicate data exfiltration. | Static | skills/lonehades/korail-test-1770333021/scripts/watch.py:5 | |
| MEDIUM | Potential Data Exfiltration via Telegram Alerts The `scripts/watch.py` skill sends reservation success/failure messages to a Telegram chat using `requests.post`. While the messages themselves are not highly sensitive, the use of a hardcoded Telegram bot token and chat ID (as identified in a separate finding) means that if these credentials are compromised or the bot is used maliciously, information about train reservations (departure/arrival, date, train type) could be exfiltrated to an unauthorized party. Securely manage the Telegram bot token and chat ID (as per the remediation for SS-LLM-004). Ensure that only necessary and non-sensitive information is sent via external communication channels. | LLM | scripts/watch.py:16 |
Scan History
Embed Code
[](https://skillshield.io/report/b32915938076a629)
Powered by SkillShield