cookie

概述

Cookie是第一次访问网站之后,由网站服务器发送给客户端浏览器的一个文本,他会存储在用户的设备上,其作用是帮助网站记住用户当前的状态,登录信息等,实现HTTP的状态保持功能。

核心特性与作用

特性说明

存储位置

客户端本地(浏览器目录下,如 Chrome 的用户数据文件夹),而非服务器端

数据大小

通常限制为 4KB 以内,仅能存储少量文本数据(如字符串、键值对)

生命周期

分为 “会话 Cookie”(关闭浏览器后失效)和 “持久 Cookie”(指定Expires/Max-Age,到期后失效)

域名与路径限制

仅对 “设置 Cookie 的域名 + 路径” 生效(如domain=example.com; path=/admin,仅example.com/admin下的页面可访问该 Cookie)

安全性相关属性

包含HttpOnlySecureSameSite等属性,用于防范 XSS、CSRF 等攻击

在CTF中的作用

从Cookie中获得FLAG(最直接)

部分题目中可以直接通过Cookie获得FLAG,这是最简单的方法

通过篡改Cookie实现身份伪造

通过登录一次普通用户,得到Cookie的格式,然后对Cookie中的内容进行修改,篡改实现登录管理员账户等操作。

泄露技术栈与框架

当Cookie中出现下列的关键内容,则可能说明使用了某些技术框架

  • PHPSESSID:说明使用 PHP 语言 + Session 机制,可能存在 PHP 相关漏洞(如文件包含、代码执行);

  • JSESSIONID:说明使用 Java Web 框架(如 Spring、Struts),需关注 Java 相关漏洞(如 Struts2 命令执行);

  • ASP.NET_SessionId:说明使用ASP.NET,可能存在 ViewState 漏洞、SQL 注入等。

SQL注入

通过Cookie同样可以实现SQL注入

 


目录