Jsp安全性初探_JSP教程

编辑Tag赚U币
教程Tag:暂无Tag,欢迎添加,赚取U币!

推荐:Servlet动态产生JPEG图像的例子
//GenerateImage.java /* 动态产生JPEG图像的例子 */import java.awt.*;import java.awt.image.*;import com.sun.image.codec.jpeg.*; //编码类java.util.*;javax.servlet.*;java

· Lovehacker·yesky

  其实我相信还有几种办法可以暴露JSP代码的,不过具我的大量测试,这和WEB SERVER的配置有绝对的关系,就那我自己装的IBM Websphere Commerce Suite而言,还有别的方法看到JSP源代码,但我相信是因为IBM HTTP SERVER的配置造成的.

  如果你也想和我一样去发现JSP暴露源代码的BUG的话,首先你需要了解JSP的工作原理,值得庆幸的是我已经帮你做了这一切!

  jsp和其它的php,asp工作机制不一样,虽然它也是一种web编程语言。首次调用JSP文件其实是执行一个编译为Servlet的过程。注意---我们就要在这上边做文章,明白吗?我们要干的事情是,让JSP在编译前被浏览器当作一个文本或其它文件发送给客户端,或在JSP装载的时候不去执行编译好的Servlet而直接读JSP的内容并发送给客户端。

  明白了道理及所要达到的目的就好下手了,我仔细的观察了调用及返回过程发现:JSP被编译为了Servlet保存在指定的目录下如:http://www.x.com/lovehacker/index.jsp很可能存放在X:\IBM\WAServer\temp\default_host\default_app\pagecompile\_lov
~~~~
ehacker_index_xjsp.class
~~~~~~~~~~~~~~~~~~~~~~~~
  已经过编译的index.jsp(顺便说一下,IBM WCS我至少发现了三种以上获得文件存放真实路径的办法,但可笑的是我和IBM的工程师聊到这事的时候他们不以为然)

  回到正题,也就是说_lovehacker_index_xjsp.class显然是我们不需要的文件,而且我们得到它的可能性也不大,我们要干的是不去执行_lovehacker_index_xjsp.class而是直接读index.jsp的内容.我在我的SERVER上已经完成了这个工作,源代码尽收眼底,你呢?是否也已经想好了办法?那还等什么赶快去实践吧!

  据我分析最初的xxx.JSP暴露源代码也是因为我前边的这种想法造成的,本来目录中存放了一个_xxx_xjsp.class但访问xxx.JSP本来是个合法的请求,而又找不到对应的Servlet所以就把xxx.JSP当做一个文本或其它文件发送给了用户。

  也许这是因为IBM HTTP SERVER配置不当造成的,但相信如果你能成功的话,会有一种成就感,很爽的哦!

顺便说一下暴露文件存放真实路径可能会带来的危害:
首先会让入侵者了解磁盘配置情况
聪明的入侵者甚至可以分析出管理员的水平高低
为入侵者修改你的首页提供了方便(起码不用在找你的WEB目录在那个磁盘了)
可能被利用一些其它的CGI的漏洞查看到web目录下的文件如XX.ASP,XX.JSP,XX.PHP等.

分享:jsp 自定义分页标签
花了一上午简单研究了下自定义标签。就弄了个自定义的分页标签。代码没有怎么仔细优化。先贴上来,:) 1,标签的实现类NumenTag.java import java.util.ArrayList;import java.util.Has

来源:模板无忧//所属分类:JSP教程/更新时间:2008-08-22
相关JSP教程