《WEB安全从入门到放弃》学习笔记1

《WEB安全从入门到放弃》学习笔记1

暴力破解概述
连续性尝试+字典+自动化
暴力破解原理和测试流程
1 确认登录接口的脆弱性
确认目标是否存在暴力破解的漏洞。(确认被暴力破解的“可能性”)
2对字典进行优化
根据实际情况对字典进行优化,提高爆破过程的效率。
3工具自动化操作
配置自动化工具比如线程、超时时间、重试次数等),进行自动化操作。
暴力破解原理和测试流程—字典优化技巧
《WEB安全从入门到放弃》学习笔记1_第1张图片
基于表单的暴力破解实验-burp suite-intruder介绍
Burpsuite 软件简介
Burp Suite 是用于攻击web 应用程序的集成平台。它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程。
所有的工具都共享一个能处理并显示HTTP 消息,持久性,认证,日志,警报的一个强大的可扩展的框架。
target选项卡
用于设置目标,可以通过proxy发送;
Pasitions选项卡
指定选项卡需要暴力破解的参数并设置成变量,同时选择攻击模式;
·Sniper:狙击手——设置一个payload,先将第一个变量用字典进行测试,然后将第二个变量使用字典进行进行测试;
·Battering ram:冲撞车——设置一个payload,所有的变量一起用字典内容被替换,然后一起尝试;
·Ptichfork:草叉型——每个变量设置一个payload,分别使用对应字典对变量进行替换;
·Cluster bomb:焦束炸弹——需要为每个变量设置一个payload,分别使用字典内容组合对变量进行替换;
Payloads选项卡
设置字典,并可以对字典进行统一的策略处理;
Options选项卡
对扫描的线程、失败充实等进行配置;
对结果设置匹配flag:通过一个标识符来区别结果,并在结果中flag出来;
我们一般用验证码来做什么?
1.登录暴力破解
2.防止机器恶意注册
验证码的认证流程

客户端request登陆页面,后台生成验证码:

3.后台使用算法生成图片,并将图片response给客户端;
4.同时将算法生成的值全局赋值到SESSION中;

校验验证码

1.客户端将认证信息和验证码一同提交;
2.后台对提交的验证码与SESSION里面的数值进行比较;

客户端重新刷新页面,再次生成新的验证码:

验证码算法中一半包含随机函数,所以每次刷新都会变;
不安全的验证码——on client常见问题
·使用前段js实现验证码;
·将验证码在cookie中泄漏,容易被获取;
·将验证码在前端源代码中泄漏,容易被获取;
不安全的验证码——on server常见问题
·验证码在后台不过期,导致可以长期使用;
·验证码校验不合格,逻辑出现问题;
·验证码设计的太过简单和有规律,容易被猜解
防暴力破解的措施总结
·设计安全的验证码(安全的流程+复杂而又可用的图形);
·对认证错误的提交进行计数并给出限制,比如连续五次密码错误,锁定两小时;
·必要的情况下,使用双因素认证;
聊一聊token对防暴力破解的意义
一个简单的token实例
《WEB安全从入门到放弃》学习笔记1_第2张图片

一般的做法:
1.将token以“type=‘hidden’”的形式输出在表单中;
2.在提交的认证的时候一起提交,并在后台对其进行校验; 但,由于其token值输出在了前段码中,容易被获取,因此也就失去了防暴力破解的意义。 一般token在防止CSRF上会有比较好的功效。

·

·

你可能感兴趣的:(web安全,web安全,学习笔记)