instreet-gomoku
Skill contains hardcoded API credentials and undeclared shell/network access with shadow functionality not reflected in documentation.
API key 'sk_inst_adfe55c5fe69ca780201cb466bebbbce' is hardcoded as a plaintext string in instreet_gomoku.py:12 and gomoku_bot.py:14. This exposes a live credential in source code, making it trivially extractable and vulnerable to revocation/reuse.
instreet_gomoku.py:12 为什么得出这个结论
3/4 个维度触发发现 2 项声明之外的能力或越权行为。
提取到 1 个高危 IOC 或外联信号。
报告包含 0 步攻击链,另有 1 项高危或严重发现。
发现 1 项需要关注的依赖或供应链线索。
风险分是怎么被拉高的
API key 'sk_inst_adfe55c5fe69ca780201cb466bebbbce' hardcoded in instreet_gomoku.py:12 and gomoku_bot.py:14 without secure storage
katagomo_simple.py:87 executes subprocess.Popen with external engine binary, not declared in SKILL.md
Makes outbound HTTPS requests to instreet.coze.site API but SKILL.md declares no network permissions
KATAGOMO_DIR hardcoded to D:\Games\KataGomo in katagomo_simple.py:15
最关键的证据
Hardcoded API credential in source code
API key 'sk_inst_adfe55c5fe69ca780201cb466bebbbce' is hardcoded as a plaintext string in instreet_gomoku.py:12 and gomoku_bot.py:14. This exposes a live credential in source code, making it trivially extractable and vulnerable to revocation/reuse.
instreet_gomoku.py:12 Undeclared subprocess shell execution
katagomo_simple.py:87-92 uses subprocess.Popen to execute the KataGomo game engine binary (gom15x_trt.exe) with GTP protocol commands. This shell execution is not mentioned anywhere in SKILL.md, which only describes KataGomo as a 'GTP bridge' without revealing the subprocess dependency.
katagomo_simple.py:87 Undeclared outbound network requests
SKILL.md declares no network permissions, yet both instreet_gomoku.py and gomoku_bot.py make HTTPS requests to instreet.coze.site/api/v1/games/* endpoints for room creation, move submission, and activity polling. This is shadow network behavior.
gomoku_bot.py:32 Hardcoded Windows-specific engine path
katagomo_simple.py:15 hardcodes KATAGOMO_DIR to 'D:\Games\KataGomo', a Windows-specific absolute path. The skill will fail on Linux/macOS with a confusing path error, and the dependency on an external binary is not documented.
katagomo_simple.py:15 API key exposed in SKILL.md notes section
SKILL.md:112 mentions the API key in plaintext within the documentation notes: 'API Key: 已配置在代码中 sk_inst_adfe55c5fe69ca780201cb466bebbbce'. While not a code-level hardcode, exposing the key in docs increases exposure risk.
SKILL.md:112 声明能力 vs 实际能力
No file write operations found; temp file ops are in subprocess working dir only instreet_gomoku.py:13-14, gomoku_bot.py:32-33 make urllib requests to instreet.coze.site without declaration katagomo_simple.py:87 subprocess.Popen executes external binary; gomoku_bot.py has no shell but katagomo does gomoku_bot.py:13 reads INSTREET_API_KEY from os.environ (falls back to hardcoded key) No skill_invoke usage No clipboard access No browser usage No database access 可疑产物与外联
API_KEY = 'sk_inst_adfe55c5fe69ca780201cb466bebbbce' instreet_gomoku.py:12
https://instreet.coze.site/api/v1/games gomoku_bot.py:32
https://instreet.coze.site/games/ gomoku_bot.py:359
依赖与供应链
| 包名 | 版本 | 来源 | 漏洞 | 备注 |
|---|---|---|---|---|
| numpy | unpinned | import | 否 | No requirements.txt; numpy imported but version not pinned |
| subprocess | stdlib | stdlib | 否 | Standard library used to execute KataGomo engine |
| urllib | stdlib | stdlib | 否 | Standard library used for HTTP API calls |
| KataGomo gom15x_trt.exe | unknown | external binary | 否 | External Windows binary referenced by hardcoded path; not included in package |
文件构成
instreet_gomoku.py gomoku_bot.py katagomo_simple.py SKILL.md