您现在的位置: 军旅同心-旅游自驾-军旅文学 >> 读书赏析 >> 学习园地 >> 电脑网络 >> 技术文章 >> 正文
Jsp安全性初探
作者:采集员 文章来源:来源于网络 点击数: 更新时间:2005-9-10 14:26:33
? 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:IBMWAServer empdefault_hostdefault_apppagecompile\_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等.



更多
免责声明:作品版权归所属媒体与作者所有!!本站刊载此文不代表同意其说法或描述,仅为提供更多信息。如果您认为我们侵犯了您的版权,请告知!本站立即删除。有异议请联系我们。
文章录入:烟灰缸    责任编辑:烟灰缸 
  • 上一篇文章:
  • 下一篇文章:
  • 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 网站地图 | 版权申明 | 网站公告 | 管理登录 |