欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【Web安全】Weak Session IDs (弱会话IDs)-burp进行Cookie劫持

程序员文章站 2022-06-02 12:34:31
...

1 Weak Session IDs(弱会话IDs)

0x01 何为Weak Session IDs
当用户登录后,在服务器就会创建一个会话(session),叫做会话控制,接着访问页面的时候就不用登录,只需要携带

Sesion去访问。

sessionID作为特定用户访问站点所需要的唯一内容。如果能够计算或轻易猜到该sessionID,则攻击者将可以轻易获取访问权

限,无需录直接进入特定用户界面,进而进行其他操作。

用户访问服务器的时候,在服务器端会创建一个新的会话(Session),会话中会保存用户的状态和相关信息,用于标识用户。

服务器端维护所有在线用户的Session,此时的认证,只需要知道是哪个用户在浏览当前的页面即可。为了告诉服务器应该使

用哪一个Session,浏览器需要把当前用户持有的SessionID告知服务器。用户拿到session id就会加密后保存到 cookies 上,

之后只要cookies随着http请求发送服务器,服务器就知道你是谁了。SessionID一旦在生命周期内被窃取,就等同于账户失窃。

Session利用的实质 :

由于SessionID是用户登录之后才持有的唯一认证凭证,因此黑客不需要再攻击登陆过程(比如密码),就可以轻易获取访问权

限,无需登录密码直接进入特定用户界面, 进而查找其他漏洞如XSS、文件上传等等。

Session劫持 : 就是一种通过窃取用户SessionID,使用该SessionID登录进目标账户的攻击方法,此时攻击者实际上是使用

了目标账户的有效Session。如果SessionID是保存在Cookie中的,则这种攻击可以称为Cookie劫持。SessionID还可以保存

在URL中,作为一个请求的一个参数,但是这种方式的安全性难以经受考验。

2 DVWA-low

ow级别未设置过滤,直接用bp抓包,可以清楚的看到dvwaSesion的cookie,每重放一次,dvwaSesion增加一:
【Web安全】Weak Session IDs (弱会话IDs)-burp进行Cookie劫持

构造payload:dvwaSession=12; security=low; PHPSESSID=9uu34n47j66u3g420tv8j7chu0


通过火狐浏览器的hackbar,提交,选择cookie提交方式,为验证有效性,清楚一下浏览器的cookie值,提交后发现直接登录

dvwa,绕过密码验证:

【Web安全】Weak Session IDs (弱会话IDs)-burp进行Cookie劫持

3 medium级别

medium级别是基于时间戳生成dvwaSesion的,关于时间戳转换,直接查找转换器进行转换即可
【Web安全】Weak Session IDs (弱会话IDs)-burp进行Cookie劫持
通过设置时间戳,可知诱骗的受害者在某个时间点进行点击,
【Web安全】Weak Session IDs (弱会话IDs)-burp进行Cookie劫持

4 high级别

【Web安全】Weak Session IDs (弱会话IDs)-burp进行Cookie劫持
high级别使用了PHP setcookie()函数,来设置cookie:

setcookie(name,value,expire,path,domain,secure,httponly)
 参数 	             描述
name 	    必需。规定cookie的名称。
value 	    必需。规定cookie的值。
expire   	可选。规定cookie的有效期。
path 	    可选。规定cookie的服务器路径。
domain 	    可选。规定cookie的域名。
secure 	    可选。规定是否通过安全的HTTPS连接来传输cookie。
httponly 	可选。规定是否Cookie仅可通过HTTP协议访问。

抓包发现,dvwaSesion值很像md5加密,使用md5解密,发现是对从零开始的整数进行加密;构造payload使用火狐提交。

相关标签: Network Security