欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

危险的验证码 –12306.cn曾经犯下的错误

程序员文章站 2022-05-09 13:15:25
...

春运期间,网上出现一个刷票的插件, 为我们买票提供了太多的便利。 用刷票软件进行刷票, 验证码还是要输入一次的,输入完验证码之后, 便可以使用自动提交订单直至订票成功, 免去了我们失败一次又一次重试之苦。 这一切都是利用了网站验证码的漏洞, 验证

春运期间,网上出现一个刷票的插件, 为我们买票提供了太多的便利。

用刷票软件进行刷票, 验证码还是要输入一次的,输入完验证码之后, 便可以使用自动提交订单直至订票成功, 免去了我们失败一次又一次重试之苦。 这一切都是利用了网站验证码的漏洞, 验证码验证通过之后没有马上更新, 所以下次请求继续使用这个验证码就行了。

危险的验证码 –12306.cn曾经犯下的错误


上 Demo 喽:

----------------------------------------模拟12306-----------------------------------------------------------

危险的验证码 –12306.cn曾经犯下的错误

--------------------------------------------------模拟刷票----------------------------------------------------------------------------

";
			curl_close($ch);
			sleep(rand(1,3));
		}
	}
}

运行结果, 有图有真相:

危险的验证码 –12306.cn曾经犯下的错误

危险的验证码 –12306.cn曾经犯下的错误

只输入一次验证码, 就可以无限的刷票了!!!

解决的办法, 很简单: 在Session验证通过之后直接把 $_SESSION['vcode'] 干掉!!!

危险的验证码 –12306.cn曾经犯下的错误


测试代码下载

声明: 本文采用 CC BY-NC-SA 3.0 协议进行授权

转载请注明来源:小景的博客

本文链接地址:http://www.phpv5.com/blog/vcod