其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正)

汇总:http://www.cnblogs.com/dunitian/p/4822808.html#mvc

本章Demohttps://github.com/dunitian/LoTCodeBase/blob/master/NetCode/6.网页基础/BMVC5/MVC5Base/Controllers/FormController.cs

这几天忙着帮别人普及安全,今天就把这篇文章结束掉,明天讲下 “过度提交” 的防御。这次开篇就激烈点==》爆破演示:

打开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次就冻结用户吧,冻结之后为了不影响用户正常使用,可以用短信(邮箱)验证来解除冻结

如果是个人站点或者是小站点==》直接极验走起(https://github.com/GeeTeam/gt-csharp-sdk

1.表单

开始今天的讲解,今天说下表单(个人推荐用原生的写法,如果赶时间就用微软的这种封装写法【原因无他,看下就清楚了】)

这个是爆破的返回数据:

原生:

自带:(返回的是当前视图,而且所有的验证都是直接请求服务器,呃,,,,,,不说话)

后端可以考虑这样做,前端还是老老实实的原生态走起吧(可以使用前端框架)

写个简单例子:(我也是最近才用这种方法,若有不当之处欢迎指出~)【说句良心话==》开发效率比以前高的不要不要的....】

说一下,模型注解已经特性相关的东西,下一篇会讲。那个令牌相关的你忽略就可以,后面讲跨站请求的时候会详细说,很多防御方法

定义一个模型

控制器:

视图:(你需要的表单标签基本上都有

效果:

继续深入:http://www.cnblogs.com/dunitian/p/5741874.html#val

探索ASP.NET MVC5系列之~~~3.视图篇(下)---包含常用表单和暴力解猜防御的更多相关文章

  1. 探索ASP.NET MVC5系列之~~~2.视图篇(上)---包含XSS防御和异步分部视图的处理

    其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...

  2. 探索ASP.NET MVC5系列之~~~4.模型篇---包含模型常用特性和过度提交防御

    其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...

  3. 探索ASP.NET MVC5系列之~~~6.Session篇(进程外Session)

    其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...

  4. 探索ASP.NET MVC5系列之~~~1.基础篇---必须知道的小技能

    其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程 汇总:http://www.cnblogs.com/dunitian/p/4822808.html#mvc 本章D ...

  5. 探索ASP.NET MVC5系列之~~~5.缓存篇(页面缓存+二级缓存)

    其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...

  6. 探索ASP.NET MVC5系列

    探索ASP.NET MVC5系列之~~~6.Session篇(进程外Session)     探索ASP.NET MVC5系列之~~~5.缓存篇(页面缓存+二级缓存)     探索ASP.NET MV ...

  7. ASP.NET MVC5+EF6+EasyUI 后台管理系统(33)-MVC 表单验证

    系列目录 注:本节阅读需要有MVC 自定义验证的基础,否则比较吃力 一直以来表单的验证都是不可或缺的,微软的东西还是做得比较人性化的,从webform到MVC,都做到了双向验证 单单的用js实现的前端 ...

  8. [Asp.net MVC]Asp.net MVC5系列——添加视图

    目录 系列文章 概述 添加视图 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 概述 在这一部分我们添加一个新的控制器HelloWorldController类, ...

  9. 三、 添加视图View(ASP.NET MVC5 系列)

    在这一章节我们可以修改HelloWorldController类,通过使用视图模板来封装处理产生给客户端的HTML响应. 我们将使用Razor View engine来创建视图文件.基于Razor的视 ...

随机推荐

  1. Sublime Text3安装JsHint

    介绍 Sublime Text3使用jshint依赖Nodejs,SublimeLinter和Sublimelinter-jshint. NodeJs的安装省略. 安装SublimeLinter Su ...

  2. Asp.Net WebApi核心对象解析(下篇)

    在接着写Asp.Net WebApi核心对象解析(下篇)之前,还是一如既往的扯扯淡,元旦刚过,整个人还是处于晕的状态,一大早就来处理系统BUG,简直是坑爹(好在没让我元旦赶过来该BUG),队友挖的坑, ...

  3. Android中手机录屏并转换GIF的两种方式

    之前在博文中为了更好的给大家演示APP的实现效果,本人了解学习了几种给手机录屏的方法,今天就给大家介绍两种我个人用的比较舒服的两种方法: (1)配置adb环境后,使用cmd命令将手机界面操作演示存为视 ...

  4. (系统架构)标准Web系统的架构分层

    标准Web系统的架构分层 1.架构体系分层图 在上图中我们描述了Web系统架构中的组成部分.并且给出了每一层常用的技术组件/服务实现.需要注意以下几点: 系统架构是灵活的,根据需求的不同,不一定每一层 ...

  5. HTML 事件(四) 模拟事件操作

    本篇主要介绍HTML DOM中事件的模拟操作. 其他事件文章 1. HTML 事件(一) 事件的介绍 2. HTML 事件(二) 事件的注册与注销 3. HTML 事件(三) 事件流与事件委托 4.  ...

  6. java单向加密算法小结(1)--Base64算法

    从这一篇起整理一下常见的加密算法以及在java中使用的demo,首先从最简单的开始. 简单了解 Base64严格来说并不是一种加密算法,而是一种编码/解码的实现方式. 我们都知道,数据在计算机网络之间 ...

  7. 代码的坏味道(21)——中间人(Middle Man)

    坏味道--中间人(Middle Man) 特征 如果一个类的作用仅仅是指向另一个类的委托,为什么要存在呢? 问题原因 对象的基本特征之一就是封装:对外部世界隐藏其内部细节.封装往往伴随委托.但是人们可 ...

  8. 代码的坏味道(14)——重复代码(Duplicate Code)

    坏味道--重复代码(Duplicate Code) 重复代码堪称为代码坏味道之首.消除重复代码总是有利无害的. 特征 两个代码片段看上去几乎一样. 问题原因 重复代码通常发生在多个程序员同时在同一程序 ...

  9. 【SAP业务模式】之ICS(一):业务详述

    PS:本专题系列讲述如何在SAP系统中实现ICS的业务模式,本系列博文系原创,如要转载引用,请保持原文一致并注明出处! SAP系统自身功能非常强大,支持多种业务模式,通过前台后台的配置就可以实现多种效 ...

  10. sqlserver批量修改首字母为大写

    'hello world'  ---->   'Hello world' update tableName set columnName=CHAR(ASCII(SUBSTRING(columnN ...