1. 程式人生 > 實用技巧 >web手嘗試解密(水文章)

web手嘗試解密(水文章)

  閒的沒事去刷了一下攻防世界做了一道web逆向(?????)

  開啟題目得到原始碼:

  

 1 <?php
 2 $miwen="a1zLbgQsCESEIqRLwuQAyMwLyq2L5VwBxqGA3RQAyumZ0tmMvSGM2ZwB4tws";
 3 function encode($str){
 4     $_o=strrev($str);
 5     // echo $_o;
 6 
 7     for($_0=0;$_0<strlen($_o);$_0++){
 8 
 9         $_c=substr($_o,$_0,1);
10         $__=ord
($_c)+1; 11 $_c=chr($__); 12 $_=$_.$_c; 13 } 14 return str_rot13(strrev(base64_encode($_))); 15 } 16 17 /*highlight_file(__FILE__);*/ 18 /* 19 逆向加密演算法,解密$miwen就是flag 20 */ 21 ?>

  搞得跟真的一樣。。。於是去問(調戲)了一下20000s師傅

  分析一下程式碼:顯然$miwen是由下面的function encode加密成的,原文就是flag,所以我們要去把原文逆出來。

  實際上encode的過程十分簡單:

  將原文反轉,每個字元替換成該字元ascii