最近俺经常活跃于QQ群中,和一个哥们比较熟悉,据说他是网赚高手中的高手,每次QQ群聊,大家只有听他的份,因为我们都不懂得如何利用网站赚钱,只有他是老手,大家都喜欢听他“讲课”;
他是一个爱做网站生意的人,因为他之前干过推销、促销等等,反正与销这个字相关的活计都干过!
但技术方面他实在是一窍不通啊!
前天晚上,他忽然停止了讲课,说是他的网站被人挂马了……
啥情况呢,俺打开他的网站看看,果然,输入的是他的网站地址,标题和域名均未有任何变化,唯一变的就是网站的内容,显示的是别人的,不是他的!
这下他可急坏了,他的网站流量相当大,一旦被挂马损失可不小耶!
俺问他,是否网页文件多出了Frame之类的代码,是否多出了莫名其妙的js文件?
还好,他也懂点小小的技术,说是多出来了,多出来的部分已删除,可是过不了多久又出现这些代码了!
这就让他防不胜防了,也让他无计可施!
他让俺帮助他看看是啥原因!
俺问他,你的网站程序是否是自助型的程序,使用啥数据库,是否带了上传功能?
经过了解,他的网站是ASP类型的,使用ACCESS数据库,并且有一项功能可以上传文件!
初步分析,俺敢断定是上传出现的漏洞!
俺接到他发来的上传文件的源代码,仔细查看,原来情况是这样的:
有一个网页的名称是:sub_upload.asp
其中上传的部分代码是这样的:
elseif fileformat=".asp" or fileformat=".exe" or fileformat=".txt" or fileformat=".htm" then
response.write"<script>alert('文件格式不对,请重新上传!');location='"&request.ServerVariables("HTTP_REFERER")
有一点点网页制作基础的人一看就能明白,上面的代码是判断文件扩展名,符合条件者允许上传;
这样一来,根据上面的代码,只禁止ASP,EXE,TXT,HTM等文件不能上传,其他一律能上传!
别人挂他的马,就是通过上传ASA和JS文件来实现的!
问题找到了,得解决这个问题!
下面俺给他提供将解决办法是,只能上传规定的文件类型,其他的文件一概禁止上传!
将上面代码改为如下代码即可:
if fileformat=".gif" or fileformat=".jpg" then
else
response.write"<script>alert('文件格式不对,只能上传gif和jpg图片,谢谢合作,请重新上传!');location='"&request.ServerVariables("HTTP_REFERER")&"'</script>"
response.end
上述代码中,只允许上传GIF和JPG两种格式的文件,其他的都不能上传,这就能很好的杜绝了上传漏洞带来的安全隐患!
忠告和建议:
很多网友当站长,都是半路出家,只懂一点点配置技术,连基本的HTML常识都不懂,就开始着手于网络赚钱了!
像这样的站长,一般不能称为站长!
遇到网站技术问题,哪怕是很简单的技术,往往花很多时间来解决,其实,仅是举手之劳的小事罢了!
所以,还希望有志于当站长的网友,多学习编程技术,毕竟,你购买的自助型的网站程序,都是别人的,难说人家在你网站里面挂了马,再卖程序给你,都很难说!
当个站长最好当杂家,当专家都难混口饭吃了,毕竟面对的突发事件多如牛毛!