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 站点当中,所以每次访问都会被执行。

相关推荐
C嘎嘎嵌入式开发13 小时前
(22)100天python从入门到拿捏《【网络爬虫】网络基础与HTTP协议》
网络·爬虫·python
网络安全-海哥13 小时前
2025网络安全前景与学习路线:抓住数字时代的安全机遇
学习·web安全·网络安全·网络攻击·转行
风语者日志13 小时前
攻防世界—easyupload
数据库·web安全·ctf·小白入门
黑岚樱梦13 小时前
计算机网络第四章学习
网络·学习·计算机网络
微小冷13 小时前
ARP协议详解及其Wireshark抓包测试
网络·测试工具·wireshark·抓包·tcp/ip协议·arp协议·地址解析协议
RTC老炮13 小时前
webrtc弱网-RembThrottler类源码分析及算法原理
网络·算法·webrtc
嫄码14 小时前
HTTPS的四次握手过程
服务器·网络·https
真正的醒悟14 小时前
什么是组网架构
网络·架构
TG_yunshuguoji14 小时前
亚马逊云代理商:怎么快速构建高安全区块链应用?
网络·安全·云计算·区块链·aws
喜欢你,还有大家14 小时前
企业安全防护之——防火墙
服务器·网络·安全