2.2 常見Web攻擊與防御_第1頁
2.2 常見Web攻擊與防御_第2頁
2.2 常見Web攻擊與防御_第3頁
2.2 常見Web攻擊與防御_第4頁
2.2 常見Web攻擊與防御_第5頁
已閱讀5頁,還剩88頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第2節(jié)常見Web攻擊與防御第2章目

錄01常見Web攻擊簡(jiǎn)介02SQL注入攻擊與防護(hù)03XSS跨站腳本攻擊與防護(hù)04CSRF跨站請(qǐng)求偽造攻擊與防護(hù)目

錄05文件上傳攻擊與防護(hù)07命令執(zhí)行攻擊與防護(hù)08邏輯漏洞攻擊與防護(hù)09XML外部實(shí)體注入攻擊與防護(hù)06文件包含攻擊與防護(hù)01常見Web攻擊簡(jiǎn)介常見Web攻擊的基本流程STEP1STEP2STEP3STEP4Web攻擊基本流程明確目標(biāo)與信息收集:IP/域名查詢、應(yīng)用信息漏洞探測(cè)(手動(dòng)&自動(dòng)):自動(dòng)漏掃、手動(dòng)挖掘漏洞利用:SQL注入、XSS跨站腳本、文件上傳、邏輯漏洞、命令執(zhí)行...權(quán)限提升與維持:Web后門、遠(yuǎn)程控制VNC、創(chuàng)建隱藏賬號(hào)Web安全測(cè)試行為規(guī)范課堂知識(shí)應(yīng)用行為規(guī)范禁止將課堂知識(shí)應(yīng)用到公網(wǎng);禁止在未授權(quán)的情況下對(duì)學(xué)校服務(wù)器進(jìn)行非法攻擊;隨意對(duì)互聯(lián)網(wǎng)的服務(wù)器進(jìn)行攻擊的行為,將會(huì)受到法律約束。第二百八十五條【非法獲取計(jì)算機(jī)信息系統(tǒng)數(shù)據(jù)、非法控制計(jì)算機(jī)信息系統(tǒng)罪】刑事責(zé)任《中華人民共和國(guó)刑法》違反國(guó)家規(guī)定,侵入前款規(guī)定以外的計(jì)算機(jī)信息系統(tǒng)或者采用其他技術(shù)手段,獲取該計(jì)算機(jī)信息系統(tǒng)中存儲(chǔ)、處理或者傳輸?shù)臄?shù)據(jù),或者對(duì)該計(jì)算機(jī)信息系統(tǒng)實(shí)施非法控制,情節(jié)嚴(yán)重的,處三年以下有期徒刑或者拘役,并處或者單處罰金;情節(jié)特別嚴(yán)重的,處三年以上七年以下有期徒刑,并處罰金。網(wǎng)絡(luò)靶場(chǎng)介紹什么是網(wǎng)絡(luò)靶場(chǎng)網(wǎng)絡(luò)靶場(chǎng)(CyberRange)是一種基于虛擬化技術(shù),對(duì)真實(shí)網(wǎng)絡(luò)空間中的網(wǎng)絡(luò)架構(gòu)、系統(tǒng)設(shè)備、業(yè)務(wù)流程的運(yùn)行狀態(tài)及運(yùn)行環(huán)境進(jìn)行模擬和復(fù)現(xiàn)的技術(shù)或產(chǎn)品,以更有效地實(shí)現(xiàn)與網(wǎng)絡(luò)安全相關(guān)的學(xué)習(xí)、研究、檢驗(yàn)、競(jìng)賽、演練等行為,從而提高人員及機(jī)構(gòu)的網(wǎng)絡(luò)安全對(duì)抗水平。常見靶場(chǎng)Web靶場(chǎng)綜合靶場(chǎng)DVWA、Sqli-Labs、bWAPP、WebGoat、Upload-Labs等Vulnhub、HackTheBox等Web靶場(chǎng)

DVWADVWA(DamnVulnerableWebApplication)是一個(gè)用來進(jìn)行安全脆弱性鑒定的PHP/MySQLWeb應(yīng)用,旨在為安全專業(yè)人員測(cè)試自己的專業(yè)技能和工具提供合法的環(huán)境,幫助Web開發(fā)者更好的理解Web應(yīng)用安全防范的過程。Web靶場(chǎng)

