Weak Session IDs
工具的使用
首先github上下载火狐插件(正版收费),按F12调用
服务器生成sessionID通过response返回给浏览器,sessionID存放在浏览器cookie中,然后再通过cookie发送给服务器验证。
获取浏览器请求的cookie

使用Hackbar伪造,输入要访问的服务器url以及刚获取的cookie,点击execute

这时会自动进入界面。

Low Security Level
模拟管理员登录,在浏览器中,点击Generate,Burpsuite抓包,发送到Repeater,go一次,发现:
请求头中:
PHPSESSID=majmpibnicga5ks1oisqkuhf5h; security=low
响应头中:
Set-Cookie: dvwaSession=1

多go几次,发现dvwaSession一直增加,每次加1。
恶意攻击者通过寻找到上述规律,使用浏览器2,成功构造出payload:
Cookie: dvwaSession=71; PHPSESSID=majmpibnicga5ks1oisqkuhf5h; security=low
在无密码认证的情况下,根据cookie用hackbar成功登陆到界面:http://www.dvwa.com/vulnerabilities/weak_id/
Medium Security Level
拟管理员登录,在浏览器里,点击Generate,burp里发现:
请求头中:
Cookie: PHPSESSID=majmpibnicga5ks1oisqkuhf5h; security=medium
响应头中:
Set-Cookie: dvwaSession=1561097825

多go几次,发现dvwaSession和时间戳变化一致。
恶意攻击者通过寻找到上述规律,使用浏览器firefox,成功构造出payload
Cookie: dvwaSession=1561097825; PHPSESSID=majmpibnicga5ks1oisqkuhf5h; security=medium
无密码认证的情况下,根据cookie用hackbar成功登陆到界面:http://www.dvwa.com/vulnerabilities/weak_id/
High Security Level
模拟管理员登录,在浏览器 1 里,点击Generate,burp里发现:

