2008-07-05
深度剖析 Web上传文件的原理及实现
深度剖析上传内幕,我们可以通过分析数据包获取web上传漏洞,假如我们再合法的文件明后面跟一个\0之后是什么情况,我们可以构造数据包实现木马上传,也可以作为避免木马侵扰的基本功
现在有很多 Web程序都有上传功能,实现上传功能的组件或框架也很多,如基于 java的 Commons FileUpload 、还有 Struts1.x和 Struts2中带的上传文件功能(实际上, Struts2在底层也使用了 Commons FileUpload)。在 asp.net中也有相应的上传文件的控件。
虽然现在有很多上传组件可以利用,但是了解 Web上传文件的原理,对于处理突然出现的问题会有很大的帮助,下面就来讲一下通过浏览器上传文件的基本原理。在了解了原理之后,就可以非常容易地自制满足自身需要的上传组件了。
众所周知,在客户端代码中需要使用
来选择要上传的文件,并上传,代码如上:
<
html
>
< head >
< title > upload title >
< meta http-equiv ="description" content ="this is my page" >
< meta http-equiv ="content-type" content ="text/html; charset=GB18030" >
head >
< body >
< form action ="servlet/UploadFile" method ="post"
enctype ="multipart/form-data" >
< input type ="file" name ="file1" id ="file1" />
< input type ="file" name ="file2" id ="file2" />
< input type ="submit" value ="上传" />
form >
body >
html >
< head >
< title > upload title >
< meta http-equiv ="description" content ="this is my page" >
< meta http-equiv ="content-type" content ="text/html; charset=GB18030" >
head >
< body >
< form action ="servlet/UploadFile" method ="post"
enctype ="multipart/form-data" >
< input type ="file" name ="file1" id ="file1" />
< input type ="file" name ="file2" id ="file2" />
< input type ="submit" value ="上传" />
form >
body >
html >
从上面的代码可以看出,有两个文件选择框( file1和 file2),在上传文件时,
发表评论
- 浏览: 20153 次

- 详细资料
搜索本博客
最近加入圈子
链接
最新评论
-
如何注意HttpSession的线 ...
我也来转到BLOG中做记录。
-- by hifun -
如何注意HttpSession的线 ...
不错,在一个复杂的应用里面,不应该假设SESSION是线程安全的,否则很容易出问 ...
-- by srdrm -
MySQL数据库优化
...
-- by bnmcvzx -
Google搜索引擎技术实现探 ...
...
-- by kaka99 -
用freemarker生成html页面
http://www.bt170.cn BT下载,我的也是这样做的
-- by hjw0571






评论排行榜