KSNCTF #3 Crawling Chaos
問題
考えたこと
指定されたページに飛んだらフォームがあったのでとりあえずクリックしたら NG って言われたので、ソースを見たら異常な script タグがあった。
<script> (ᒧᆞωᆞ)=(/ᆞωᆞ/),(ᒧᆞωᆞ).ᒧうー=-!!(/ᆞωᆞ/).にゃー,(〳ᆞωᆞ)=(ᒧᆞωᆞ),(以下略) </script>
うーにゃーというのは這いよれニャル子さんというアニメのやつで、JavaScript ではなさそうだけど、type 指定されてないので、JavaScript っぽい。顔文字をコードに置き換えてるのかなぁという気がした。
No.2 がノーヒントで解けたのでノーヒントで解くぞと思って調子に乗ってたけど、Chromium の Developer tools で30分くらい粘ったけどわからなかったのでググった。
KSNCTF のヒント書いてるページを見つけたのでチラっと見た。
ksnctfに取り組んだ話 - ichirin2501's diary
気合いが足りないらしい。もう30分くらい粘ったけど何も得られなかったのでググった。
Firefox を使えというようなことを見たので、Firefox に切り替えたら2秒でもとの JavaScript っぽいのが見つかった。時代はFirefox!!Mozilla最高!!!
// 出てきたコードを勝手に整形した $(function(){ $("form").submit(function(){ var t=$('input[type="text"]').val(); var p=Array(70,152,195,284,475,612,791,896,810,850,737,1332,1469,1120,1470,832,1785,2196,1520,1480,1449); var f=false; if(p.length==t.length){ f=true; for(var i=0;i<p.length;i++) if(t.charCodeAt(i)*(i+1)!=p[i]) f=false; if(f) alert("(」・ω・)」うー!(/・ω・)/にゃー!"); } if(!f) alert("No"); return false; }); });
これくらいの JavaScript なら読めるので、答え出してくれるやつを、せっかくなので JavaScript で書いた。
https://github.com/sekai013/ksnctf/blob/master/crawling_chaos/crawlingChaos.js
走らせたらそのまま旗出てきたので通したら合ってた。
思ったこととか
Firefox 神!! Mozilla 最高!!!
いろんなツールあるんだから1つで詰まったら別のを使っていきたい!!! Chromium でもなんとかならないか頑張ってみたい!!