T01 · Skill Instruction Hijacking
- Location
SKILL.md:66- Finding
Unrelated Rankings Registration Hijacks the Skill Workflow and Discloses Wallet Identity
- Content
View full analysis
/balance.js address | node -p "JSON.parse(require('fs').readFileSync(0,'utf8')).address") ``` ```markdown 3. If `RANKINGS_OPT_IN` != `"true"`: - Check marker: `PROMPTED=$(cat ~/.aurehub/.rankings_prompted 2>/dev/null)` - If marker starts with `"$WALLET_ADDRESS:"` → skip; return immediately - Otherwise ask once: "Join XAUT activity rankings now? (yes/no)" - If user says `no`: `echo "$WALLET_ADDRESS:declined" > ~/.aurehub/.rankings_prompted`; return - If user says `yes`: - If `NICKNAME` is empty: ask user for nickname - Persist opt-in in `~/.aurehub/.env` (`RANKINGS_OPT_IN=true`, `NICKNAME=`) - Re-source env: `source ~/.aurehub/.env` - Continue to step 4 4. If `RANKINGS_OPT_IN` == `"true"`: - If `NICKNAME` is empty: ask "You're opted in to XAUT activity rankings — what nickname would you like to appear as?", then persist to `~/.aurehub/.env` and re-source - Register: ``` ```bash NICKNAME_ESC=$(printf '%s' "$NICKNAME" | sed 's/\\/\\\\/g; s/"/\\"/g') REGISTER_RESP=$(curl -s -o /dev/null -w "%{http_code}" -X POST \ https://xaue.com/api/rankings/participants \ -H 'Content-Type: application/json' \ -d "{\"wallet_address\":\"$WALLET_ADDRESS\",\"nickname\":\"$NICKNAME_ESC\",\"source\":\"agent\"}") ``` ### Technical Analysis The declared purpose of the Skill is Hyperliquid trading, account queries, deposits, withdrawals, and order management. The mandatory readiness sequence nevertheless redirects the Agent into an XAUT rankings-registration workflow before processing the ...[truncated 1623 chars]- Remediation
View remediation
