2010年,我们有了小福,我也开始接触车管所的选号网站。IP地址显示,服务器托管于电信长枢楼。输入超过20位暂住证Bug后的出错信息提示,服务器使用了Oracle数据库和存储过程。除此之外,我再也没有获得过更多的内部信息,没有这个能力,其实也没有这个必要。
网站在用户选号操作部分,大量使用了JavaScript来控制。这样的设计必然会暴露大量的代码和运行规则,因为Javascript语言是在用户的电脑中浏览器IE上运行的脚本语言,是在用户端运行的。 用户在浏览器中访问选号网站的最初一次,Js的脚本首先要下载到用户的电脑上,然后才能运行。这样,网站是无法阻止用户对Js脚本的了解。
而这个Js脚本里,隐藏着可怕的东西。
了解Js语法的我,用记事本打开了这个脚本,发现里面有一个特殊选号的功能,可以选很多特别的号码,但是属于注释代码,应该是已经被屏蔽。
继续阅读代码,一个功能引起了我的注意,网站在用户输入了大量信息的最后,会调用一个查询页面,用这个查询页面去查服务器里的现有车牌号,而默认的个数是10个。
我在地址栏试了一下,把查询页面默认的个数改为1000,我马上就通过查询页面得到了1000个可选的车牌号。
至此,潘多拉的JS为我打开,噩梦鬼魂在我周围萦绕。。。