攻防世界-lottery

文章目录


  1. 打开网页显示:
    在这里插入图片描述
    显示是要买彩票,点一下其他链接发现这个:需要先注册账号才可以看到
    在这里插入图片描述
    这不就是表明需要我们进行获取足够的金钱,来买 flag 吗?

  2. 直接买一手彩票,抓个包分析一手:
    在这里插入图片描述
    在这里插入图片描述

    有的人回想我直接一手爆破不行?不行,这个买彩排需要钱初始20快钱,本人不辛,第一次乱搞直接就没钱了

  3. 乱看一堆后,这上面都没有啊,会不会是 SSTI 模板注入、XSS 、git 泄露啊?

    其他两种测试过后,发现没有,git 泄露的话扫一首目录,或者看一下上方的链接,使用御剑扫描目录,显示如下:

    在这里插入图片描述
    查看一下这个文件,对于这个文件 robots,txt 参考链接 查看一下发现:
    在这里插入图片描述
    这不是 GIT 泄露吗?直接使用 Githack 工具:
    在这里插入图片描述
    对得到的文件进行分析,发现在 api.php 中存在一个 buy 函数,这应该就是我们买彩票的时候使用的函数,进行分析的:

    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++;
    		}
    	}
    	switch ($same_count) {
    		case 2:
    			$prize = 5;
    			break;
    		case 3:
    			$prize = 20;
    			break;
    		case 4:
    			$prize = 300;
    			break;
    		case 5:
    			$prize = 1800;
    			break;
    		case 6:
    			$prize = 200000;
    			break;
    		case 7:
    			$prize = 5000000;
    			break;
    		default:
    			$prize = 0;
    			break;
    	}
    	$money += $prize - 2;
    	$_SESSION['money'] = $money;
    	response(['status'=>'ok','numbers'=>$numbers, 'win_numbers'=>$win_numbers, 'money'=>$money, 'prize'=>$prize]);
    }
    

    弱类型判断的总结

  4. 在我们上面对数据进行抓包后我们知道
    在这里插入图片描述
    因此抓包之后修改 numbers 变量为一个数组,其中的 7 个变量都是 true。放包之后就能够快速赚钱了,赚够钱后购买得到 flag。

{“action”:“buy”,“numbers”:[true,true,true,true,true,true,true]}

总结:

  1. 建议对所有的常见的漏洞进行一些总结,然后在打靶场的时候可以进行理论的分析
  2. 我们需要对 PHP == 和 === 的使用进行了解,这两个是非常大的出入点
  3. 建议拥有代码审计工具
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值