T09 · Insecure Skill Coding Practices
- Location
src/utils/request.js:76- Finding
API Credential Exposure Through URL Query Parameters
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
The skill appears to perform Xiaohongshu data collection as described, but it handles its API token and saved result files in ways users should review before installing.
Install only if you are comfortable sending Xiaohongshu keywords, links, xsec_token-bearing URLs, and a Guaikei API token to www.guaikei.com. Treat the API token as sensitive, rotate it if exposed, and review or delete the generated logs directory after use, especially in shared workspaces or repositories.
src/utils/request.js:76API Credential Exposure Through URL Query Parameters
src/utils/log.js:5Automatic Persistent Storage of Complete API Results Without Explicit Consent or Restrictive Permissions
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
If the implementation is keyword search plus filtering and logging, but the manifest says it is only for pasted-link routing, then the skill's activation surface is broader than disclosed. Broader-than-declared input handling can result in unnecessary externalization of user prompts and search terms.
Referenced artifact was not completely inspected
- "分析这条小红书笔记评论区的主要观点和负面反馈: node src/xiaohongshu/detail-cli.js --url 'https://www.xiaohongshu.com/explore/xxx?xsec_token=yyy' --limit 100"
Referenced artifact was not completely inspected
- "分析这条小红书笔记评论区的主要观点和负面反馈: node src/xiaohongshu/detail-cli.js --url 'https://www.xiaohongshu.com/explore/xxx?xsec_token=yyy' --limit 100"
Referenced artifact was not completely inspected
- "分析这条小红书笔记评论区的主要观点和负面反馈: node src/xiaohongshu/detail-cli.js --url 'https://www.xiaohongshu.com/explore/xxx?xsec_token=yyy' --limit 100"
Referenced artifact was not completely inspected
- "分析这条小红书笔记评论区的主要观点和负面反馈: node src/xiaohongshu/detail-cli.js --url 'https://www.xiaohongshu.com/explore/xxx?xsec_token=yyy' --limit 100"
Referenced artifact was not completely inspected
- "分析这条小红书笔记评论区的主要观点和负面反馈: node src/xiaohongshu/detail-cli.js --url 'https://www.xiaohongshu.com/explore/xxx?xsec_token=yyy' --limit 100"
Referenced artifact was not completely inspected
- "分析这条小红书笔记评论区的主要观点和负面反馈: node src/xiaohongshu/detail-cli.js --url 'https://www.xiaohongshu.com/explore/xxx?xsec_token=yyy' --limit 100"
Referenced artifact was not completely inspected
- "看这个小红书博主最近 20 条作品都在发什么: node src/xiaohongshu/post-cli.js --url 'https://www.xiaohongshu.com/user/profile/xxx?xsec_token=yyy' --limit 20"
Referenced artifact was not completely inspected
- "看这个小红书博主最近 20 条作品都在发什么: node src/xiaohongshu/post-cli.js --url 'https://www.xiaohongshu.com/user/profile/xxx?xsec_token=yyy' --limit 20"