Web安全與防護 (微課版) 課件 02-3 項目二 任務三登錄認證漏洞檢測與驗證、02-4 項目二 任務四安全的登錄認證_第1頁
Web安全與防護 (微課版) 課件 02-3 項目二 任務三登錄認證漏洞檢測與驗證、02-4 項目二 任務四安全的登錄認證_第2頁
Web安全與防護 (微課版) 課件 02-3 項目二 任務三登錄認證漏洞檢測與驗證、02-4 項目二 任務四安全的登錄認證_第3頁
Web安全與防護 (微課版) 課件 02-3 項目二 任務三登錄認證漏洞檢測與驗證、02-4 項目二 任務四安全的登錄認證_第4頁
Web安全與防護 (微課版) 課件 02-3 項目二 任務三登錄認證漏洞檢測與驗證、02-4 項目二 任務四安全的登錄認證_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

項目二

安全的登錄認證Web安全與防護本任務要點學習目標驗證碼重放漏洞用戶探測漏洞弱口令漏洞能夠檢測出登錄認證中存在的漏洞。能夠對登錄認證中存在的漏洞進行安全驗證。任務三

登錄認證漏洞檢測與驗證目錄CONTENTS01/驗證碼重放漏洞02/用戶探測漏洞03/弱口令漏洞驗證碼重放漏洞01什么是驗證碼重放漏洞?驗證碼通常用于防止惡意機器人和自動程序攻擊。當用戶嘗試登錄或執(zhí)行敏感操作時,系統(tǒng)會要求用戶輸入驗證碼,以證明其是真實用戶而不是機器人。驗證碼通常是由一些數(shù)字、字母、符號等組成的圖形或文字,用戶需要正確地輸入這些信息才能通過驗證。驗證碼重放漏洞(CAPTCHAReplayAttack)是一種安全漏洞,攻擊者通過重復利用有效的驗證碼來偽造或冒充合法用戶進行惡意操作。驗證碼重放漏洞通常是由于使用了弱隨機數(shù)生成算法、固定驗證碼等安全措施不當所導致的。攻擊者可以通過抓取合法用戶在系統(tǒng)中使用的驗證碼,然后將其多次重復使用,以達到欺騙系統(tǒng)的目的。啟動Burp后查看Option頂部菜單欄選擇Proxy啟動工具再次修改vertify字段為原正確驗證碼,服務端響應顯示顯示用戶名錯誤重放驗證碼設置對本地8080端口進行監(jiān)聽配置端口修改vertify字段為錯誤的驗證碼,并發(fā)送請求包,服務端響應顯示驗證碼不正確使用錯誤驗證碼訪問登錄頁輸入任意用戶名、密碼并輸入正確的驗證碼訪問登錄頁點擊左上角橙色Send按鈕發(fā)送請求,回顯顯示用戶名錯誤使用正確驗證碼在Burp中將Intercept切換為on開啟攔截查看重發(fā)器中的請求體中vertify字段查看請求體在博客系統(tǒng)后臺登錄頁面中點擊登錄并在Burp中查看請求攔截請求在Burp中鼠標右鍵選中SendToRepeater轉發(fā)至重發(fā)器驗證碼重放漏洞01驗證碼重放漏洞02什么是驗證碼重放漏洞?例如在登陸的地方設置訪問一個腳本文件,該文件生成含驗證碼的圖片并將值寫入到session里,提交的時候驗證登陸的腳本就會判斷提交的驗證碼是否與session里的一致。如果服務器端受理請求后,沒有將上一次保存的session驗證碼及時清空,將會導致驗證碼可重復使用。Clusterbomb(集束炸彈模式)Batteringram(攻城錘模式)Pitchfork(草叉模式)Sniper(狙擊手模式)Burp測試器的四種模式驗證碼重放漏洞02使用Burp攔截登錄請求并轉發(fā)至Intruder中轉發(fā)請求至測試器點擊Clear清除Burp自動添加的payload清除所有攻擊負載使用Sniper模式配置username為Payload配置攻擊方式切換至Payloads選項對payload進行配置Payloads配置在PayloadOptions中配置測試字典,點擊Load加載字典配置測試字典通過Length排序快找出正確的用戶名查看測試結果點擊右上方Startattack開始測試開始測試驗證碼重放漏洞02弱口令漏洞03什么是弱口令漏洞?弱口令是指系統(tǒng)登錄口令的設置強度不高,容易被攻擊者猜到或破解。造成弱口令的主要原因是系統(tǒng)的運維人員、管理人員安全意識不足。常見的弱口令形式包括:系統(tǒng)出廠默認口令沒有修改;密碼設置過于簡單,如口令長度不足,單一使用字母或數(shù)字;使用了生日、姓名、電話號碼、身份證號碼等比較容易被攻擊者猜到的信息設置口令;設置的口令屬于流行口令庫中的流行口令。使用Burp攔截登錄請求并轉發(fā)至Intruder中轉發(fā)請求至測試器點擊Clear清除Burp自動添加的payload清除所有攻擊負載使用Sniper模式配置password為Payload配置攻擊方式切換至Payloads選項對payload進行配置Payloads配置在PayloadOptions中配置測試字典,點擊Load加載字典配置測試字典通過查看響應體確定正確的密碼查看測試結果點擊右上方Startattack開始測試開始測試弱口令漏洞03課堂實踐一、任務名稱:獲取博客系統(tǒng)登錄權限二、任務內(nèi)容:通過驗證碼重放、用戶名探測、弱口令漏洞組合的方式獲取到博客系統(tǒng)后臺。三、工具需求:Burp四、任務要求:完成實踐練習后,由老師檢查完成情況。課堂思考一、如何避免驗證碼重放?二、如何避免用戶名被暴力破解?三、如何避免密碼被暴力破解?四、登錄認證過程中還可能存在哪些問題?課后拓展:登錄認證漏洞挖掘請同學們對博客系統(tǒng)進行測試、找到博客系統(tǒng)重登錄認證部分還存在哪些問題并思考如何解決。THANK