bWAPPbWAPP是一個(gè)免費(fèi)的、開源的、有缺陷的Web應(yīng)用程序。bWAPP可以幫助安全愛好者、開發(fā)人員和學(xué)生發(fā)現(xiàn)并防止Web漏洞。它涵蓋了所有已知的主要Web漏洞,包括OWASPTop10項(xiàng)目的所有風(fēng)險(xiǎn)。網(wǎng)絡(luò)靶場(chǎng)介紹Burpsuite工具介紹注:有關(guān)于如何配置使用Burpsuite工具,請(qǐng)參閱第二章/Burpsuite工具配置及使用.mp4BurpSuite是用于攻擊Web應(yīng)用程序的集成平臺(tái)。它包含了許多工具,并為這些工具設(shè)計(jì)了許多接口,以促進(jìn)加快攻擊應(yīng)用程序的過程。所有的工具都共享一個(gè)能處理并顯示HTTP消息、持久性、認(rèn)證、代理、日志、警報(bào)的可擴(kuò)展框架。功能說明ProxySpiderIntruderRepeaterDecoder攔截HTTP/S的代理服務(wù)器,作為一個(gè)在瀏覽器和目標(biāo)應(yīng)用程序之間的中間人,允許你攔截,查看,修改在兩個(gè)方向上的原始數(shù)據(jù)流。應(yīng)用智能感應(yīng)的網(wǎng)絡(luò)爬蟲,它能完整的枚舉應(yīng)用程序的內(nèi)容和功能。定制的高度可配置的工具,對(duì)web應(yīng)用程序進(jìn)行自動(dòng)化攻擊,如:枚舉標(biāo)識(shí)符,收集有用的數(shù)據(jù),以及使用fuzzing技術(shù)探測(cè)常規(guī)漏洞。通過手動(dòng)操作來補(bǔ)發(fā)單獨(dú)的HTTP請(qǐng)求,并分析應(yīng)用程序響應(yīng)的工具。手動(dòng)執(zhí)行或?qū)?yīng)用程序數(shù)據(jù)進(jìn)行解碼編碼的工具。02SQL注入攻擊與防護(hù)2017年9月,海南省公安廳網(wǎng)警總隊(duì)在工作中,發(fā)現(xiàn)一個(gè)黑帽SEO團(tuán)伙在從事黑客攻擊破壞活動(dòng),共170余個(gè)網(wǎng)站的管理權(quán)限被非法獲取,20多個(gè)網(wǎng)站被加掛黑鏈,其中政府網(wǎng)站10余個(gè)。經(jīng)過網(wǎng)警偵察,該團(tuán)伙通過攻擊滲透等方式獲取大量網(wǎng)站的權(quán)限,隨后以蜘蛛劫持、寄生蟲、泛站群、自動(dòng)鏈輪、二級(jí)目錄等方法植入黑鏈代碼,為博彩類、色情類、網(wǎng)絡(luò)詐騙網(wǎng)站提升搜索引擎排名,從中牟取非法利益。案例分析SQL注入攻擊原理SQL注入(SQLInjection)程序員在編寫代碼的時(shí)候,沒有對(duì)用戶輸入數(shù)據(jù)的合法性進(jìn)行判斷,使應(yīng)用程序存在安全隱患。用戶可以提交一段數(shù)據(jù)庫查詢代碼,根據(jù)程序返回的結(jié)果,獲得某些他想得知的數(shù)據(jù)或進(jìn)行數(shù)據(jù)庫操作。Web網(wǎng)站數(shù)據(jù)庫服務(wù)器構(gòu)造SQL注入語句響應(yīng)請(qǐng)求正常執(zhí)行SQL注入基礎(chǔ)知識(shí)01.03.04.02.selectstatementfromtablewherecondition查詢SQL(StructuredQueryLanguage)結(jié)構(gòu)化的查詢語言,是關(guān)系型數(shù)據(jù)庫通訊的標(biāo)準(zhǔn)語言。刪除記錄deletefromtablewherecondition更新記錄添加記錄updatetablesetfield=valuewherecondtioninsertintotablefieldvalues(values)SQL注入SQL注入范例http://xx.xxx.xx.xx/playnews.asp?id=772’and1=1MicrosoftOLEDBProviderforODBCDrivers錯(cuò)誤'80040e14'[Microsoft][ODBCMicrosoftAccessDriver]字符串的語法錯(cuò)誤在查詢表達(dá)式'id=772''中。/displaynews.asp,行31

