lottery
php弱类型
git源码泄露
漏洞在 api.php
function buy($req)
{
require_registered();
require_min_money(2);
}
$money = $_SESSION['money'];
$numbers = $req['numbers'];
$win_numbers = random_win_nums();
$same_count = 0;
for($i=0; $i<7; $i++){
if($numbers[$i] == $win_numbers[$i]){
$same_count++;
}
}
其中 $numbers 来自用户json输入 {“action”:“buy”,“numbers”:“1111111”}
没有检查数据类型。
$win_numbers 是随机生成的数字字符串。
使用 PHP 弱类型松散比较,以"1"为例,和TRUE,1,"1"相等。 由于 json 支持布尔型数据,因此可以抓包改包,发送: