1. 程式人生 > >探索ASP.NET MVC5系列之~~~3.檢視篇(下)---包含常用表單和暴力解猜防禦

探索ASP.NET MVC5系列之~~~3.檢視篇(下)---包含常用表單和暴力解猜防禦

其實任何資料裡面的任何知識點都無所謂,都是不重要的,重要的是學習方法,自行摸索的過程(不妥之處歡迎指正)

這幾天忙著幫別人普及安全,今天就把這篇文章結束掉,明天講下 “過度提交” 的防禦。這次開篇就激烈點==》爆破演示:

開啟Burp

 

設定監聽埠==》8080

設定一下代理:

下一步

 

登陸失敗,檢視一下Request和Response

準備工具

 

設定要爆破的欄位

 

載入字典,啟用攻擊。(Options裡面可以設定執行緒,結果過濾之類的,可以自行設定)

開始了~專門看不同長度的,基本上都是正確的返回

看一下密碼是多少===》net1

看看Response返回是否是true==》對的

登入看看==》成功進入後臺!

---------------------------------------------------------------------------------------------------------

可能有些人只對這個爆破感興趣,那我說下怎麼防禦吧:

1.一般網站做法都是通過驗證碼,然後就有了驗證碼一代,二代,三代==>我推薦,”極驗“(你有比較不錯的也可以跟我說下,大家互助)。驗證碼大家都知道有破解的,比如各大打碼平臺,有機器識別,有人工打碼等

2.更高階一點做法就是各種跳轉,登入失敗跳xxx頁面,登入成功跳xxx頁面,這樣可以給攻擊者增大攻擊難度===》其實也沒啥難度,設定一下跟著301重定向就可以了,主要是難倒小菜鳥

3.然後就是凍結多次登入的IP,當登入次數一點程度的時候,就凍結IP一段時間,這樣也是增加了攻擊難度===》呃,,,比上一個麻煩一點,IP更換工具網上還是有各種的

4.通用方法就是凍結使用者(限制次數),比如設定一個多少時間間隔內密碼出錯不能超過5次。爆破次數這麼少基本上破不了了,但這也影響了正常使用者的正常使用

5.主動攻擊,這個方法是我學生時代畢業答辯的時候提出來的,除DDos外(這個反擊太耗流量)的其他攻擊,只要累計一定上限制,我會利用公司所有伺服器資源,所有客戶資源對攻擊者進行DDos攻擊,我一直奉信一個原則,被動挨打不如主動攻擊

推薦做法==》正常情況下用簡單驗證,比如這種的==》1+2=? ,如果出錯3次左右就換你原來的複雜驗證碼。如果再出錯3次就凍結使用者吧,凍結之後為了不影響使用者正常使用,可以用簡訊(郵箱)驗證來解除凍結

1.表單

開始今天的講解,今天說下表單(個人推薦用原生的寫法,如果趕時間就用微軟的這種封裝寫法【原因無他,看下就清楚了】)

這個是爆破的返回資料:

原生:

自帶:(返回的是當前檢視,而且所有的驗證都是直接請求伺服器,呃,,,,,,不說話)

後端可以考慮這樣做,前端還是老老實實的原生態走起吧(可以使用前端框架)

寫個簡單例子:(我也是最近才用這種方法,若有不當之處歡迎指出~)【說句良心話==》開發效率比以前高的不要不要的....】

說一下,模型註解已經特性相關的東西,下一篇會講。那個令牌相關的你忽略就可以,後面講跨站請求的時候會詳細說,很多防禦方法

定義一個模型

控制器:

