まず、ソースコードを確認してください。。。ノー事、霊妙
何も見つかりませんが、右側にヒントがあるヒント:IP、大規模な内部ネットワーク(最大のネットワーク IP )
私たちは、これが単純で、直接的ではない、偽のコードアクセスする必要があるかもしれませんリクエストで参加します
X-転送さ-の場合:10.0.0.0
偽造するために、 IPを
行くの発見についての要求新しいファイルがあるバー
ファイル名をコピーし、新しい作成する権限リピータアクセスしようとします
変更 GETのURLのファイルにアクセスするためのバー
弹出私にあなたのキーを表示
従来の考え方は、直接である GETのバーの着信
行く何の反応を見ていません。。。。試してみてくださいPOST 着信を
右要求列選択モード変更要求
直接に POST 、合格GO 見えます
プロンプトが表示され
私たちの鍵は正しい、正しくないキーがあるMD5 はい。。。。。そして、このキー形式は*** ichunqiu (* 範囲...)
ここでは、(努力を続けるスクリプトブラストを書くことができます *** あなたが翻訳できるかどうかを確認するためにも直接行くことができる組み合わせ)
入ってくるに戻って取得するには
次のステップを取得するためのヒント
PHP ファイル、直接アクセスしてみてください
与えられた次のステップのヒント
この暗号化源である x0.txt 暗号化されていること、その後フラグをはい。。。。。
私たちは、直接アクセス x0.txtを
本当に暗号化プロセスであります
彼によると、暗号化処理は、復号化されたスクリプトを記述するために逆転されます
<?PHPの 関数 AUTHCODE($文字列、$操作 = 'DECODE'、$キー = ''、$有効期限 = 0 ){ $のckey_length = 4 。 $キー = MD5($キー?キー$:UC_KEY); $のKEYA = MD5(SUBSTR($キー、0、16 )); $ KEYB = MD5(SUBSTR($キー、16、16 )); $ KEYC = $ ckey_length?($操作 == 'DECODE'?SUBSTR($文字列、0、$のckey_length):SUBSTR(MD5(のmicrotime())、 - $のckey_length)): '' ; $ cryptkey = $ KEYA。MD5($のKEYA。$ KEYC )。 $ key_length = strlen関数($のcryptkey )。 $文字列 = $操作 == 'DECODE'?BASE64_DECODE(SUBSTR($文字列、$のckey_length)):sprintf( '%の010D'、$有効期限?$満了 + 時間():0)。SUBSTR(MD5($文字列。$ KEYB)、0、16)。$文字列。 $ STRING_LENGTH = strlen関数($文字列); $結果 = '' ; $ボックス = 範囲(0、255 ); $ rndkey = 配列(); 以下のために($ I = 0; $ iが 255 = <; $ iは ++ ){ $のrndkeyの [$ I ] = ORD($ cryptkey [ $ I%の$のkey_length ])。 } ため(の$ J = $ I = 0; $ iが 256 <; $ iは ++ ){ $ jを =($ jの +の$ボックス [ $ I ] + $ rndkey [ $ I ])%256 。 $ TMP = $ボックス [ $ I ]; $ボックス [ $ I ] = $ボックス [ $ jを]; $ボックス[ $ jの ] = $ TMP ; } のために($ A = $ J = $ I = 0; $ iが < $ STRING_LENGTHを、$ iが ++ ){ $ =($ Aを + 1)%256 。 の$ J =($ jの +の$ボックス [ $ A ])%256 。 $ TMP = $ボックス [ $ A ]; $ボックス [ $ A ] = $ボックス [ $ jを]; $ボックス[ $ jの ] = $ TMP ; $結果 = CHR(ORD($文字列 [ $ I ])^($ボックス [($ボックス [ $ A ] + $ボックス [ $のJ ])%256 ]))。 } もし($操作 == 'DECODE' ){ もし、((SUBSTR($結果、0、10)== 0 || SUBSTR($結果、0、10) - 時間()> 0)&& SUBSTR($結果、10、16)==のSUBSTR(MD5(SUBSTR($結果、26)。$のKEYB)、0、16 )){ 戻り SUBSTR($結果、26 )。 } 他{ 戻り '' ; } } 他{ リターン の$ KEYC。str_replace( '='、 ''、BASE64_ENCODE($結果)); } } エコー AUTHCODE($文字列= '5f04rJx7uHz25mDp4vUfC0JB4Nx5nMvyQzHwjRb6kN88N + T9RRipbwbHDIcRWtqXjemcJit26oE1Vu6lpdQPZ6St / obCAEc'、$操作 = 'DECODE'、$キー = 'ichunqiu105' ); ?>
(バックコンタクト暗号文の文字列)
取得するローカル実行フラグを