webhard
Sanchess
ASIS CTF
Task: read flag.txt from a Flask chess game with eval() injection filtered against parentheses, quotes, and underscores. Solution: use chr() to build strings without quotes, access builtins via getattr(__builtins__, chr-encoded name), and exfiltrate via binary search on the conditional move oracle.
$ ls tags/ techniques/
flaskfilter_bypasswerkzeugbinary_searchpython_evalchr_encodingblind_exfiltrationchess_gameapiendpointdiscoveryjson
eval_injectionfilter_bypass_with_chrgetattr_builtin_accessbinary_search_exfiltrationconditional_oracleendpoint_enumerationsource_code_analysis
🔒
Permission denied (requires tier.pro)
Sign in to access full writeups
Create a free account with GitHub, then upgrade to Pro.
$ssh [email protected]