1.數(shù)據(jù)庫為Access說明2.程序沒有對(duì)于id進(jìn)行過濾3.數(shù)據(jù)庫表中有個(gè)字段名為idSQL注入的危害12345錯(cuò)誤回顯可能披露敏感信息繞過驗(yàn)證過程聯(lián)合查詢引發(fā)信息泄露篡改數(shù)據(jù)其他危害:執(zhí)行OS命令、讀取文件、編輯文件……手工判斷SQL注入點(diǎn)經(jīng)典的加單引號(hào)盲注:and1=1、and1=2判斷http://xx.xx.xx.xx/test.php?id=12’返回錯(cuò)誤http://xx.xx.xx.xx/test.php?id=12and1=1返回正常http://xx.xx.xx.xx/test.php?id=12and1=2返回錯(cuò)誤或沒找到手動(dòng)檢測(cè)最簡(jiǎn)單的測(cè)試產(chǎn)生原因STEP4SQL注入案例注:有關(guān)于如何利用SQL注入漏洞獲取網(wǎng)站后臺(tái)權(quán)限,請(qǐng)參閱第二章/利用SQL注入漏洞獲取網(wǎng)站后臺(tái)權(quán)限.mp4SQL測(cè)試網(wǎng)站STEP1STEP2STEP3STEP5STEP6判斷注入點(diǎn)確定字段數(shù)構(gòu)造聯(lián)合查詢,確定回顯位置獲取數(shù)據(jù)庫名等信息構(gòu)造語句探測(cè)數(shù)據(jù)庫的用戶密碼(若密碼經(jīng)過加密)對(duì)獲取到的帳號(hào)密碼進(jìn)行解密數(shù)據(jù)庫攻擊技巧1243盲注、聯(lián)合查詢:確定版本、字段數(shù)……自動(dòng)化攻擊:sqlmap讀寫文件:讀取系統(tǒng)文件,寫入本地文件,導(dǎo)出webshell執(zhí)行命令(利用用戶自定義函數(shù))5攻擊存儲(chǔ)過程,利用存儲(chǔ)過程自身漏洞6利用編碼問題7利用列截?cái)鄦栴}SQL注入產(chǎn)生原因1字符串字面量的問題2數(shù)值字面量的問題SQL注入防護(hù)注:有關(guān)于如何對(duì)SQL注入漏洞進(jìn)行安全防護(hù),請(qǐng)參閱第二章/對(duì)SQL注入漏洞進(jìn)行安全防護(hù).mp4防護(hù)方法--代碼層面01.對(duì)輸入進(jìn)行嚴(yán)格的轉(zhuǎn)義和過濾mysql_real_escape_string():轉(zhuǎn)義SQL語句中使用的字符串中的特殊字符。過濾函數(shù)addslashes():返回在預(yù)定義字符之前添加反斜杠的字符串;使用預(yù)處理和參數(shù)化(Parameterized)PDO即統(tǒng)一的數(shù)據(jù)庫訪問接口。它可以防止前端傳進(jìn)來的參數(shù)被拼接到sql語句的情況。防護(hù)方法--代碼層面02.SQL注入防護(hù)其他注入攻擊01代碼注入CRLF注入Cookie注入U(xiǎn)ser-Agent注入……02030403XSS跨站腳本攻擊與防護(hù)XSS攻擊原理跨站腳本攻擊(CrossSiteScript,XSS)是一種Web應(yīng)用程序的漏洞,惡意攻擊者往Web頁面里插入惡意Script代碼,當(dāng)用戶瀏覽該頁面時(shí),嵌入Web中的Script代碼會(huì)被執(zhí)行,從而達(dá)到惡意攻擊用戶的目的。非持久性XSS攻擊

反射型、DOM-based型持久性XSS攻擊

