T09 · Insecure Skill Coding Practices
- Location
SKILL.md:360- Finding
Exposure and Insecure Handling of Reusable Confluence Session Cookies
- Content
View full analysis
&1 ``` The surrounding instructions direct the user to copy a complete browser cookie string, including `JSESSIONID`, `CONFLAuth`, and potentially other cookies, and provide it to the agent. ### Technical Analysis The skill handles reusable Confluence session credentials as plaintext input and then embeds them directly in PowerShell variables and `curl.exe` command-line arguments. This exposes the credentials to multiple unnecessary surfaces: - Conversation or agent execution history - Debugging and diagnostic logs - Shell transcripts and command history - Process command-line inspection - Child sessions created by the agent - Accidental inclusion in generated artifacts or error reports A complete session cookie may provide access equivalent to the authenticated user. Requesting all browser cookies also violates least-privilege principles because unrelated analytics, routing, or authentication cookies may be disclosed even when they are not necessary for the export. The use of HTTPS protects cookies while they are transmitted to Confluence, but it does not mitigate local plaintext exposure or disclosure through the agent context. ### Attack Path 1. A user signs in to a private Confluence deployment. 2. The skill instructs the user to copy reusable authentication cookies from browser storage. 3. The user submits the complete cookie string to the agent. 4. The agent places the cookie in a plaintext variable and supplies it as a command-line header to `curl.exe`. 5. A party with acce ...[truncated 955 chars]- Remediation
View remediation
