5
代码审计::
<?php
if(isset($_GET['v1']) && isset($_GET['v2']) && isset($_GET['v3'])){
$v1 = $_GET['v1'];
$v2 = $_GET['v2'];
$v3 = $_GET['v3'];
if($v1 != $v2 && md5($v1) == md5($v2)){
if(!strcmp($v3, $flag)){
echo $flag;
}
}
}
?>
这个难度不是很大,主要考察的是md的校验,还有strcmp函数问题
strcmp函数的话使用数据的方式进行绕过;;
md5校验使用校验后都是0e开头的方式进行;;PHP在处理哈希字符串的时候,它把每一个以0e开头的哈希值都解析为0。