存儲(chǔ)型攻擊描述攻擊類型攻擊者將惡意代碼上傳或存儲(chǔ)到服務(wù)器中,下次只要受害者瀏覽包含此惡意代碼的頁面就會(huì)執(zhí)行惡意代碼。反射型XSS攻擊描述反射型XSS一般指:攻擊者通過特定的方式來誘惑受害者去訪問一個(gè)包含惡意代碼的URL。當(dāng)受害者點(diǎn)擊惡意鏈接URL的時(shí)候,惡意代碼會(huì)直接在受害者的主機(jī)上的瀏覽器執(zhí)行。存儲(chǔ)型XSS攻擊描述XSS攻擊原理DOM,全稱DocumentObjectModel,是一個(gè)平臺(tái)和語言都中立的接口,可以使程序和腳本能夠動(dòng)態(tài)訪問和更新文檔的內(nèi)容、結(jié)構(gòu)以及樣式。DOM型XSS其實(shí)是一種特殊類型的反射型XSS,它是基于DOM文檔對(duì)象模型的一種漏洞。什么是DOM?可能觸發(fā)DOM型XSS的屬性document.referer屬性屬性location屬性innerHTML屬性document.write屬性XSS攻擊原理反射型XSS攻擊過程提供鏈接1點(diǎn)擊鏈接2點(diǎn)擊鏈接2返回?cái)?shù)據(jù)4服務(wù)器解析接收內(nèi)容3攻擊者用戶XSS攻擊原理XSS攻擊過程存儲(chǔ)型XSS攻擊過程攻擊者用戶輸入XSS腳本數(shù)據(jù)傳遞服務(wù)器解析接收內(nèi)容瀏覽器解析數(shù)據(jù)解析數(shù)據(jù)庫返回內(nèi)容數(shù)據(jù)傳遞請(qǐng)求數(shù)據(jù)返回?cái)?shù)據(jù)用戶訪問返回?cái)?shù)據(jù)用戶訪問XSS的危害多數(shù)網(wǎng)站使用cookie作為用戶會(huì)話的唯一標(biāo)識(shí),因?yàn)槠渌姆椒ň哂邢拗坪吐┒础H绻粋€(gè)網(wǎng)站使用cookies作為會(huì)話標(biāo)識(shí)符,攻擊者可以通過竊取一套用戶的cookies來冒充用戶的請(qǐng)求。從服務(wù)器的角度,它是沒法分辨用戶和攻擊者的,因?yàn)橛脩艉凸粽邠碛邢嗤纳矸蒡?yàn)證。Cookie劫持其他常見XSS危害構(gòu)造Get/Post請(qǐng)求XSS釣魚識(shí)別用戶的瀏覽器類型和版本識(shí)別用戶安裝的軟件獲取用戶的IP地址XSSwormXSS構(gòu)造中的幾個(gè)技巧沒有用引號(hào)括起來的屬性值極易遭受XSS用引號(hào)括起來的屬性值,如果引號(hào)未被轉(zhuǎn)義,也可能遭受XSS繞過長(zhǎng)度限制01.02.03.STEP3STEP1XSS攻擊案例注:有關(guān)于如何利用XSS漏洞獲取用戶信息,請(qǐng)參閱第二章/利用XSS漏洞獲取用戶信息(0'00''-3'05'').mp4反射型型XSS測(cè)試站點(diǎn)查看獲取到的用戶信息STEP4STEP2編寫JS彈窗代碼訪問反射型XSS漏洞頁面提交XSS攻擊代碼STEP1XSS攻擊案例注:有關(guān)于如何利用XSS漏洞獲取用戶信息,請(qǐng)參閱第二章/利用XSS漏洞獲取用戶信息(3'05''-11'15'').mp4反射型型XSS測(cè)試站點(diǎn)編寫用戶信息接收代碼構(gòu)造XSS攻擊代碼訪問存儲(chǔ)型XSS漏洞頁面提交XSS攻擊代碼用戶訪問XSS漏洞頁面查看獲取到的用戶信息STEP2STEP3STEP4STEP5STEP6XSS攻擊防護(hù)HttpOnly最早是由微軟提出,并在IE6中實(shí)現(xiàn)的,至今已經(jīng)逐漸成為一個(gè)標(biāo)準(zhǔn)。瀏覽器將禁止頁面的JavaScript訪問帶有HttpOnly屬性的Cookie。01.流行的瀏覽器都內(nèi)置了一些對(duì)抗XSS的措施,比如Firefox的CSP、Noscript擴(kuò)展,IE8內(nèi)置的XSSFilter等。防護(hù)方法--瀏覽器層面XSS攻擊防護(hù)XSSFilter:在XSS的防御上,輸入檢查一般是檢查用戶輸入的數(shù)據(jù)中是否包含一些特殊字符,如<、>、'、”等。如果發(fā)現(xiàn)存在特殊字符,則將這些字符過濾或者編碼。比較智能的“輸入檢查”,可能還會(huì)匹配XSS的特征。比如查找用戶數(shù)據(jù)中是否包含了“<script>”、“javascript”等敏感字符。注:有關(guān)于如何對(duì)XSS漏洞進(jìn)行安全防護(hù),請(qǐng)參閱第二章/對(duì)XSS漏洞進(jìn)行安全防護(hù).mp402.對(duì)輸入進(jìn)行嚴(yán)格的檢查和過濾防護(hù)方法--代碼層面XSS攻擊防護(hù)此處調(diào)用了htmlspecialchars()函數(shù),該函數(shù)可以把輸入的敏感字符實(shí)體化。03.輸出檢查:在輸出時(shí)進(jìn)行編碼或者轉(zhuǎn)義處理編碼分為很多種,針對(duì)HTML代碼的編碼方式是HtmlEncode.防護(hù)方法--代碼層面XSS防御的核心XSS可能發(fā)生的具體場(chǎng)景具體分析在正確的地方做正確的防御T01T02T03T04T05T06T07T08在HTML標(biāo)簽中輸出在HTML屬性中輸出在<script>標(biāo)簽中輸出在事件中輸出在CSS中輸出在地址中輸出富文本的處理DOMbasedXSS04CSRF跨站請(qǐng)求偽造攻擊與防護(hù)CSRF攻擊原理攻擊描述客戶端請(qǐng)求偽造,也叫跨站請(qǐng)求偽造(Cross-siterequestforgery,CSRF),主要利用受害者尚未失效的身份認(rèn)證信息,誘騙其點(diǎn)擊惡意鏈接或者訪問包含攻擊代碼的頁面,在受害人不知情的情況下以受害者的身份向服務(wù)器發(fā)送請(qǐng)求,從而完成非法操作。以被攻擊者的名義發(fā)送郵件發(fā)消息盜取被攻擊者的賬號(hào)購(gòu)買商品虛擬貨幣轉(zhuǎn)賬在正確的地方做正確的防御攻擊方式CSRF攻擊過程受害者黑客網(wǎng)站A訪問網(wǎng)站A1發(fā)送請(qǐng)求(登陸)2提供Cookie3獲取網(wǎng)站A

Cookie4黑客網(wǎng)站H提供網(wǎng)站H5訪問網(wǎng)站H6發(fā)送請(qǐng)求7返回惡意代碼8運(yùn)行網(wǎng)站H中JS代碼提交請(qǐng)求9發(fā)送請(qǐng)求(登陸)10