檢視:(你需要的表單標籤基本上都有

 效果:

相關推薦

探索ASP.NET MVC5系列~~~3.檢視---包含常用暴力防禦

其實任何資料裡面的任何知識點都無所謂,都是不重要的,重要的是學習方法,自行摸索的過程(不妥之處歡迎指正) 這幾天忙著幫別人普及安全,今天就把這篇文章結束掉,明天講下 “過度提交” 的防禦。這次開篇就激烈點==》爆破演示: 開啟Burp   設定監聽埠==》8080 設定一下代理:

探索ASP.NET MVC5系列~~~2.檢視---包含XSS防禦非同步分部檢視的處理

其實任何資料裡面的任何知識點都無所謂,都是不重要的,重要的是學習方法,自行摸索的過程(不妥之處歡迎指正) 4.共用其他檢視 不同控制器渲染同一個檢視檔案。這個應用場景還是比較多的,比如同樣是Article的集合,一個是顯示最新文章列表,一個是顯示文章列表,一個是顯示編輯推薦文章列表,基

探索ASP.NET MVC5系列~~~5.快取頁面快取+二級快取

其實任何資料裡面的任何知識點都無所謂,都是不重要的,重要的是學習方法,自行摸索的過程(不妥之處歡迎指正) 這次來篇放鬆的,咱們不要老是說安全相關的東西。快取這東西並不是MVC獨有的,N年前就有了,簡單介紹一下平時專案裡面使用的(Redis,Memcache等下次說)  1.頁面快取:

探索ASP.NET MVC5系列~~~4.模型---包含模型常用特性過度提交防禦

@model Register @using (Html.BeginForm()) { @Html.AntiForgeryToken() <div class="form-horizontal"> <h4>Register

探索ASP.NET MVC5系列~~~1.基礎---必須知道的小技能

其實任何資料裡面的任何知識點都無所謂,都是不重要的,重要的是學習方法,自行摸索的過程 MVC==>Model View Controller  Model ====>模型就是要去顯示,儲存,建立,更新和刪除的物件(實體) View =====>檢視是使用者看到並與之互動的介

ASP.NET MVC5+EF6+EasyUI 後臺管理系統87-MVC Excel導入導出

.net本文示例代碼下載: 鏈接:http://pan.baidu.com/s/1jHBdgCA 密碼:hzh7ps:Vs數據庫腳本在解壓目錄下,修改web.config數據庫鏈接,示例代碼包含:導入,導出,上傳前言:導入導出實在多例子,很多成熟的組建都分裝了導入和導出,這一節演示利用LinqToExcel組

Asp.net Core 系列--3.領域、倉儲、服務簡單實現

ChuanGoing 2019-11-11     距離上篇近兩個月時間,一方面時因為其他事情耽擱,另一方面也是之前準備不足,關於領域驅動有幾個地方沒有想通透,也就沒有繼續碼字。目前網路包括園子裡大多領域驅動設計的文章,關於倉儲者一層都沒有詳細的說明,只是簡單的一筆帶過:領域驅

asp.net core 系列3 檢視以及檢視與控制器

# 0.前言 在之前的幾篇中,我們大概介紹瞭如何建立一個asp.net core mvc專案以及http請求如何被路由轉交給對應的執行單元。這一篇我們將介紹一下控制器與檢視直接的關係。 # 1. 檢視 這裡的檢視不是資料庫裡的檢視,是一種展示技術。在asp.net core mvc專案中檢視是指以csh

ASP.NET MVC5+EF6+EasyUI 後臺管理系統1-前言與目錄持續更新中...

編碼規範 圖標 pri log 任務 ros 部署 基本 form 開發工具:VS2015(2012以上)+SQL2008R2以上數據庫    您可以有償獲取一份最新源碼聯系QQ:729994997 價格 666RMB 升級後界面效果如下: 日程管理 http://

ASP.NET MVC5+EF6+EasyUI 後臺管理系統65-MVC WebApi 用戶驗證 (1)

screen 屬性 access override jquery true mod 解析 action 系列目錄 前言: WebAPI主要開放數據給手機APP,其他需要得知數據的系統,或者軟件應用,所以移動端與系統的數據源往往是相通的。 Web 用戶的身份驗證,及

ASP.NET MVC5+EF6+EasyUI 後臺管理系統4-創建項目解決方案

構建 文章 數據庫 操作 webapi http 業務 pps 技術分享 系列目錄 前言 為了符合後面更新後的重構系統,文章於2016-11-1日重寫 設計中術語,概念這種東西過於模糊,我們必須學習累積才能認識這些概念模型。 我無法用文章來下詳細解析此系統的深層概念,需要

ASP.NET MVC5+EF6+EasyUI 後臺管理系統62-EF鏈接串加密

image title orm mst .... 比較 string類 sin isn 前言:   這一節提供一個簡單的功能,這個功能看似簡單,找了一下沒找到EF鏈接數據庫串的加密幫助文檔,只能自己寫了,這樣也更加符合自己的加密要求 有時候我們發布程序為了避免程序外的

ASP.NET MVC5+EF6+EasyUI 後臺管理系統88-Excel匯入匯出-主從結構匯出

前言 前面一篇詳細講解了匯入匯出,本節演示混合結構的匯出功能!同時提供程式碼下載.. 先看效果圖:這個一個混合的Excel,列表與自定義資訊的混合!   我們的步驟大概分為以下幾步 1.模擬資料庫資料 2.建立工作簿 3.填充固定資料 4.合併單元格 5.處理動態資料  

ASP.NET MVC5+EF6+EasyUI 後臺管理系統17-LinQ動態排序

系列目錄 首先修復程式中的一個BUG這個BUG在GridPager類中,把sord修改為sort這個名稱填寫錯誤,會導致後臺一直無法獲取datagrid的排序欄位 本來是沒有這一講的,為了使20行的程式碼精簡成2行,我查閱了一些資料,借鑑了一些大神的建議,首先感謝第八講中,1

ASP.NET MVC5+EF6+EasyUI 後臺管理系統20-許可權管理系統-根據許可權獲取選單

系列目錄 不知不覺到20講,真是漫長的日子,可惜最近工作挺忙,要不可以有更多的時間來更新,多謝大家的一路支援.如果你覺得好,記得幫我點選推薦^-^ 我們在之前已經插入一些真實資料,其中包含了一個使用者和樣例程式SysSample的許可權,並實現了使用者的登入。 但有的朋友對錶

ASP.NET MVC5+EF6+EasyUI 後臺管理系統90-EF 批量操作

這次我們來看 EntityFramework-Plus(免費開源) 庫的用法相比其他擴充套件庫,這個更加新並且用法更加簡單這是一個對Entity Framework進行擴充套件的類庫.支援EF EF5, EF6, EF Core,來彌補EF目前的短板GitHub地址 http

ASP.NET MVC5+EF6+EasyUI 後臺管理系統5-EF增刪改查

using System; using System.Collections.Generic; using System.Linq; using Apps.Models; using Apps.Common; using Apps.IBLL; using Apps.IDAL; using Apps.DAL;

ASP.NET MVC5+EF6+EasyUI 後臺管理系統33-MVC 驗證

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.ComponentModel.DataAnnotations; using System.Web.Mvc; u

ASP.NET MVC5+EF6+EasyUI 後臺管理系統89-國際化,本地化,多語言應用

開篇 早年寫過一篇多語言的應用 :   本地化(多語言)   講述瞭如何建立多語言的資原始檔,並利用資原始檔來獲得頁面和請求的語言屬性 本次補充這篇文章,的原因是在實際專案中,有多種需要多語言的情況 比如:日誌要根據當前語言顯示 而有些情景比較複雜,我們可能的key是

死磕 java同步系列AQS終面試

問題 (1)AQS的定位? (2)AQS的重要組成部分? (3)AQS運用的設計模式? (4)AQS的總體流程? 簡介 AQS的全稱是AbstractQueuedSynchronizer,它的定位是為Java中幾乎所有的鎖和同步器提供一個基礎框架。 在之前的章節中,我們一起學習了ReentrantLock、R