YOUToBeContinued項目二

安全的登錄認證Web安全與防護本任務要點學習目標驗證碼重放漏洞修復用戶探測漏洞修復弱口令漏洞修復能夠修復登錄認證中存在的漏洞。能夠對已修復的漏洞進行復測。任務四

安全的登錄認證目錄CONTENTS01/驗證碼重放漏洞修復02/用戶探測漏洞修復03/弱口令漏洞修復驗證碼重放漏洞修復01什么是驗證碼重放漏洞修復?為了避免驗證碼重放漏洞的發(fā)生,開發(fā)人員應該使用強隨機數(shù)生成算法、動態(tài)驗證碼等更為安全的措施,以增強系統(tǒng)的安全性。此外,定期檢查系統(tǒng)漏洞并及時修復也是防止此類漏洞發(fā)生的有效方法。驗證碼重放漏洞修復01為了了解驗證碼機制的重要性,我們可以了解博客系統(tǒng)源碼中admin/code.php生成驗證碼的方式:完整代碼見教材2.4.1將生成的驗證碼字符串存儲到PHP會話中。admin/code.php驗證碼重放漏洞修復01導致驗證碼重放的漏洞在于:POST提交的驗證碼值小寫并存儲到vertify變量等待使用、然后與之前存儲在Session會話中的驗證碼進行比對只有結果一致才能進入用戶名密碼校驗的邏輯中。完整代碼見教材2.4.1admin/check.php驗證碼重放漏洞修復01修復該漏洞最方便直接的方式即是在用戶請求admin/check.php后將存儲在Session會話中的驗證碼值銷毀即可讓驗證碼只能使用一次、防止出現(xiàn)驗證碼重放的問題。完整代碼見教材2.4.1admin/check.php驗證碼重放漏洞修復01改完成后,我們可以看到生成驗證碼的源代碼比較混亂也不便于調(diào)用,我們進行使用函數(shù)封裝對代碼就行優(yōu)化,修改博客系統(tǒng)源碼admin/code.php中的代碼為以下代碼完整代碼見教材2.4.1admin/code.php驗證碼重放漏洞修復01修復該漏洞最方便直接的方式即是在用戶請求admin/check.php后將存儲在Session會話中的驗證碼值銷毀即可讓驗證碼只能使用一次、防止出現(xiàn)驗證碼重放的問題。完整代碼見教材2.4.1admin/check.php驗證碼重放漏洞修復01修改完成后,我們需要對實現(xiàn)功能進行功能測試。首先登錄http://localhost/admin/login.php網(wǎng)址;其次輸入用戶名密碼:admin/admin;輸入正確的驗證碼在Burp中開啟截斷并點擊登錄,將Burp截斷的請求發(fā)送至Repeater中。設置正確的登錄信息驗證碼重放漏洞修復01點擊Send獲取結果,此次結果應為‘登錄成功’登錄成功的響應使用更加安全的驗證碼形式驗證碼重放漏洞修復01強制使用HTTPS限制驗證碼有效期限制驗證碼使用次數(shù)驗證碼加密實現(xiàn)安全的隨機數(shù)生成添加防止機制避免驗證碼重放漏洞的措施什么是用戶名探測漏洞修復?用戶名探測漏洞是一種常見的安全漏洞,它允許攻擊者通過系統(tǒng)的反饋信息來確定哪些用戶名是有效的。這種漏洞通常存在于登錄界面,當輸入錯誤的用戶名時,系統(tǒng)可能會返回不同的錯誤消息,從而讓攻擊者能夠區(qū)分用戶名是否存在。在之前獲取管理員用戶名密碼的測試中,我們可以成功爆破出用戶名的根本原因在于,當我們提交錯誤的用戶名時,博客系統(tǒng)會明確響應我們用戶名錯誤。用戶名探測漏洞修復02用戶名探測漏洞修復02我們可以發(fā)現(xiàn)進行用戶認證的邏輯為通過將用戶提交的密碼進行MD5加密、并將用戶提交的用戶名帶入數(shù)據(jù)庫查詢,如果未查詢到該用戶名則提示用戶名錯誤,查詢到用戶名正確但密碼錯誤則提示密碼錯誤。這是導致黑客便于猜解用戶名的根本原因。最簡單的解決方案則是將用戶名錯誤以及密碼錯誤的響應提示設置得較為模糊例如:用戶名或密碼錯誤、登錄失敗、請求錯誤等讓攻擊者無法判斷是用戶名錯誤還是密碼錯誤。這樣至少會延長數(shù)倍的攻擊時長。完整代碼見教材2.4.2admin/check.php為了驗證是否修改該漏洞,我們需要:訪問后臺登陸頁面,輸入錯誤的用戶名正確的密碼進行查看響應;緊接著輸入正確的用戶名及錯誤的密碼查看響應。錯誤用戶名的響應結果用戶名探測漏洞修復02錯誤用戶名的響應結果用戶名探測漏洞修復02使用安全的開發(fā)實踐可以限制用戶登錄嘗試次數(shù),例如嘗試3次失敗后鎖定賬戶??梢栽诘卿涍^程中添加驗證碼,以防止攻擊者進行自動化的嘗試。可以使用多重身份驗證,例如短信驗證碼或令牌,提高登錄過程的安全性??梢允褂冒踩O(jiān)測系統(tǒng)來監(jiān)測異常登錄行為,及時發(fā)現(xiàn)并阻止攻擊者。在設計和開發(fā)登錄頁面時,應該采用安全的開發(fā)實踐,包括對輸入數(shù)據(jù)進行驗證和過濾,防止SQL注入、XSS等攻擊。用戶應該使用強密碼,包含數(shù)字、字母和特殊字符。在登錄過程中,不應該泄露任何有關用戶名或密碼是否存在的信息。監(jiān)測異常登錄行為使用多重身份驗證添加驗證碼禁止泄露錯誤信息限制登錄次數(shù)使用強密碼用戶名探測漏洞的修復措施弱密碼漏洞修復03什么是弱密碼漏洞修復?弱密碼漏洞是指用戶設置的密碼強度不夠,容易被他人猜測或通過工具破解,從而導致賬戶安全性降低的問題。我們則需要采取一些措施來避免用戶名弱密碼和暴力破解漏洞的發(fā)生。這段代碼存在弱密碼漏洞的原因是在用戶輸入的密碼被MD5加密后直接與數(shù)據(jù)庫中存儲的密碼進行比對。這種方式容易受到彩虹表等攻擊手段的破解,導致安全性問題。我們修復可采用以下方式:增加鹽值、使用更安全的加密方式、限制登錄次數(shù)、強制用戶設置更復雜的密碼。但最好的方式是采用多種安全措施相結合,以達到更高的安全性。我們使用限制登錄次數(shù)的方案防止暴力破解的發(fā)生。

