xss学习6

一、获得Cookie发送邮件
1. 编写mail.js
  • 目的: 创建一个JavaScript脚本,用于获取cookie并通过邮件发送。
  • 代码实现:
    • 创建一个图片元素 img,设置其宽度和高度为0,使其不可见。
    • 将图片的 src 属性设置为指向 sendmail.php 的URL,并附带当前页面的cookie作为参数。
2. 编写sendmail.php
  • 目的: 编写PHP脚本,接收JavaScript传来的cookie,并通过邮件发送。
  • 代码实现:
    • 使用PHPMailer组件发送邮件。
    • 从GET请求中获取cookie。
    • 配置邮件服务器(如SMTP服务器、端口、用户名、密码等)。
    • 设置邮件内容并发送。
3. 修改PHP版本
  • 注意: PHP版本必须为7,否则邮件发送功能无法正常工作。
  • 修改方法: 在PHP集成环境(如phpstudy)中调整PHP版本。
4. 修改邮箱账号和授权码
  • 目的: 配置邮件发送所需的邮箱账号和授权码。
  • 配置内容:
    • 发件人邮箱地址和授权码。
    • 收件人邮箱地址(可与发件人相同)。
  • 授权码获取: 登录邮箱账号,在账户设置中的POP3/SMTP服务中开启并获取授权码。
5. 注入脚本
  • 目的: 将编写好的JavaScript脚本注入到目标网页中,以便获取cookie。
  • 注入方式: 将脚本代码插入到网页的HTML中,通常通过XSS漏洞实现。
6. 生成Cookie
  • 目的: 在目标域名下生成cookie,以便JavaScript脚本能够获取。
  • 代码实现:
    • 使用PHP的 setcookie 函数设置cookie。
    • Cookie的名称为 name,值为用户名,并设置过期时间。
7. 查看Cookie
  • 目的: 确认cookie已成功生成,并查看cookie的内容。
  • 查看方式:
    • 通过浏览器的开发者工具查看当前页面的cookie。
    • 确认存在名为 name 的cookie,并检查其值是否正确。
  • 结果: 成功获取到cookie,并通过邮件发送。邮件内容包含cookie信息,如 name:wuuuuyaaaa='s cookie'。
二、知识小结

|----------------|------------------------------------------|----------------------|-------|
| 知识点 | 核心内容 | 考试重点/易混淆点 | 难度系数 |
| JavaScript脚本注入 | 通过JavaScript脚本注入到网页,获取用户cookie | 如何制作并执行注入脚本 | ★★★☆☆ |
| Cookie获取与邮件发送 | 使用JavaScript获取cookie,并通过PHP mailer组件发送邮件 | PHP版本要求、邮箱授权码获取与配置 | ★★★★☆ |
| PHP版本调整 | 在PHP study集成环境中调整PHP版本至7 | PHP版本对邮件发送的影响 | ★★☆☆☆ |
| 邮箱授权码 | 在QQ邮箱中开启POP3/SMTP服务,获取授权码 | 授权码与QQ密码的区别及安全性 | ★★★☆☆ |
| 存储型XSS攻击 | 在网页中注入恶意脚本,当用户访问时执行 | 如何避免XSS攻击被过滤、确保脚本执行 | ★★★★☆ |
| Cookie生成与测试 | 手动设置cookie以测试XSS攻击效果 | 为什么需要手动设置cookie、如何设置 | ★★★☆☆ |
| 攻击效果验证 | 通过邮件接收情况验证XSS攻击是否成功 | 验证邮件内容、攻击是否如预期发生 | ★★★★☆ |
| |

相关推荐
~kiss~1 小时前
Agent 的 未来吗?String: An Agentic OS Where Every App Is a Markdown File
学习
HugoStudio_SWAN1 小时前
洛谷 B4450 / B3867 / B3923 智慧购物、储蓄与做题——从程序到生活
c++·学习·程序人生·算法·生活
UIU1143 小时前
scanf与cout的误区:探究其内部的机制
c++·学习·c#·scanf
zyf1044168 小时前
暑期实践日志 Day48:复盘大纲与知识点对照表,系统汇总整理成果
学习·计算机网络·剪辑·暑期实践·课题任务
m4Rk_9 小时前
【论文阅读】Agent 记忆机制(61):CFGM——用粗到细的记忆落地贯通经验采集、知识蒸馏与在线纠错
论文阅读·人工智能·学习·开源·github
边境悍匪9 小时前
蜗牛学苑 Java 智能体学习 Day33|AOP 面向切面编程、日志技术思维导图复盘
学习
我是你的开心果7789 小时前
ai全栈软件开发day21(第四阶段喽)
人工智能·学习
网络工程小王10 小时前
【LLM开发实验】FastAPI 学习笔记
数据库·笔记·学习·mysql·fastapi
醉舞经阁半卷书110 小时前
量化交易基础之python库学习
学习
youm200311 小时前
【学习笔记】认识NoSQL——非关系型数据库
笔记·学习·nosql