【愚公系列】2021年12月 攻防世界-简单题-WEB-004(cookie)

举报
愚公搬代码 发表于 2021/12/25 17:33:28 2021/12/25
【摘要】 一、cookie题目链接:https://adworld.xctf.org.cn/task/task_list?type=web&number=3&grade=0&page=1 二、使用步骤 1.点击获取在线场景 2.查看cookie进入页面:F12查看cookie发现cookie.php文件进入相关页面提示查看http响应,切换到网络一栏发现flag:cyberpeace{3f0d9ec...

一、cookie

题目链接:https://adworld.xctf.org.cn/task/task_list?type=web&number=3&grade=0&page=1

二、使用步骤

1.点击获取在线场景

在这里插入图片描述

2.查看cookie

进入页面:F12查看cookie
在这里插入图片描述
发现cookie.php文件
进入相关页面
在这里插入图片描述
提示查看http响应,切换到网络一栏
在这里插入图片描述
发现flag:cyberpeace{3f0d9ecf16cf128697bacc6644b49ce2}


总结

1.概念

HTTP协议本身是无状态的。什么是无状态呢,即服务器无法判断用户身份。Cookie实际上是一小段的文本信息(key-value格式)。客户端向服务器发起请求,如果服务器需要记录该用户状态,就使用response向客户端浏览器颁发一个Cookie。客户端浏览器会把Cookie保存起来。当浏览器再请求该网站时,浏览器把请求的网址连同该Cookie一同提交给服务器。服务器检查该Cookie,以此来辨认用户状态。

2.机制

客户端发送一个请求到服务器 --> 服务器发送一个HttpResponse响应到客户端,其中包含Set-Cookie的头部 -->客户端保存cookie,之后向服务器发送请求时,HttpRequest请求中会包含一个Cookie的头部 -->服务器返回响应数据。以下为cookie的属性值和对应的介绍:

Secure 如果设置了这个属性,那么只会在 SSH 连接时才会回传该 Cookie
NAME=VALUE 键值对,可以设置要保存的 Key/Value,注意这里的 NAME 不能和其他属性项的名字一样
Expires 过期时间,在设置的某个时间点后该 Cookie 就会失效
Domain 生成该 Cookie 的域名,如 domain=“www.baidu.com
Path 该 Cookie 是在当前的哪个路径下生成的,如 path=/wp-admin/

3.修改或者删除cookie

HttpServletResponse提供的Cookie操作只有一个addCookie(Cookie cookie),所以想要修改Cookie只能使用一个同名的Cookie来覆盖原先的Cookie。如果要删除某个Cookie,则只需要新建一个同名的Cookie,并将maxAge设置为0,并覆盖原来的Cookie即可。新建的Cookie,除了value、maxAge之外的属性,比如name、path、domain都必须与原来的一致才能达到修改或者删除的效果。否则,浏览器将视为两个不同的Cookie不予覆盖。值得注意的是,从客户端读取Cookie时,包括maxAge在内的其他属性都是不可读的,也不会被提交。浏览器提交Cookie时只会提交name和value属性,maxAge属性只被浏览器用来判断Cookie是否过期,而不能用服务端来判断。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。