版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
萬能密碼登錄—Post型注入攻擊主講人PPT時(shí)間20XX.XXCATALOGUE目錄1.項(xiàng)目描述知識儲備2.創(chuàng)建數(shù)據(jù)庫3.建立基于Session驗(yàn)證的用戶登錄網(wǎng)站4.萬能密碼SQL注入攻擊測試5.萬能密碼SQL注入攻擊防護(hù)6.項(xiàng)目總結(jié)7.項(xiàng)目描述01Part本項(xiàng)目旨在通過實(shí)訓(xùn),使學(xué)員能夠解釋和分析萬能密碼登錄漏洞的Post型SQL注入原理及危害,并應(yīng)用多種方式實(shí)現(xiàn)SQL注入攻擊的防護(hù)。項(xiàng)目目標(biāo)任務(wù)一:建立用戶信息數(shù)據(jù)庫。任務(wù)二:開發(fā)基于Session驗(yàn)證的用戶登錄功能網(wǎng)站,使用Post方式提交用戶參數(shù)。任務(wù)三:實(shí)現(xiàn)基于SQL注入的萬能密碼登錄。任務(wù)四:分析萬能密碼SQL注入原理,實(shí)現(xiàn)多種防護(hù)方式。項(xiàng)目任務(wù)通過本項(xiàng)目實(shí)訓(xùn),學(xué)員可以深入理解Post型SQL注入攻擊的原理和危害,掌握多種防護(hù)方法,為Web安全開發(fā)提供實(shí)踐基礎(chǔ)。項(xiàng)目意義知識儲備02PartGet方式將數(shù)據(jù)以“變量=值”的形式附加到URL后,各變量間用“&”連接,數(shù)據(jù)直接暴露在URL中,安全性較低。Get方式Post方式將表單數(shù)據(jù)放在請求體中,相對隱蔽,適合傳輸大量數(shù)據(jù),但并非絕對安全,仍可能被攔截或篡改。Post方式Get方式數(shù)據(jù)在URL中可見,長度受限;Post方式數(shù)據(jù)在請求體中,長度不受限,相對安全但需正確處理。主要區(qū)別HTML的Post與Get提交信息方式01.HTTP協(xié)議的無狀態(tài)性HTTP協(xié)議無狀態(tài),每個(gè)請求獨(dú)立,服務(wù)器不保存連接狀態(tài),適合瀏覽靜態(tài)文件,但不適合需要狀態(tài)保持的應(yīng)用。02.Session機(jī)制的作用Session機(jī)制通過在服務(wù)器端保存用戶信息,在客戶端保存SessionID,實(shí)現(xiàn)用戶狀態(tài)的保持,常用于登錄驗(yàn)證。Session機(jī)制的原理用戶賬號信息提交用戶在登錄表單輸入賬號和密碼,通過Post或Get方式提交給服務(wù)器,服務(wù)器驗(yàn)證后創(chuàng)建Session并返回SessionID。在Web服務(wù)器建立Session會話服務(wù)器驗(yàn)證用戶信息后,調(diào)用session_start()創(chuàng)建會話,將用戶信息保存在$_SESSION數(shù)組中,客戶端保存SessionID。退出登錄用戶關(guān)閉瀏覽器或主動(dòng)退出登錄時(shí),服務(wù)器端的Session信息應(yīng)被清除,防止攻擊者利用SessionID繞過登錄驗(yàn)證。基于Session機(jī)制的Web登錄驗(yàn)證過程萬能密碼是通過在用戶名或密碼中構(gòu)造特殊SQL語句,破壞原有SQL語句結(jié)構(gòu),繞過登錄驗(yàn)證的一種SQL注入攻擊方式。萬能密碼的定義01用戶輸入的特殊字符串(如'or1=1or')被代入SQL語句后,改變了查詢條件的邏輯,使查詢條件恒成立,從而繞過登錄驗(yàn)證。攻擊原理02萬能密碼SQL注入攻擊的原理攻擊者可篡改網(wǎng)頁內(nèi)容,植入惡意代碼或鏈接,對用戶造成安全威脅。篡改網(wǎng)頁內(nèi)容、網(wǎng)頁掛馬攻擊者可能獲取網(wǎng)站控制權(quán),甚至進(jìn)一步控制服務(wù)器,造成嚴(yán)重安全問題。控制網(wǎng)站、服務(wù)器攻擊者可繞過正常登錄驗(yàn)證,非法訪問系統(tǒng)資源。繞過登錄檢查獲取、篡改數(shù)據(jù)庫信息攻擊者可非法獲取、修改或刪除數(shù)據(jù)庫中的數(shù)據(jù),導(dǎo)致數(shù)據(jù)泄露或損壞。SQL注入攻擊的危害創(chuàng)建數(shù)據(jù)庫03Part腳本內(nèi)容數(shù)據(jù)庫設(shè)計(jì)注意事項(xiàng)密碼存儲方式本書為演示方便,密碼以明文存儲,實(shí)際開發(fā)中應(yīng)采用加密存儲方式,如哈希算法,保護(hù)用戶隱私。數(shù)據(jù)庫設(shè)計(jì)應(yīng)滿足業(yè)務(wù)需求,合理規(guī)劃表結(jié)構(gòu)和字段類型,確保數(shù)據(jù)存儲和查詢效率。在VSCode中創(chuàng)建lab.sql文件,定義數(shù)據(jù)庫lab和表users,插入兩條用戶記錄,為后續(xù)登錄功能提供數(shù)據(jù)支持。創(chuàng)建SQL腳本導(dǎo)入方法以管理員身份登錄MySQL,使用source命令導(dǎo)入lab.sql腳本,檢查導(dǎo)入是否成功。數(shù)據(jù)庫操作規(guī)范數(shù)據(jù)庫操作需謹(jǐn)慎,避免誤操作導(dǎo)致數(shù)據(jù)丟失或錯(cuò)誤,建議在操作前備份數(shù)據(jù)。數(shù)據(jù)庫查詢驗(yàn)證使用select*fromusers;查詢users表記錄,驗(yàn)證數(shù)據(jù)是否正確導(dǎo)入,確保后續(xù)功能測試準(zhǔn)確。將腳本文件導(dǎo)入到數(shù)據(jù)庫建立基于Session驗(yàn)證的用戶登錄網(wǎng)站04Part創(chuàng)建用戶登錄頁面創(chuàng)建login.html文件,定義登錄表單,使用Post方式提交用戶名和密碼,為用戶登錄提供界面。登錄驗(yàn)證后端頁面創(chuàng)建check_login.php文件,接收Post提交的用戶名和密碼,查詢數(shù)據(jù)庫驗(yàn)證用戶信息,創(chuàng)建Session實(shí)現(xiàn)登錄功能。歡迎頁面創(chuàng)建welcome.php文件,驗(yàn)證Session有效性,顯示歡迎信息和退出登錄鏈接,實(shí)現(xiàn)用戶登錄后的頁面跳轉(zhuǎn)。銷毀session頁面創(chuàng)建logout.php文件,銷毀用戶Session,實(shí)現(xiàn)用戶退出登錄功能,確保用戶信息安全。任務(wù)實(shí)現(xiàn)01確保Apache和MySQL服務(wù)正常運(yùn)行,檢查端口是否打開,關(guān)閉防火墻,為功能測試提供穩(wěn)定環(huán)境。測試環(huán)境準(zhǔn)備02輸入正確用戶名和密碼,驗(yàn)證登錄流程是否正常,檢查Session是否正確創(chuàng)建和使用。登錄流程測試03點(diǎn)擊退出登錄鏈接,驗(yàn)證Session是否被正確銷毀,確保用戶退出后無法繼續(xù)訪問受保護(hù)頁面。退出登錄測試功能測試萬能密碼SQL注入攻擊測試05Part用戶名注入在用戶名輸入'or1=1or',密碼隨意輸入,驗(yàn)證是否能繞過登錄驗(yàn)證進(jìn)入系統(tǒng),測試萬能密碼攻擊效果。密碼注入在用戶名隨意輸入,密碼輸入'or'1=1,驗(yàn)證是否能繞過登錄驗(yàn)證,分析與用戶名注入的異同。測試過程0203015.2.1將'or''=''or'代入SQL語句,分析查詢條件邏輯,驗(yàn)證是否能查詢到所有用戶記錄,實(shí)現(xiàn)攻擊。5.2.2使用'or1=1--',分析注釋對SQL語句的影響,驗(yàn)證是否能繞過登錄驗(yàn)證。5.2.3使用'or1=1#,分析井號注釋的效果,驗(yàn)證是否能實(shí)現(xiàn)與其它形式相同的攻擊效果。其它形式的萬能密碼SQL語句結(jié)構(gòu)變化分析用戶輸入的特殊字符串如何改變SQL語句結(jié)構(gòu),使查詢條件恒成立,導(dǎo)致萬能密碼攻擊成功。攻擊原理總結(jié)總結(jié)萬能密碼攻擊的根源在于SQL語句拼接方式,用戶輸入的特殊字符破壞了原有SQL語句的邏輯和結(jié)構(gòu)。0102測試分析萬能密碼SQL注入攻擊防護(hù)06Part正則表達(dá)式規(guī)則使用正則表達(dá)式限制用戶名為5到16位的字母、數(shù)字或下劃線組合,防止用戶輸入特殊字符引發(fā)SQL注入。防護(hù)效果驗(yàn)證測試使用正則表達(dá)式后,萬能密碼是否失效,驗(yàn)證正則表達(dá)式在SQL注入防護(hù)中的有效性。使用正則表達(dá)式限制用戶輸入01使用addslashes()函數(shù)對用戶輸入進(jìn)行轉(zhuǎn)義,防止特殊字符破壞SQL語句結(jié)構(gòu),驗(yàn)證其防護(hù)效果。02使用mysql_real_escape_string()函數(shù)進(jìn)行轉(zhuǎn)義,分析其與addslashes()的區(qū)別和優(yōu)勢,測試防護(hù)效果。03分析轉(zhuǎn)義函數(shù)在寬字節(jié)字符集環(huán)境下的風(fēng)險(xiǎn),討論如何避免轉(zhuǎn)義函數(shù)被繞過。轉(zhuǎn)義函數(shù)風(fēng)險(xiǎn)使用PHP的轉(zhuǎn)義函數(shù)參數(shù)化查詢原理介紹MySQLi參數(shù)化查詢的原理,參數(shù)在SQL語句編譯后綁定,防止SQL注入攻擊。實(shí)現(xiàn)方法使用MySQLi擴(kuò)展實(shí)現(xiàn)參數(shù)化查詢,編寫check_login_mysqli.php文件,驗(yàn)證參數(shù)化查詢的防護(hù)效果。MySQLi參數(shù)化查詢討論P(yáng)DO擴(kuò)展的優(yōu)勢,如支持多種數(shù)據(jù)庫、提供面向?qū)ο蠛瓦^程式編程接口,適合不同開發(fā)需求。PDO擴(kuò)展優(yōu)勢01使用PDO擴(kuò)展實(shí)現(xiàn)參數(shù)化查詢,編寫check_login_pdo.php文件,測試其在SQL注入防護(hù)中的效果。實(shí)現(xiàn)方法02PDO參數(shù)化查詢項(xiàng)目總結(jié)07Part本項(xiàng)目通過實(shí)訓(xùn),成功重現(xià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)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年金融投資顧問考試指南與答案詳解
- 2026年酒店管理專業(yè)考試模擬卷與答案詳解
- 2026年威海職業(yè)學(xué)院單招職業(yè)技能考試備考試題含詳細(xì)答案解析
- 2026年西安生殖醫(yī)學(xué)醫(yī)院招聘(173人)參考考試題庫及答案解析
- 2026年安徽工貿(mào)職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)考試備考題庫含詳細(xì)答案解析
- 2026年九江職業(yè)技術(shù)學(xué)院高職單招職業(yè)適應(yīng)性測試備考題庫及答案詳細(xì)解析
- 2026年上海政法學(xué)院單招綜合素質(zhì)考試模擬試題含詳細(xì)答案解析
- 2026年河南工業(yè)和信息化職業(yè)學(xué)院單招綜合素質(zhì)考試備考試題含詳細(xì)答案解析
- 2026年黔南民族醫(yī)學(xué)高等專科學(xué)校單招綜合素質(zhì)考試備考試題含詳細(xì)答案解析
- 2026年廣東嶺南職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)考試備考試題含詳細(xì)答案解析
- 1101無菌檢查法:2020年版 VS 2025年版對比表
- 醫(yī)務(wù)科副科長醫(yī)務(wù)人員調(diào)配工作方案
- 碳化硅性能參數(shù)及市場趨勢分析
- 魔芋干貨購銷合同范本
- 2025初一英語閱讀理解100篇
- 2025年道路運(yùn)輸安全員兩類人員試題庫及答案
- 保密協(xié)議書 部隊(duì)
- 鋼結(jié)構(gòu)工程變更管理方案
- 辦美國簽證邀請函
- T-CCTASH 003-2025 散貨機(jī)械抓斗的使用要求
- 渡槽修復(fù)施工方案
評論
0/150
提交評論