探索ASP.NET MVC5系列之~~~3.视图篇(下)---包含常用表单和暴力解猜防御
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正)
汇总:http://www.cnblogs.com/dunitian/p/4822808.html#mvc
这几天忙着帮别人普及安全,今天就把这篇文章结束掉,明天讲下 “过度提交” 的防御。这次开篇就激烈点==》爆破演示:
打开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.表单
开始今天的讲解,今天说下表单(个人推荐用原生的写法,如果赶时间就用微软的这种封装写法【原因无他,看下就清楚了】)
这个是爆破的返回数据:
原生:
自带:(返回的是当前视图,而且所有的验证都是直接请求服务器,呃,,,,,,不说话)
后端可以考虑这样做,前端还是老老实实的原生态走起吧(可以使用前端框架)
写个简单例子:(我也是最近才用这种方法,若有不当之处欢迎指出~)【说句良心话==》开发效率比以前高的不要不要的....】
说一下,模型注解已经特性相关的东西,下一篇会讲。那个令牌相关的你忽略就可以,后面讲跨站请求的时候会详细说,很多防御方法
定义一个模型
控制器:
视图:(你需要的表单标签基本上都有)
效果:
探索ASP.NET MVC5系列之~~~3.视图篇(下)---包含常用表单和暴力解猜防御的更多相关文章
- 探索ASP.NET MVC5系列之~~~2.视图篇(上)---包含XSS防御和异步分部视图的处理
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...
- 探索ASP.NET MVC5系列之~~~4.模型篇---包含模型常用特性和过度提交防御
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...
- 探索ASP.NET MVC5系列之~~~6.Session篇(进程外Session)
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...
- 探索ASP.NET MVC5系列之~~~1.基础篇---必须知道的小技能
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程 汇总:http://www.cnblogs.com/dunitian/p/4822808.html#mvc 本章D ...
- 探索ASP.NET MVC5系列之~~~5.缓存篇(页面缓存+二级缓存)
其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...
- 探索ASP.NET MVC5系列
探索ASP.NET MVC5系列之~~~6.Session篇(进程外Session) 探索ASP.NET MVC5系列之~~~5.缓存篇(页面缓存+二级缓存) 探索ASP.NET MV ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(33)-MVC 表单验证
系列目录 注:本节阅读需要有MVC 自定义验证的基础,否则比较吃力 一直以来表单的验证都是不可或缺的,微软的东西还是做得比较人性化的,从webform到MVC,都做到了双向验证 单单的用js实现的前端 ...
- [Asp.net MVC]Asp.net MVC5系列——添加视图
目录 系列文章 概述 添加视图 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 概述 在这一部分我们添加一个新的控制器HelloWorldController类, ...
- 三、 添加视图View(ASP.NET MVC5 系列)
在这一章节我们可以修改HelloWorldController类,通过使用视图模板来封装处理产生给客户端的HTML响应. 我们将使用Razor View engine来创建视图文件.基于Razor的视 ...
随机推荐
- Angular2学习笔记(1)
Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...
- HTML5 input元素新的特性
在HTML5中,<input>元素增加了许多新的属性.方法及控件.本文章分别对这三方面进行介绍. 目录 1. 属性 2. 方法 3. 新控件 1. 属性 <input>元素在H ...
- 用scikit-learn学习BIRCH聚类
在BIRCH聚类算法原理中,我们对BIRCH聚类算法的原理做了总结,本文就对scikit-learn中BIRCH算法的使用做一个总结. 1. scikit-learn之BIRCH类 在scikit-l ...
- 【项目管理】GitHub使用操作指南
GitHub使用操作指南 作者:白宁超 2016年10月5日18:51:03> 摘要:GitHub的是版本控制和协作代码托管平台,它可以让你和其他人的项目从任何地方合作.相对于CVS和SVN的联 ...
- 创建APPID&&部署服务端教程
创建APPID&&部署服务端 一.创建APPID 1.打开https://console.developers.google.com ,左击顶部Project,然后左击创建项目 2.输 ...
- 一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)
在目前的软件项目中,都会较多的使用到对文档的操作,用于记录和统计相关业务信息.由于系统自身提供了对文档的相关操作,所以在一定程度上极大的简化了软件使用者的工作量. 在.NET项目中如果用户提出了相关文 ...
- [systemtap手记]debian体系安装过程
Debian体系,本人测试用机 Ubuntu 11.10 uname -r 查看原本的内核版本为 3.0.0-12-generic 第一步: 安装systemtap包 $ sudo apt-get i ...
- iOS微信里打开app,Universal Links
这两天在弄分享,从第三方应用或者浏览器打开自己app的东西 传统的方式是通过URL Scheme的方式,但是iOS9以后又出了新的更完美的方式Universal Links. 传统的URL Schem ...
- BPM配置故事之案例3-参与者与数据自动加载
这才过了两天,阿海又来了. 阿海:公司决定改进管理方式,以后物资申请的申请人和申请部门要写具体使用人的名字和部门了. 小明:不是要让我改回去吧? 阿海:那太麻烦了,你能不能把申请人改成选择,选好人自动 ...
- iOS:以前笔记,未整理版。太多了,先放着吧。。。。。。。
1. -(void)timetick { _d = 0; NSTimer *newtime =[NSTimer scheduledTimerWithTimeInterval:1 target:self ...