通过查看陕西省普通话成绩查询网站http://www.sxpth.cn/的源码发现直接将考生列表放在了前端JS代码中,里面包含考生的姓名、身份证号、证书编号,以及考试成绩和个人照片,总共405条数据暴露在源代码中,完全没有后台。
浏览器打开网址,右键检查查看元素,或者直接右键查看网站源代码,可以看到head标签内,在js标签内可以看到<script language="javascript" type="text/javascript">
查看代码如下:
<script language="javascript" type="text/javascript">
function check()
{
var 姓名 = document.all.姓名.value;
var 身份证号 = document.all.身份证号.value;
var 证书编号 = document.all.证书编号.value;
/*
下面判断用户输入的用户名从而跳转到特定的页面
判断如果用户名是hello的话。跳转到aa.asp当然随便什么页面,自己设定好
*/
if(0==姓名 || 0==身份证号 || 0==证书编号)
{
location='wrong.htm';
}
...泄露数据代码块...
else
{
//如果输入的不是hello,那么跳转到百度。总之,你说不可以用asp也就是服务器脚本只能弄个客服端了
location='查无此人.htm';
}
}
</script>
从上面的代码框架在百度中找到2009年的一个问题与这个代码基本上一样,传送门 https://zhidao.baidu.com/question/119639957.html
从check函数名到 var变量赋值语句都是一样的 甚至还是用的中文变量名,连中文注释都没改。
更让人震惊的是,通过代码中的成绩htm页面,可以看到每个人的成绩,同时用户的照片也被泄露
这让圈内的技术人员目瞪口呆,称这是哪位学生的课后作业,连百度都没学好,有的嘲讽这是真正的无服务架构,没有后台,没有数据库。
建议平台尽快关闭整改,不要在把这些工作外包给老师,然后老师随便找个学生做了。