通過GET請(qǐng)求方式修改密碼,并且驗(yàn)證僅驗(yàn)證兩次輸入的新密碼是否相同。注:有關(guān)于如何利用CSRF漏洞獲取管理員賬號(hào)權(quán)限,請(qǐng)參閱第二章/利用XSS加CSRF漏洞獲取管理員賬號(hào)權(quán)限(0'00''-4'00'').mp4CSRF攻擊案例案例場(chǎng)景1在自己的站點(diǎn)上構(gòu)造惡意頁面,并引誘被攻擊者訪問惡意頁面的鏈接,即可達(dá)到攻擊目的。如:a標(biāo)簽、iframe標(biāo)簽、img標(biāo)簽、cssbackground等。CSRF攻擊案例攻擊思路修改密碼時(shí)需要輸入原密碼,加以驗(yàn)證,當(dāng)通過原密碼驗(yàn)證后才可以修改密碼。CSRF攻擊案例漏洞場(chǎng)景2通過釣魚的方式攻擊:構(gòu)造一個(gè)釣魚界面,誘導(dǎo)用戶輸入舊密碼,然后通過JS腳本"悄悄地"將舊密碼發(fā)送到攻擊者服務(wù)器。CSRF攻擊案例攻擊思路(一)01.當(dāng)提交表單時(shí),發(fā)送表單數(shù)據(jù)到名為/csrf_hack_get.php的文件(保存用戶的輸入),攻擊者服務(wù)器上的csrf_hack_get.php源代碼。最終通過釣魚,獲取到了用戶的密碼。02.攻擊思路(二)CSRF攻擊案例STEP3STEP2STEP1注:有關(guān)于如何利用XSS加CSRF漏洞獲取管理員賬號(hào)權(quán)限,請(qǐng)參閱第二章/利用XSS加CSRF漏洞獲取管理員賬號(hào)權(quán)限(4'00''-10'10'').mp4CSRF攻擊案例攻擊思路(二):利用XSS+CSRF漏洞獲取管理員權(quán)限STEP4STEP5編寫創(chuàng)建管理員賬號(hào)和密碼的JS代碼將代碼保存至攻擊者服務(wù)器上構(gòu)造XSS攻擊語句訪問XSS漏洞頁面,并提交XSS代碼用戶訪問提交的代碼,觸發(fā)CSRF漏洞CSRF產(chǎn)生的原因form元素的action屬性能夠指定任意域名的URL最終通過釣魚,獲取到了用戶的密碼。保存在cookie中的會(huì)話ID會(huì)被自動(dòng)發(fā)送給對(duì)象網(wǎng)站。CSRF攻擊防護(hù)防護(hù)方法:注:有關(guān)于如何對(duì)CSRF漏洞進(jìn)行安全防護(hù),請(qǐng)參閱第二章/對(duì)CSRF漏洞進(jìn)行安全防護(hù).mp4添加驗(yàn)證碼12345驗(yàn)證referertoken令牌二次驗(yàn)證XSS對(duì)CSRF的影響05文件上傳攻擊與防護(hù)文件上傳攻擊原理上傳漏洞可以把ASP、PHP等格式的木馬直接上傳至網(wǎng)站目錄內(nèi),一旦上傳成功,可以立刻得到Webshell權(quán)限,而不需要任何用戶名和密碼的驗(yàn)證。文件上傳描述文件上傳漏洞是一種比注入更有殺傷力的漏洞。通過注入所得到的往往是數(shù)據(jù)庫中的一些敏感信息,如管理員名稱、密碼等等。什么是網(wǎng)站木馬?網(wǎng)站木馬是一段以ASP和PHP代碼為主的代碼,也有基于.NET的腳本木馬和JSP腳本木馬,也有關(guān)于Python網(wǎng)站的木馬;攻擊者通過不同的手段上傳到Web服務(wù)器,木馬運(yùn)行于服務(wù)器端,獲取Webshell;攻擊者通過訪問木馬的形式進(jìn)行入侵根據(jù)腳本類型可以分為PHP木馬和ASP木馬根據(jù)功能可以分為小馬和大馬文件上傳攻擊原理小馬通常指一句話木馬例如優(yōu)點(diǎn)缺點(diǎn)常見利用方式ASP木馬<%evalrequest(“pass”)%>,PHP木馬<?php@eval($_POST['pass']);?>體積小、隱蔽性強(qiáng)功能相對(duì)簡(jiǎn)單結(jié)合中國(guó)菜刀(一款網(wǎng)站管理工具)、中國(guó)蟻劍等工具,效果特佳常見的網(wǎng)站木馬大馬功能多,常見包括提權(quán)命令、磁盤管理、數(shù)據(jù)庫接口優(yōu)點(diǎn)缺點(diǎn)體積比較大、隱蔽性不好,易于被殺毒軟件發(fā)現(xiàn)文件上傳攻擊原理常見網(wǎng)站管理工具中國(guó)菜刀中國(guó)菜刀是一款專業(yè)的網(wǎng)站管理軟件,用途廣泛,使用方便,小巧實(shí)用。只要支持動(dòng)態(tài)腳本的網(wǎng)站,都可以用中國(guó)菜刀來進(jìn)行管理。優(yōu)點(diǎn)缺點(diǎn)用途廣泛、使用方便、小巧實(shí)用數(shù)據(jù)明文傳輸,易被殺軟察覺、停止更新、多版本存在后門中國(guó)蟻劍中國(guó)蟻劍是一款開源的跨平臺(tái)網(wǎng)站管理工具,它主要面向于合法授權(quán)的滲透測(cè)試安全人員以及進(jìn)行常規(guī)操作的網(wǎng)站管理員。支持多平臺(tái)、內(nèi)置代理功能、編碼器和解碼器、高擴(kuò)展性優(yōu)點(diǎn)文件上傳攻擊原理STEP4STEP1文件上傳攻擊案例注:有關(guān)于如何利用文件上傳漏洞獲取網(wǎng)站控制權(quán)限,請(qǐng)參閱第二章/利用文件上傳漏洞獲取網(wǎng)站控制權(quán)限.mp4STEP2STEP3STEP5STEP6STEP7編寫PHP一句話木馬訪問文件上傳漏洞頁面上傳木馬文件->訪問上傳后木馬打開中國(guó)蟻劍填入木馬連接信息訪問并連接木馬最終獲得網(wǎng)站控制權(quán)限文件上傳攻擊方式01針對(duì)上傳功能的DoS攻擊02使上傳的文件在服務(wù)器上作為腳本執(zhí)行03誘使用戶下載惡意文件04越權(quán)下載文件05利用上傳文件釣魚文件上傳漏洞產(chǎn)生的原因01Web程序開發(fā)人員在設(shè)計(jì)時(shí)引入的漏洞各種插件、中間件本身存在的缺陷0203Web服務(wù)器自身的問題文件上傳防范方法文件內(nèi)容頭校驗(yàn)上傳文件合法性校驗(yàn)使用文件內(nèi)容頭校驗(yàn),判斷文件中的內(nèi)容,并校驗(yàn)JPEG的固定文件字符,可以通過保留文件頭,在中間插入惡意代碼,繞過檢測(cè)(例如:GIF的文件頭是GIF89a)。01黑名單校驗(yàn)上傳文件合法性校驗(yàn)使用黑名單的方式判斷上傳文件后綴,由于黑名單不全,被攻擊者繞過導(dǎo)致上傳漏洞。02文件上傳防范方法MIME檢測(cè)MIME(MultipurposeInternetMailExtensions)中文全稱為:多用途互聯(lián)網(wǎng)郵件擴(kuò)展類型。MIME是用來設(shè)定某種擴(kuò)展名的文件用一種應(yīng)用程序來打開的方式類型,當(dāng)該擴(kuò)展名文件被訪問的時(shí)候,瀏覽器會(huì)自動(dòng)使用指定應(yīng)用程序來打開,多用于指定一些客戶端自定義的文件名,以及一些媒體文件打開方式。檢測(cè)MIME類型的PHP代碼片段03文件上傳防范方法白名單前端校驗(yàn)上傳文件合法性校驗(yàn)使用白名單的方式判斷上傳文件后綴,白名單本身很安全,但是在前端做校驗(yàn)的情況下可以用Burpsuite進(jìn)行抓包繞過。04文件上傳防范方法白名單后端校驗(yàn)上傳文件合法性校驗(yàn)在后端使用的白名單校驗(yàn),此時(shí)已經(jīng)比較安全,不能再進(jìn)行繞過。注:有關(guān)于如何對(duì)文件上傳漏洞進(jìn)行后端白名單安全防護(hù),請(qǐng)參閱第二章/對(duì)文件上傳漏洞進(jìn)行安全防護(hù).mp405文件上傳防范方法06文件上傳的目錄設(shè)置為不可執(zhí)行只要Web服務(wù)器無法解析該目錄下的文件,即使攻擊者上傳了腳本文件,服務(wù)器本身也不會(huì)受到影響。07使用隨機(jī)數(shù)改寫文件名和文件路徑文件上傳如果要執(zhí)行代碼,則需要用戶能夠訪問到這個(gè)文件。在某些環(huán)境中,用戶能上傳,但不能訪問。如果應(yīng)用了隨機(jī)數(shù)改寫了文件名和路徑,將極大地增加攻擊的成本。08單獨(dú)設(shè)置文件服務(wù)器的域名由于瀏覽器同源策略的關(guān)系,一系列客戶端攻擊將失效,比如上傳crossdomain.xml文件、上傳包含JavaScript的XSS代碼等。文件上傳防范方法06文件包含攻擊與防護(hù)文件包含攻擊原理文件包含漏洞原理文件包含函數(shù)包含的文件參數(shù)沒有經(jīng)過過濾或者嚴(yán)格的定義,并且參數(shù)可以被用戶控制,就可能包含非預(yù)期的文件。如果文件中含有惡意代碼,無論文件是什么樣的后綴類型,文件內(nèi)的惡意代碼都會(huì)被解析執(zhí)行,就導(dǎo)致了文件包含漏洞的產(chǎn)生。漏洞危害文件包含漏洞可能會(huì)造成服務(wù)器的網(wǎng)頁篡改、網(wǎng)站掛馬、遠(yuǎn)程控制服務(wù)器、安裝后門等危害。文件包含類別文件包含分為本地文件包含(LocalFileInclusion,LFI)和遠(yuǎn)程文件包含(RemoteFileInclusion,RFI),二者可通過查看php.ini中是否開啟allow_url_include進(jìn)行區(qū)分。若allow_url_include=On就有可能包含遠(yuǎn)程文件。文件包含函數(shù)PHP中進(jìn)行文件包含的函數(shù):require()、require_once()、include()和include_once()文件包含攻擊原理文件包含利用方式本地文件包含漏洞分析:該頁面動(dòng)態(tài)傳參包含文件,導(dǎo)致惡意/敏感文件被包含。漏洞利用:在遠(yuǎn)程服務(wù)器上,創(chuàng)建會(huì)生成木馬的php文件遠(yuǎn)程文件包含漏洞分析:當(dāng)php.ini中allow_ur_include=On以及allow_ur_fopen=On,則可以包含遠(yuǎn)程文件。1文件包含利用方式在遠(yuǎn)程服務(wù)器上,創(chuàng)建任意后綴的php文件利用文件包含漏洞,訪問遠(yuǎn)程服務(wù)器的文件23文件包含利用方式文件包含攻擊防范本地文件包含防范01020304對(duì)嚴(yán)格判斷包含的參數(shù)是否外部可控。因?yàn)槲募┒蠢贸晒εc否的關(guān)鍵點(diǎn)就在于被包含的文件是否可被外部控制;路徑限制:限制被包含的文件只能在某一文件夾內(nèi),一定要禁止目錄跳轉(zhuǎn)字符,如:“../”;包含文件驗(yàn)證:驗(yàn)證被包含的文件是否加入到白名單中;盡量不要使用動(dòng)態(tài)包含,可以在需要包含的頁面固定寫好,如:include("head.php")。遠(yuǎn)程文件包含防范防護(hù)代碼示例01.非必須的情況下設(shè)置allow_url_include和allow_url_fopen為Off狀態(tài);02.對(duì)可以包含的文件進(jìn)行限制,可以使用白名單的方式,或者設(shè)置可以包含的目錄,如open_basedir;03.04.盡量不使用動(dòng)態(tài)包含;嚴(yán)格檢查變量是否已經(jīng)初始化。文件包含攻擊防范07命令執(zhí)行攻擊與防護(hù)030201命令執(zhí)行攻擊原理命令執(zhí)行漏洞原理命令執(zhí)行(CommandExecution)是指應(yīng)用有時(shí)需要調(diào)用一些執(zhí)行系統(tǒng)命令的函數(shù),如:system()、exec()、shell_exec()、passthru()等,代碼未對(duì)用戶可控參數(shù)做過濾,當(dāng)用戶能控制這些函數(shù)中的參數(shù)時(shí),就可以將惡意系統(tǒng)命令拼接到正常命令中,從而造成命令執(zhí)行攻擊。漏洞成因代碼層過濾不嚴(yán)系統(tǒng)的漏洞造成命令注入調(diào)用的第三方組件存在命令執(zhí)行漏洞A;B

