index.php
を見ると
・'
・/
・\
・|
が使えない。
1_scheme.sql
を見てテーブルの構造を確認する。
WHEREの条件がyears=years
になれば全件表示される。
よって、クエリパラムをyear=yearsにすればよい。
別解:
year=(1)OR(1)
でも任意のカラムでtrueになりOK
flag: FLAG{53cur3_5ql_a283b4dffe}
index.php
を見ると英数字以外の前に\
が追加される。
↑と同じ方法で通りそう。やってみたら通った。↑で別の解法が想定されていたっぽい。
flag: FLAG{5ql_ch4r_cf_ca87b27723}
dev toolのインスペクターなど、何らかの方法でhtmlを見るとコメントにflagがある。
flag: FLAG{you_can_read_html_using_devtools}
想定しているのはdev toolで金額を5000000000000000に書き換えるのだと思う。ただ、js中にflagがあるので、正直js見たほうが早い。
flag: FLAG{you_can_edit_html_using_devtools}
ディレクトリトラバーサルを使う。
../
がサニタイズされているが、サニタイズされた結果が目的の文字列になればよいので、fileを....//flag.txt
とかにすれば./memos/../flag.txt
になりOK。
flag: FLAG{y0u_c4n_get_hi5_5ecret_fi1e}
idが奇数のときにmemoのエスケープ処理がされていない。よって、idが奇数のmemoにscriptタグを仕込めばOK。
flag: FLAG{simple_cross_site_scripting}