name 必需。规定cookie的名称。
value 必需。规定cookie的值。
expire 可选。规定cookie的有效期。
path 可选。规定cookie的服务器路径。
domain 可选。规定cookie的域名。
secure 可选。规定是否通过安全的HTTPS连接来传输cookie。
httponly 可选。规定是否Cookie仅可通过HTTP协议访问。
value 值:last_session_id_high 自增 1,再用 md5 加密
expire 值:当前时间再加一个小时
path 值:/vulnerabilities/weak_id/
多go几次,发现dvwaSession值通过MD5加密。将每次产生的MD5解密,发现解密后的值,发现和低等级中的代码一样,是从0开始加的。
恶意攻击者通过寻找到上述规律,使用浏览器2,成功构造出payload:
Set-Cookie: dvwaSession=182be0c5cdcd5072bb1864cdee4d3d6e;security=high; PHPSESSID=majmpibnicga5ks1oisqkuhf5h
在无密码认证的情况下,成功登陆到界面:http://www.dvwa.com/vulnerabilities/weak_id/
Impossible Security Level
采用随机数+时间戳+固定字符串再进行sha1运算,完全不能猜测到dvwaSession的值。实现了用户安全会话认证。
https://github.com/Mr-xn/hackbar2.1.3
Weak Session IDs的更多相关文章
- DVWA 黑客攻防演练(七)Weak Session IDs
用户访问服务器的时候,一般服务器都会分配一个身份证 session id 给用户,用于标识.用户拿到 session id 后就会保存到 cookies 上,之后只要拿着 cookies 再访问服务器 ...
- 安全性测试入门 (四):Session Hijacking 用户会话劫持的攻击和防御
本篇继续对于安全性测试话题,结合DVWA进行研习. Session Hijacking用户会话劫持 1. Session和Cookies 这篇严格来说是用户会话劫持诸多情况中的一种,通过会话标识规则来 ...
- 安全性测试入门:DVWA系列研究(一):Brute Force暴力破解攻击和防御
写在篇头: 随着国内的互联网产业日臻成熟,软件质量的要求越来越高,对测试团队和测试工程师提出了种种新的挑战. 传统的行业现象是90%的测试工程师被堆积在基本的功能.系统.黑盒测试,但是随着软件测试整体 ...
- [红日安全]Web安全Day12 – 会话安全实战攻防
本文由红日安全成员: ruanruan 编写,如有不当,还望斧正. 大家好,我们是红日安全-Web安全攻防小组.此项目是关于Web安全的系列文章分享,还包含一个HTB靶场供大家练习,我们给这个项目起了 ...
- 搭建DVWA漏洞环境
DVWA是一款开源的渗透测试漏洞练习平台,其中内含XSS.SQL注入.文件上传.文件包含.CSRF和暴力破解等各个难度的测试环境. 搭建步骤: 1.在Windows系统中安装WAMP 下载地址:htt ...
- DVWA学习记录 PartⅧ
Weak Session IDs 1. 题目 用户访问服务器的时候,为了区别多个用户,服务器都会给每一个用户分配一个 session id .用户拿到 session id 后就会保存到 cookie ...
- Tomcat中的Session小结
什么是Session 对Tomcat而言,Session是一块在服务器开辟的内存空间,其存储结构为ConcurrentHashMap: Session的目的 Http协议是一种无状态协议,即每次服务端 ...
- [Spring] spring-session + JedisPool 实现 session 共享
1.至少导入四个jar包: jedis spring-session spring-data-redis commons-pool2 2.bean配置 <?xml version="1 ...
- 使用Spring Session实现Spring Boot水平扩展
小编说:本文使用Spring Session实现了Spring Boot水平扩展,每个Spring Boot应用与其他水平扩展的Spring Boot一样,都能处理用户请求.如果宕机,Nginx会将请 ...
随机推荐
- 【Python】解析Python中的装饰器
python中的函数也是对象,函数可以被当作变量传递. 装饰器在python中功能非常强大,装饰器允许对原有函数行为进行扩展,而不用硬编码的方式,它提供了一种面向切面的访问方式. 装饰器 一个普通的装 ...
- 关于Spring Cloud的思考和总结
博主开发使用了Spring Cloud,使用过程中的一些学习和经验,体会通过本博文进行记录. 以前的架构,单体应用: 加入ESB,通过总线进行调用: 微服务架构: 区别: SOA架构主要针对企业级,采 ...
- OpenShift 3.11离线环境的jenkins演示
离线安装完成后,一般情况下只装了个基础环境,catalog镜像没有导入,本文主要侧重在jenkins的一些环境设置和演示. 1.导入镜像 首先follow下面链接下载镜像 https://docs.o ...
- [PHP] Laravel 体现 MySQL、Sqlite 数据的大小写敏感
要想实现数据比对的大小写敏感,方式是设置数据库字段类型 或者 字段校验字符集. MySQL 和 Sqlite 所支持的 collations 形式是不同的,你可以通过以下文档了解到. MySQL co ...
- 华为交换机trunk端口更改access提示:Error: Please renew the default configurations.
现象: 华为交换机接口由原来 trunk 接口更改 access 提示 Error: Please renew the default configurations. 解决方法: 在交换机视图模式下, ...
- Vue 搭建项目
Vue 搭建项目 一.node下载安装: 1.下载:https://nodejs.org/en/download/ 2.安装默认许选择,下一步就行: 3.安装完之后就可以使用npm命令 二.通过@v ...
- Python监听键盘和鼠标事件
我们可以利用windows提供的api函数来实现对系统键盘事件和鼠标事件的监听,主要利用的是SetWindowsHookEx函数,这个函数可以允许调用者传入一个钩子函数也叫回调函数,当指定的事件发生时 ...
- python中判断对象类型的函数——isinstance
isinstance是Python中的一个内建函数.是用来判断一个对象的变量类型. isinstance(object, class-or-type-or-tuple) 如果参数object是clas ...
- 【bat】九九表
@echo off & setlocal EnableDelayedExpansion title 九九表 for /l %%a in (1,1,9) do ( set temp= for / ...
- canal使用
报错信息:com.alibaba.druid.pool.DruidDataSource - testWhileIdle is true, validationQuery not set 解决方法: 找 ...