其他大佬的wp:http://www.safe-w22.com/index.php/archives/741 安卓之類的(zip)
https://url.cn/5PyIddy WEB題
2019掘安杯,某國家題:下載下載
我一開始= = 太naive,下載了這個藍色鏈接的文件,打開是這樣的。(大佬直接burp拿到flag文件)
雖然我完全是萌新,不過基礎操作還是會一點的。F12查看網頁源代碼。發現注釋了幾行。
右鍵藍色鏈接 復制鏈接,粘貼到地址欄,把txt改成php,下載php文件。
1 <?php 2 header('Content-Type: text/html; charset=utf-8'); //網頁編碼 3 function encrypt($data, $key) { 4 $key = md5 ( $key ); 5 $x = 0; 6 $len = strlen ( $data ); 7 $l = strlen ( $key ); 8 for($i = 0; $i < $len; $i ++) { 9 if ($x == $l) { 10 $x = 0; 11 } 12 $char .= $key {$x}; 13 $x ++; 14 } 15 for($i = 0; $i < $len; $i ++) { 16 $str .= chr ( ord ( $data {$i} ) + (ord ( $char {$i} )) % 256 ); 17 } 18 return base64_encode ( $str ); 19 } 20 21 function decrypt($data, $key) { 22 $key = md5 ( $key ); 23 $x = 0; 24 $data = base64_decode ( $data ); 25 $len = strlen ( $data ); 26 $l = strlen ( $key ); 27 for($i = 0; $i < $len; $i ++) { 28 if ($x == $l) { 29 $x = 0; 30 } 31 $char .= substr ( $key, $x, 1 ); 32 $x ++; 33 } 34 for($i = 0; $i < $len; $i ++) { 35 if (ord ( substr ( $data, $i, 1 ) ) < ord ( substr ( $char, $i, 1 ) )) { 36 $str .= chr ( (ord ( substr ( $data, $i, 1 ) ) + 256) - ord ( substr ( $char, $i, 1 ) ) ); 37 } else { 38 $str .= chr ( ord ( substr ( $data, $i, 1 ) ) - ord ( substr ( $char, $i, 1 ) ) ); 39 } 40 } 41 return $str; 42 } 43 44 $key="MyCTF"; 45 $flag="o6lziae0xtaqoqCtmWqcaZuZfrd5pbI=";//encrypt($flag,$key) 46 ?>
我沒學過php,直接看別的無關的php代碼,大概知道怎么輸出結果,修改了一下。
1 <?php 2 header('Content-Type: text/html; charset=utf-8'); //網頁編碼 3 function encrypt($data, $key) { 4 $key = md5 ( $key );//MyCTF: 5 $x = 0; 6 $len = strlen ( $data ); 7 $l = strlen ( $key ); 8 for($i = 0; $i < $len; $i ++) { 9 if ($x == $l) { 10 $x = 0; 11 } 12 $char .= $key {$x}; 13 $x ++; 14 } 15 for($i = 0; $i < $len; $i ++) { 16 $str .= chr ( ord ( $data {$i} ) + (ord ( $char {$i} )) % 256 ); 17 } 18 return base64_encode ( $str ); 19 } 20 21 function decrypt($data, $key) { 22 $key = md5 ( $key ); 23 $x = 0; 24 $data = base64_decode ( $data ); 25 $len = strlen ( $data ); 26 $l = strlen ( $key ); 27 for($i = 0; $i < $len; $i ++) { 28 if ($x == $l) { 29 $x = 0; 30 } 31 $char .= substr ( $key, $x, 1 ); 32 $x ++; 33 } 34 for($i = 0; $i < $len; $i ++) { 35 if (ord ( substr ( $data, $i, 1 ) ) < ord ( substr ( $char, $i, 1 ) )) { 36 $str .= chr ( (ord ( substr ( $data, $i, 1 ) ) + 256) - ord ( substr ( $char, $i, 1 ) ) ); 37 } else { 38 $str .= chr ( ord ( substr ( $data, $i, 1 ) ) - ord ( substr ( $char, $i, 1 ) ) ); 39 } 40 } 41 return $str; 42 } 43 44 $key="MyCTF"; 45 $flag="o6lziae0xtaqoqCtmWqcaZuZfrd5pbI=";// 46 $ans=encrypt($flag,$key); 47 print $ans; 48 ?>
直接用phpstudy myHomePage運行,莫得結果。
於是在隊長的指點下(其實是直接告訴我)。
把末尾的 encrypt改成decrypt...
得到flag. myCTF{cssohw456954GUEB}
接下來是看了其他人的wp,所以想要復現一下QAQ。
猜密碼
這個我看了源碼..但是我真的沒學過php啊。。。看了一會兒,能夠感覺它的簡單,但是並沒有做出來QAQ,還傻乎乎地輸了password 之類的,密碼錯誤
然后直接點擊,猜密碼(什么也不用輸入)
Flag:jactf{09fb10c51810d92e1b7405d143332886}
有一題。。回復公眾號