美文网首页
由%5c爆库漏洞研究的绝对路径,相对路径和虚拟目录

由%5c爆库漏洞研究的绝对路径,相对路径和虚拟目录

作者: Safesonic | 来源:发表于2016-09-17 22:13 被阅读264次

    通常情况下,数据库连接文件中的server.mappath()方法,可以正常获得物理路径,但是在浏览器中的连接被修改提交后,网页的相对路径就发生了变化,重而使得路径报错,报出数据库信息.

    ie特性,在浏览器中提交的连接地址中包含\浏览器会自动把 \ 转换为 /,重而访问到正确的连接地址。但是对于/小小的编码转换,就可避免ie的自动转化 %5是\的十六进制编码,当iis服务器收到用户提交的信息并作出解析时,会将%5c还原成\于是在iis服务器中,用户提交的网址的相对路径就变成了"asp\test.asp"或"asp\conn.asp"...

    网站服务器中,"相对路径"就是指相对于Web根目录的目录路径。例如D:\Web\在根目录建立 一个名为asp的目录,asp就是相对于D:\Web的一级子目录。对应到网站连接上来看的话,D:\Web\对应的就是"http://localhost"而"asp"就是相对于“http://localhost”的一级目录。因此,在web服务中访问asp目录是,只需要在浏览器中输入相对路径http://localhost/asp即可

    所谓的绝对路径就是在服务器磁盘 中的真实路径,这里aso目录的绝对路径就是D :\Web\asp\是一个二级目录

    在iis中还有一个特殊的目录路径----'虚拟目录".每个Web服务器可以重多个目录发布,Web服务器可以有一个宿主目录和任意数量的其他发布目录,其他发布目录就被成虚拟目录,上面的例子Web服务的根目录为D:\Web\通过iis虚拟目录功能,可以发布一个论坛服务,论坛程序可以位于任意路径,如在E:\bbs.通过iis虚拟目录设置,人能把bbs转化为Web目录下,直接用http:..localhost/bbs/进行访问

    使用虚拟目录时,此目录指向一个绝对地址的物理路径。在iis中,在iis中,为了辨别当前访问的是否问虚拟目录,通常可以查询每个目录是否指向一个物理路径,而进行查询判断时,是以连接中\作为符号标记的。也就是说,当iis获取某个目录时,如果碰到 \ 符号,则将  \ 之后的路径作为目录的绝对路径,而忽略 \ 之前       绝对路径信息.

    conn.asp数据库连接文件中,Data Source=server.MapPath("ccf.mdb")

    server.MapPath()方法的作用就是把相对路径转换为物理上的绝对路径,进行数据读写。获取数据库文件的路径时,读取的路径为Web根目录+相对目录+指定的路径。

    相关文章

      网友评论

          本文标题: 由%5c爆库漏洞研究的绝对路径,相对路径和虚拟目录

          本文链接:https://www.haomeiwen.com/subject/trewettx.html