xss跨站脚本攻击

文章目录

XSS (跨站脚本攻击) 原理是攻击者将恶意脚本注入到其他网站,当用户访问该网站时,恶意脚本会在用户的浏览器中执行,从而窃取用户信息、劫持会话或篡改页面内容。这种攻击利用了网站对用户输入未充分验证和过滤的漏洞。

Cookie概述

  1. JavaScript 可以使用 document.cookie 属性来创建 、读取、及删除 cookie。
    创建cookie:document.cookie="username=David";
    以为 cookie 添加一个过期时间:document.cookie="username=David; expires=Thu, 18 Dec 2026 12:00:00 GMT";
  2. cookie实例:
    创建html,并写入创建cookie来存储用户名:

    打开浏览器进行访问:

    再刷新一下页面,就能显示欢迎 '再次' 访问,因为cookie中已存在记录了

XSS攻击的原理:

  1. 漏洞产生:
    网站在处理用户输入时,如果未对输入进行充分的验证、过滤或转义,就直接将用户输入的内容嵌入到页面中,就可能存在XSS漏洞。
  2. 恶意脚本注入:
    攻击者构造包含恶意脚本(通常是JavaScript)的URL、表单数据或其他输入,并诱导用户访问或提交。
  3. 脚本执行:
    当用户访问包含恶意脚本的页面时,浏览器会将其解析为HTML和JavaScript代码并执行。
  4. 攻击行为:
    恶意脚本可以执行各种恶意操作,例如:
    窃取Cookie:攻击者可以获取用户的Cookie,从而获取用户的会话信息,并冒充用户进行操作。
    劫持会话:攻击者可以通过Cookie或会话令牌劫持用户的会话,从而控制用户的账户。
    篡改页面:攻击者可以修改页面内容,例如显示虚假信息、进行钓鱼攻击等。
    重定向:攻击者可以将用户重定向到恶意网站。
    传播恶意软件:攻击者可以利用XSS漏洞传播恶意软件。

XSS攻击的分类:

首先先要装好 sqli-libs 和 DVWA 靶机环境

反射型XSS:

恶意脚本包含在URL中,当用户点击带有恶意脚本的链接时,服务器将恶意脚本"反射"回浏览器执行。

添加一条 JavaScript 代码获取 cookie
<script>alert(document.cookie);</script>

查看是否和浏览器中的cookie信息是否一致

存储型XSS:

恶意脚本被存储在服务器端(例如数据库),当用户访问包含恶意脚本的页面时,服务器从数据库中读取数据并返回给浏览器执行。这种攻击方式危害更大,因为恶意脚本是永久存储的。

再次刷新页面,还是可以弹出弹出 cookie 信息

在服务器中的数据库中查看数据存放位置:

DOM型XSS:

恶意脚本在浏览器端通过JavaScript修改DOM,从而影响页面内容。

创建一个加载 javascript 脚本的dom 网页:

在/var/www/html/dom.html文件中写入以下内容

写入后保存退出,并进入浏览器进行访问

进行 XSS DOM 攻击:

XSS攻击的关键在于网站对用户输入没有进行充分的安全处理,导致恶意脚本得以执行。攻击者利用这种漏洞,可以对用户和网站造成严重的危害。防御XSS攻击需要从网站开发阶段就进行严格的安全措施,包括输入验证、输出编码、使用安全框架等。

反射型XSS和存储型XSS的区别

存储型 XSS 和反射型 XSS 的主要区别是:

XSS 只会弹一次 cookie 信息。存储型 XSS 每次访问这个页面都是会弹出 cookie 信息。因为 XSS 代码已经嵌入在了该 Web 站点当中,所以每次访问都会被执行。

相关推荐
Bruce_Liuxiaowei10 分钟前
跨站脚本攻击(XSS)高级绕过技术与防御方案
前端·网络安全·xss
小木话安全12 分钟前
ISO27001 高阶架构 之 支持 -2
网络·安全·职场和发展·学习方法
破刺不会编程3 小时前
socket编程UDP
linux·运维·服务器·网络·c++·网络协议·udp
Warren986 小时前
Lua 脚本在 Redis 中的应用
java·前端·网络·vue.js·redis·junit·lua
NEXU59 小时前
Linux:套接字
linux·服务器·网络
观北海12 小时前
网络安全蓝队常用工具全景与实战指南
安全·web安全
monster_风铃12 小时前
华为实验 链路聚合
网络·华为
人衣aoa13 小时前
PG靶机 - Pelican
web安全·网络安全·渗透测试·内网渗透
lingggggaaaa13 小时前
小迪安全v2023学习笔记(六十一讲)—— 持续更新中
笔记·学习·安全·web安全·网络安全·反序列化
油丶酸萝卜别吃14 小时前
nginx配置代理服务器
运维·网络·nginx