先執(zhí)行A,再執(zhí)行B;

A&B

簡(jiǎn)單拼接,AB之間無制約關(guān)系;

A|B

顯示B的執(zhí)行結(jié)果;

A&&B

A執(zhí)行成功,然后才會(huì)執(zhí)行B;

A||B

A執(zhí)行失敗,然后才會(huì)執(zhí)行B。命令執(zhí)行攻擊方法--拼接符命令執(zhí)行攻擊原理STEP1命令執(zhí)行攻擊案例注:有關(guān)于如何利用命令執(zhí)行漏洞獲得系統(tǒng)命令執(zhí)行權(quán)限,請(qǐng)參閱第二章/利用命令執(zhí)行漏洞獲得系統(tǒng)命令執(zhí)行權(quán)限.mp4案例--利用命令執(zhí)行漏洞獲取Webshell測(cè)試拼接符STEP2寫入一句話木馬STEP3訪問一句話木馬STEP3連接一句話木馬命令執(zhí)行防范方法禁用部分系統(tǒng)函數(shù)高危系統(tǒng)函數(shù)可直接禁用,從根本上避免程序中命令執(zhí)行漏洞的出現(xiàn),如passthru()、eval()、exec()、system()等。嚴(yán)格過濾關(guān)鍵字符在利用命令執(zhí)行漏洞時(shí)都會(huì)利用特殊字符進(jìn)行實(shí)現(xiàn),可過濾特殊字符,如"&&"、"|"、";"、"||"等。嚴(yán)格限制允許的參數(shù)類型允許用戶輸入特定的參數(shù)來實(shí)現(xiàn)更豐富的應(yīng)用功能,如果能對(duì)用戶輸入?yún)?shù)進(jìn)行有效的合法性判斷,可避免在原有命令后面拼接多余命令。注:有關(guān)于如何對(duì)命令執(zhí)行漏洞進(jìn)行安全防護(hù),請(qǐng)參閱第二章/對(duì)命令執(zhí)行漏洞進(jìn)行安全防護(hù).mp4為防止攻擊者繞過黑名單校驗(yàn),通過添加白名單,嚴(yán)格限制能夠執(zhí)行的命令。設(shè)置命令白名單命令執(zhí)行防范方法08邏輯漏洞攻擊與防護(hù)2017年6月,劉某在該理財(cái)平臺(tái)發(fā)現(xiàn)了程序上的漏洞,他發(fā)現(xiàn)該平臺(tái)可以通過第三方軟件更改平臺(tái)虛擬賬戶中顯示的充值金額,隨即劉某用自己的身份信息注冊(cè)了該平臺(tái)并實(shí)際操作了一把,事后還將這一漏洞分享給了室友,因他們涉及金額較少,沒有構(gòu)成犯罪。嘗到甜頭的劉某覺得用自己或者朋友的身份信息注冊(cè)有風(fēng)險(xiǎn),所以又聯(lián)系了好友曹某并告訴了這一技術(shù)手法,7月份開始,曹某提供黑卡信息,劉某在理財(cái)平臺(tái)進(jìn)行操作,一共非法獲取三十萬元并瓜分了。之后學(xué)會(huì)這一“技術(shù)”的曹某也利用自己現(xiàn)有的黑卡資源,另外非法獲取了四十余萬元。最終,小劉和小曹以及他們的家人均為他們的行為買了單,拿出家里的錢退贓,劉某和曹某被判處十年以上有期徒刑。案例分析邏輯漏洞攻擊原理邏輯漏洞描述邏輯漏洞是指攻擊者利用業(yè)務(wù)/功能上的設(shè)計(jì)缺陷,獲取敏感信息或破壞業(yè)務(wù)的完整性。在OWASPTOP10中,邏輯漏洞被稱為“不安全的對(duì)象引用,和功能級(jí)訪問控制缺失”。邏輯漏洞的破壞方式并非是向程序添加破壞內(nèi)容,而是利用邏輯處理不嚴(yán)密或者代碼問題或固有不足,操作上并不影響程序的允許,在邏輯上是順利執(zhí)行的。這種漏洞一般防護(hù)手段或設(shè)備無法阻止,因?yàn)樽叩氖呛戏髁恳矝]有防御標(biāo)準(zhǔn)。1243邏輯漏洞分類….….越權(quán)漏洞密碼修改密碼找回….驗(yàn)證碼漏洞….支付漏洞投票/積分/抽獎(jiǎng)短信轟炸….支付邏輯漏洞攻擊原理漏洞描述支付邏輯漏洞是指系統(tǒng)的支付流程中,存在業(yè)務(wù)邏輯層面的漏洞。正常支付流程為:選擇商品和數(shù)量-->選擇支付方式-->生成訂單-->訂單支付-->完成支付。常見漏洞分類金額篡改

