白帽子讲web安全——认证与会话管理
在看白帽子讲web安全,刚好看到认证与会话管理:也就是我们在平常渗透测试中遇到最多的登录页面,也即是用户名和密码认证方式,这是最常见的认证方式。
了解两个概念:认证和授权
1):认证的目的是为了认出用户是谁。
2):授权的目的是为了决定用户能够做什么。
书中列举的例子很形象,假设系统是一间房子,持有钥匙的人可以进门进入房子,那么屋子就是通过“锁和钥匙的匹配”来进行认证的,认证的过程就是开锁的过程。
钥匙在认证过程中,被称为“凭证”,开门的过程,在互联网里对应的是登录。
可是开门之后,什么事情能做,什么事情不能做,就是“授权”的管辖范围了。
记录下之前在渗透过程中遇到登录页面的问题,和书中所说相对应起来的话,一个是对认证,一个是对授权:
1):在认证的时候,单独对登录页面来说,可以去尝试的测试:
- 万能密码登录
- SQL注入
- 漏扫扫描,常用appscan、awvs开源工具来扫描
- XSS
- 爆破,登录页面的爆破,最常见是遇到验证码,尝试验证码绕过;或者限制的登录次数
- 一个验证码可以多次使用
- 验证码无效
- 限制登录次数,看是不是限制了IP
- 限制账号错误次数,查看是不是请求包中某个参数影响,可能是session中的值,或者post传递的值,去掉这个影响参数,尝试能不能够绕过限制
- 端口扫描,nmap,来查看端口常见漏洞
- 目录扫描,有没有未授权访问
2):在授权范围内,也是单独对登录页面来说,可以去尝试的测试:
- 尝试用低权限的账号越权登录高权限账号
- 在忘记密码处,越权修改手机或者邮箱
- 忘记密码处,越权修改别的账号密码
以上是临时能够想起来的。
这章小结:
session劫持就是一种通过窃取用户sessionID后,使用该sessionID登录进目标账户的攻击方法,此时攻击者实际是使用了目标账户的有效session。如果sessionID是保存在cookie中的,则这种攻击可以称为cookie劫持。
这里有kxlzx大神的一篇博客,做了研究,实例:
https://www.inbreak.net/archives/287
白帽子讲web安全——认证与会话管理的更多相关文章
- 读>>>>白帽子讲Web安全<<<<摘要→我推荐的一本书→1
<白帽子讲Web安全>吴翰清著 刚开始看这本书就被这本书吸引,感觉挺不错,给大家推荐下,最近读这本书,感觉不错的精华就记录下, 俗话说>>>好脑袋不如一个烂笔头< ...
- 《白帽子讲Web安全》- 学习笔记
一.为何要了解Web安全 最近加入新公司后,公司的官网突然被Google标记为了不安全的诈骗网站,一时间我们信息技术部门成为了众矢之的,虽然老官网并不是我们开发的(因为开发老官网的前辈们全都跑路了). ...
- 读书笔记——吴翰清《白帽子讲Web安全》
目录 第一篇 世界观安全 一 我的安全世界观 第二篇 客户端脚本安全 一 浏览器安全二 跨站脚本攻击(XSS)三 跨站点请求伪造(CSRF)四 点击劫持(ClickJacking)五 HTML5 安全 ...
- 白帽子讲web安全——访问控制
上一章说的认证与会话管理,这章是访问控制,刚看访问控制这章的时候,感觉跟上章的“授权”没什么区别,第一感受就是“授权”. 之后看了才进一步了解,“授权”是好比屋子的主人进来了,那么他可以坐在客厅,也可 ...
- 白帽子讲web安全——一个安全解决方案的诞生细节
1.白帽子:做安全的人.主要做的事,防御,是制定一套解决攻击的方案.而不是只是解决某个漏洞. 2.黑帽子:现在说的黑客.让web变的不安全的人.利用漏洞获取特权.主要做的事,攻击,组合各种方法利用漏洞 ...
- 白帽子讲web安全读后感
又是厚厚的一本书,为了不弄虚做假,只得变更计划,这一次调整为读前三章,安全世界观,浏览器安全和xss.其它待用到时再专门深入学习. 吴翰清是本书作者,icon是一个刺字,圈内人称道哥.曾供职于阿里,后 ...
- 白帽子讲web安全——白帽子兵法(设计安全方案中的技巧)
1.Secure By Default原则 白名单:筛选出被允许的,屏蔽其他. 黑名单:屏蔽可能造成的威胁. 2.XSS和SSH XSS攻击:跨站脚本(cross site script)攻击是指恶意 ...
- 《白帽子讲web安全》——吴瀚清 阅读笔记
浏览器安全 同源策略:浏览器的同源策略限制了不同来源的“document”或脚本,对当前的“document”读取或设置某些属性.是浏览器安全的基础,即限制不同域的网址脚本交互 <scr ...
- 白帽子讲Web安全2.pdf
XSS构造技巧 利用字符编码: var redirectUrl="\";alert(/XSS/);"; 本身没有XSS漏洞,但由于返回页面是GBK/GB2312编码的“% ...
随机推荐
- 【Oozie】ambari安装oozie失败
之前对azkaban的研究比较多,现在开个新坑,对Oozie开始深入了解 Traceback (most recent call last): File "/var/lib/ambari-a ...
- innerHTML,innerText,textContent,outerHTML的用法以及区别
innerHTML获取的是对象起始的位置到终止位置全部内容,包含html标签. innerText和textContent结果是一样的,不包含标签,直接获取标签内的内容,区别是两者浏览器的兼容性. o ...
- 沉淀再出发:如何在eclipse中查看java的核心代码
沉淀再出发:如何在eclipse中查看java的核心代码 一.前言 很多时候我们在eclipse中按F3键打算查看某一个系统类的定义的时候,总是弹出找不到类这样的界面,这里我们把核心对应的代码加进 ...
- 天池精准医疗大赛——人工智能辅助糖尿病遗传风险预测
作为天池上的新手,第一次参加天池阿里云线上的比赛,糖尿病预测, 一般的数据挖掘比赛,流程:数据清洗,特征工程(找特征,特征组合),不断的尝试的不同算法,不断调参,也可以考虑将多个模型进行线性组合 大赛 ...
- c/c++ 中#ifndef和#endif的作用及使用
有时候我们在编程的时候,希望有些代码在我们需要时编译,不需要时不编译,也就是让它快速注释,这时候即可以考虑#ifdef和#endif,它们会使我们的编译器进行选择性编译.使用方法如下: #includ ...
- 020.2.2 runtime类
基本不用,简单看一下就行了 1.属于单例的一个实例,可以通过getRuntime()获取对象Runtime r = Runtime.getRuntime();r.exec("winmine. ...
- JavaScript浏览器对象模型(BOM)之history对象
history 对象是 window 对象的属性,它保存着用户上网的记录,从窗口被打开的那一刻算起. 一.history对象的属性 可以通过判断 history.length,得到是否有历史记录和记录 ...
- 远程执行newLISP代码
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/sheismylife/article/details/26393899 newLISP提供了一个简单 ...
- E、CSL 的魔法 【模拟】 (“新智认知”杯上海高校程序设计竞赛暨第十七届上海大学程序设计春季联赛)
题目传送门:https://ac.nowcoder.com/acm/contest/551#question 题目描述 有两个长度为 n 的序列,a0,a1,…,an−1a0,a1,…,an−1和 b ...
- 说说Vue.js的v-for
v-for的话,相比传统的jQuery的 $.each或者for循环要简洁明了的多, 比如在Jquery中我要遍历数据,通常如下几种方式: $.each(apps, function(i, app) ...