ログイン
編集不可のページディスカッション情報添付ファイル
"CTF/Writeup/tkbctf4/rand"の差分

MMA
2と3のリビジョン間の差分
2014-11-03 21:39:18時点のリビジョン2
サイズ: 614
編集者: ytoku
コメント:
2014-11-03 23:47:58時点のリビジョン3
サイズ: 615
編集者: ytoku
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 2: 行 2:
libv8のd8が動いていて,任意のJavaScriptを実行できる。すでに定義済みの関数gの内部にあるフラグ文字列を取り出す問題。 libv8のd8が動いていて,任意の!JavaScriptを実行できる。すでに定義済みの関数gの内部にあるフラグ文字列を取り出す問題。

rand (javascript 200)

libv8のd8が動いていて,任意のJavaScriptを実行できる。すでに定義済みの関数gの内部にあるフラグ文字列を取り出す問題。

主に夜間に作業した問題なので手元に環境を作るところから始まった。

g("throw getFlag")

を送信してフラグを得た。正攻法ではない気がする。

rand> g("throw getFlag")
undefined:1: function getFlag() {
    var FLAG = 'FLAG{7f94427ec6f49f70642d41c675b98832}';
    return floor(rand() * 100000) === 100000 ? FLAG : 'try again';
  }
throw getFlag

CTF/Writeup/tkbctf4/rand (最終更新日時 2014-11-03 23:47:58 更新者 ytoku)