支付過程中可以修改支付金額重復(fù)下單

將請(qǐng)求進(jìn)行重放支付繞過

將訂單中的商品數(shù)量修改為負(fù)值其他問題

(程序異常,其他參數(shù)修改導(dǎo)致問題等)STEP4STEP3邏輯漏洞攻擊案例案例1

金額篡改注:有關(guān)于如何利用邏輯漏洞修改賬戶余額,請(qǐng)參閱第二章/利用邏輯漏洞修改賬戶余額為999900元.mp4漏洞原理后臺(tái)計(jì)算總價(jià)的方式為“單價(jià)”x“數(shù)量”,并且允許用戶通過抓包修改單價(jià)或數(shù)量。(允許輸入小數(shù)點(diǎn)和負(fù)數(shù))STEP1選擇商品和數(shù)量STEP2購(gòu)買產(chǎn)品抓包修改訂單金額提交訂單案例2短信轟炸STEP1STEP3STEP2輸入手機(jī)號(hào),發(fā)送驗(yàn)證碼抓包,修改手機(jī)號(hào),重放解碼邏輯漏洞攻擊案例案例3任意用戶注冊(cè)改為1再發(fā)送STEP1STEP2STEP3STEP4打開注冊(cè)頁面填寫任意手機(jī)號(hào)、任意驗(yàn)證碼抓包,并修改返回包的值重放數(shù)據(jù)即可邏輯漏洞攻擊案例邏輯漏洞防范方法3.任意用戶注冊(cè)防護(hù)驗(yàn)證碼設(shè)置為6位數(shù)對(duì)驗(yàn)證碼校驗(yàn)做限制,如:輸錯(cuò)5次,則要求輸入圖片驗(yàn)證碼縮短驗(yàn)證碼有效時(shí)間限制每個(gè)驗(yàn)證碼驗(yàn)證錯(cuò)誤次數(shù)1.金額篡改防護(hù)校驗(yàn)價(jià)格、數(shù)量參數(shù),比如產(chǎn)品數(shù)量只能為正整數(shù),并限制購(gòu)買數(shù)量與第三方支付平臺(tái)檢查,實(shí)際支付的金額是否與訂單金額一致2.短信轟炸防護(hù)

溫馨提示

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

評(píng)論

0/150

提交評(píng)論