首先獲取用戶的IP地址,可以使用$_SERVER[‘REMOTE_ADDR’]來獲取。其次判斷當前IP地址是否已經(jīng)在記錄中,如果沒有則新增一條記錄,記錄當前IP地址和登錄次數(shù)為1,如果已經(jīng)存在,則將對應的登錄次數(shù)加1。接著判斷認證次數(shù)是否超過限制,如果超過則禁止登錄并給出提示信息。最后如果登錄成功,則刪除記錄中對應的IP地址。完整代碼見教材2.4.3admin/check.php弱密碼漏洞修復03首先為了記錄認證嘗試的次數(shù),我們創(chuàng)建了一個名為blog_login_log的日志表,并且在其中存儲了每個登錄嘗試的IP地址、時間戳。完整代碼見教材2.4.3弱密碼漏洞修復03修改代碼以此來對弱密碼漏洞修復進行測試。先進行驗證碼校驗,如果驗證碼不正確,直接返回錯誤提示信息。接著對IP地址在單位時間內(nèi)的認證次數(shù)進行限制,如果超過了限制次數(shù),也返回錯誤提示信息。完整代碼見教材2.4.3弱密碼漏洞修復03然后對用戶名和密碼進行校驗,如果校驗通過,記錄登錄成功日志并跳轉到主頁,否則記錄登錄失敗日志并返回錯誤提示信息。完整代碼見教材2.4.3弱密碼漏洞修復03驗證漏洞修復,連續(xù)5次輸入錯誤的密碼第六次登錄會提示認證失敗次數(shù)過多就會出現(xiàn)圖中情況。弱密碼漏洞修復03弱密碼漏洞的修復措施對密碼進行加密存儲,確保用戶密碼不會被明文保存在系統(tǒng)中。密碼加密使用安全的密碼哈希算法,例如SHA-256、bcrypt等,確保密碼哈希值不容易被猜測。密碼哈希算法對于登錄失敗次數(shù)達到一定限制的用戶賬戶,可以采取一定的安全措施,例如鎖定賬戶、需要管理員手動解鎖等。登錄失敗次數(shù)限制使用安全監(jiān)測系統(tǒng),對登錄行為進行監(jiān)測,發(fā)現(xiàn)異常行為及時采取相應的防護措施。安全監(jiān)測采取一些技術措施,例如增加訪問延時、增加驗證碼等,防止暴力破解攻擊。防止暴力破解加強用戶的安全教育和培訓,提高用戶的安全意識和密碼管理能力。教育培訓制定密碼策略,包括密碼長度、密碼復雜度、密碼有效期等要求,確保用戶使用足夠強度的密碼。密碼策略弱密碼漏洞修復03用戶登錄時,使用多因素身份驗

溫馨提示

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

評論

0/150

提交評論