如果服务器本身配置已经相当安全,那么作为WEB服务器的危险之处就在于上传。记得有一位知名程序员曾说过这样一句话:永
远别信任访客提交的东西,管理员都知道上传入口永远是最大的心病,那么如何尽可能的守住服务器安全阵地的入口呢?其实也很简
单。
服务器文件上传构成
在这里可以写一个简单的html页面up.html,提供一个表单,用户从这里选择文档并把文档上载到服务器。
<html>
<head>
<title>文档上载</title>
</head>
<body>
<form action=”upjsp.jsp” enctype=”multipart/form-data” method=post>
<br />
公司: <input type=”text” name=”company” />
<br />
选择要上载的文档 <input type=”file” name=”filename” />
<br />
<input type=”submit” value=”上载” />
</form>
</body>
</html>
注意,
标记有一个enctype属性,属性值是”multipart/form-data”。有个type为file的输入框是用来选择上传文档的。 表单的action属性值
是upjsp.jsp,这是将请求发送给upjsp.jsp文档。而upjsp.jsp则是调用了名为upbean的javabean。 程式如下:
下面是upbean的实现代码:
import java.io.*;
import javax.servlet.http.httpservletrequest;
import javax.servlet.http.httpservletresponse;
import javax.servlet.servletinputstream;
public class upbean {
public void doupload(httpservletrequest request) throws
ioexception {
printwriter pw = new printwriter(
new bufferedwriter(new filewriter(“test.txt”)));
servletinputstream in = request.getinputstream();
int i = in.read();
while (i != -1) {
pw.print((char) i);
i = in.read();
}
pw.close();
}
}
这个javabean把httpservletrequest对象的表单原始数据写入test.txt文档.
选择上传一个文本或网页文档。点击“上载”按钮之后,表单就发送给了upjsp.jsp文档,一起发送的还有上传的文档。
upjsp.jsp文档不会向浏览器发送任何应答内容,但是会生成一个test.txt文档。只要打开test.txt文档,我就能看到上传文档的内容
和一些上传的信息了。
进行服务器上传设置
做好以下几点即可防止脚本木马的上传行为,行为如下:
一、因为用户上传文件到服务器时,需要shell.application组件,如果网站管理人员需要上传文件,可以将其名称改掉,当然如
果管理人员认为没有必要上传文件则可以将其删除。
方法 :在注册表中查找,shell.application和shell.application1,将其改名为shell.application_mowuming或者其他。
二、禁止调用以上两组件,依次打开:开始–运行–cmd:执行 regsvr32/u wshom.ocx 回车、regsvr32/u wshext.dll回车即可
。
三、使用组策略GPEDIT.MSC禁止执行命令行模式和注册表编辑器。
4、上传的文件都会指定到某文件夹中,找到其文件夹,在IIS中设置无执行权限,即使上传进来脚本文件也无法运行。
总结:本文主要讲解了如何在服务器上限制非法上传,关于网站的本身上传限制管理人员可以根据服务器的相关情况进行设置即
可。
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
TechTarget
官方微博
TechTarget中国
作者
相关推荐
-
实施虚拟化:管理员应避免五大安全错误
如今,有约50%的服务器负载在虚拟机上运行,并且在未来的几年还要增加。虚拟化带来很多好处,也不可避免地带来许多由其自身产生的威胁……
-
转型中的深信服不只有安全,云和虚拟化占了半壁江山
深信服从2011年就已开始布局云和虚拟化领域。积累至今,云和虚拟化已发展成与安全业务平分秋色,再仅拿安全厂商来看待深信服显然已不合时宜了。
-
让IT更简单:深信服在京举办2016年大客户技术高峰论坛
6月18日,以“创新佳法,IT简法”为主题的深信服2016年大客户技术高峰论坛在北京国贸大酒店隆重举行。这是深信服第8年举办高峰技术论坛,会议吸引了来自全国各地的800多位CIO前来参与,共同探讨IT技术的新动向。
-
当我们谈Web应用安全的时候 主要谈哪些(下)
在本文中,主要介绍了业界几个需要被着重考虑的Web应用程序的安全问题:SQL注入、表格和脚本以及Cookies和会话管理。