不好!有敌情,遭到XSS攻击【网络安全篇】

embedded/2024/10/22 5:10:17/

XSS:当一个目标的站点,被我们用户去访问,在渲染HTMl的过程中,出现了没有预期到的脚本指令,然后就会执行攻击者用各种方法注入并执行的恶意脚本,这个时候就会产生XSS。

涉及方:

  • 用户(通过浏览器去访问网页)
  • 攻击者(通过各种办法让用户访问页面执行恶意脚本,盗取信息)
  • Web服务器(存储并返回恶意脚本)

XSS的危害

挂马

网页挂马是指在一个程序中利用木马生成器生成一个网码,加上一些代码,可以让木马程序再打开网页的时候就立即执行。

XSS的危害-挂马

盗取用户的Cookie

盗取了用户的关键信息后,就可以模拟去做一些事情:包含但不局限于转账请求、恶意信息发送请求、未知文件下载请求、删除目标文章、恶意篡改数据、嫁祸。

蠕虫病毒

  • 爆发 Web2.0 蠕虫病毒
  • 蠕虫式的DDoS攻击
  • 蠕虫式挂马攻击、刷广告、刷流量、破坏网上数据

    截屏2023-03-06 21.52.28.png

其它

  • DDoS(拒绝服务)客户端浏览器。
  • 钓鱼攻击,高级的钓鱼技巧。
  • 劫持用户 Web 行为,甚至进一步渗透内网。

XSS种类

截屏2023-03-06 21.58.35.png

反射型

指发出一个请求的时候,XSS的恶意代码出现在我们的访问链接之中,它作为一部分的数据提交到我们的服务器,服务器解析之后进行响应,代码就会随着响应传回到浏览器中。

比如我们在输入框中输入字符,并且检索,网页也会把结果返回到页面上:

截屏2023-03-06 22.19.15.png

URL里面有什么请求字符,就把请求字符反射到前端页面上:

截屏2023-03-06 22.19.50.png

如果我们把值替换成<script>标签呢?

截屏2023-03-06 22.23.12.png

<script>标签的内容就会成为网页的一部分了,浏览器看到<script>标签就会执行,弹出警示框:

截屏2023-03-06 22.23.31.png

看到这里,我们可能觉得这个小弹窗没什么的,但是真正要进行攻击的黑客只是用这个弹窗来检测网页是否有漏洞,然后再进行更深层次的攻击。

存储型

举一个最常见的评论例子:

截屏2023-03-06 22.34.08.png

当我们提交之后,信息会被保存在服务器里,也就造成了所有浏览此网页看到此评论的人都会执行此脚本,用户不知情,用户越多,中招的人数也就越多,没有乱点链接也中招,想想就可怕。

DOM型

我们来分析:

  • URL地址#(hash)的参数不会发送给服务器

  • Img标签做了字符串拼接

    截屏2023-03-06 22.46.39.png

  • 把id为tabContent的html设置为变量名为html的值

    截屏2023-03-06 22.45.55.png

  • 接下来我们看有没有可以被注入的方法呢? 我们可以看到chooseTab函数被注入了一个要命的值(location.hash),也就是URL上 # 的值,这也就是黑客最想找到值,黑客就可以修改 # 后面的值,从而触发 JQ 的 html() 方法

    截屏2023-03-06 22.53.46.png

  • 如下代码明显是执行不了src属性,就会触发onerror并执行脚本

    截屏2023-03-06 22.57.17.png

  • 如果这段字符被加在URL后面并执行的话

    截屏2023-03-06 22.59.54.png

  • 因为网页的源码同时存在可以被操作的属性和方法,导致网页文档结构被修改,页面就会触发脚本的加载

    截屏2023-03-06 23.00.12.png

防御敌情

  • 对一些敏感信息进行保护,比如 cookie 使用 http-only,使得脚本无法获取。

  • 可以使用验证码,避免脚本伪装成用户执行一些操作。

  • 输入处理:

    • 包括用户输入、URL参数、POST请求参数
    • 黑名单脚本过滤,如:<script>alert(...)</script>,标签替换,只留中间
    • 白名单过滤,如:像用户名密码,正则匹配用户输入,限制输入位数,限制输入字符等
  • 输出处理

    • <script>alert(...)</script>对输出的编码做转译
    • < : &lt;
    • > : &1t;
    • & : &am;
    • " : quot;
    • ' : &#39;
    • \ : \\
    • / : \/
    • ; : ;
  • XSS拦截转换

    • node

最后

XSS存在的最根本原因是我们对url中的参数或者用户需要输入的地方没有做一个充分的过滤,所以就会有一些不合法的参数或者输入内容能够到我们的 Web服务器 ,最后用户访问前端页面的时候,就可能将这段代码拉过来又执行了一遍,对我们程序或者我们程序猿本身而言,XSS的防范至关重要。

网络安全>网络安全学习路线 (2024最新整理)

 如图片过大被平台压缩导致看不清的话,评论区点赞和评论区留言扣1或者关注我我后台会主动发给你! 

第一阶段:安全基础

网络安全>网络安全行业与法规

Linux操作系统

计算机网络

HTML PHP Mysql Python基础到实战掌握

  第二阶段:信息收集

IP信息收集

域名信息收集

服务器信息收集

Web网站信息收集

Google hacking

Fofa网络安全>网络安全测绘

 第三阶段:Web安全 

SQL注入漏洞

XSS

CSRF漏洞

文件上传漏洞

文件包含漏洞

SSRF漏洞

XXE漏洞

远程代码执行漏洞

密码暴力破解与防御

中间件解析漏洞

反序列化漏洞

 第四阶段:渗透工具 

MSF

Cobalt strike

Burp suite

Nessus   Appscea   AWVS

Goby   XRay

Sqlmap

Nmap

Kali

 第五阶段:实战挖洞 

漏洞挖掘技巧

Src

Cnvd

众测项目

热门CVE漏洞复现

靶场实战

学习资料的推荐

学习框架已经整理完毕,现在就差资料资源了,我这里整理了所有知识点对应的资料资源文档,大家不想一个一个去找的话,可以参考一下这些资料!

1.视频教程

 2.SRC技术文档&PDF书籍 

3.大厂面试题    

特别声明:

此教程为纯技术分享!本教程的目的决不是为那些怀有不良动机的人提供及技术支持!也不承担因为技术被滥用所产生的连带责任!本教程的目的在于最大限度地唤醒大家对网络安全>网络安全的重视,并采取相应的安全措施,从而减少由网络安全>网络安全而带来的经济损失。


http://www.ppmy.cn/embedded/41007.html

相关文章

算法-java

题目来自牛客网 输入两个递增的链表&#xff0c;单个链表的长度为n&#xff0c;合并这两个链表并使新链表中的节点仍然是递增排序的。 数据范围&#xff1a; 0≤&#x1d45b;≤10000≤n≤1000&#xff0c;−1000≤节点值≤1000−1000≤节点值≤1000 要求&#xff1a;空间复杂…

口碑最好的麦克风品牌有哪些?多款高口碑无线领夹麦克风推荐

从直播、拍摄到采访&#xff0c;音频设备对于我们的生活越来越重要&#xff0c;想要拥有更清晰、真实的录音效果&#xff0c;一款优质的无线领夹麦克风肯定是必不可少的&#xff0c;其轻便小巧的特性&#xff0c;不仅适用于手机和相机的直播、录音需求&#xff0c;同时也能满足…

【PyTorch】torch.backends.cudnn.benchmark 和 torch.backends.cudnn.deterministic

1. torch.backends.cudnn.benchmark 在 PyTorch 中&#xff0c;torch.backends.cudnn.benchmark 是一个配置选项&#xff0c;用于在运行时自动选择最优的卷积算法&#xff0c;以提高计算效率。这个设置特别针对使用 CUDA 和 cuDNN 库进行的运算&#xff0c;并在使用具有变化输…

记录:robot_localization传感器数据融合学习

一、参考资料 官方&#xff1a; http://wiki.ros.org/robot_localizationhttp://docs.ros.org/en/noetic/api/robot_localization/html/index.html2015 ROSCon 演讲官方网址&#xff08;youyube上也有这个视频&#xff09;ppt 实践教程 https://kapernikov.com/the-ros-rob…

【JavaEE网络】用Form与Ajax构建HTTP请求

目录 通过 form 表单构造 HTTP 请求form 发送 GET 请求form 发送 POST 请求 通过 ajax 构造 HTTP 请求发送 GET 请求发送 POST 请求发送 application/json 数据封装 ajax 方法 通过 form 表单构造 HTTP 请求 form (表单) 是 HTML 中的一个常用标签. 可以用于给服务器发送 GET …

计算机网络原原理学习资料分享笔记---第三章/第三节(为有梦想的自己加油!)

第三节 停-等协议与 滑动窗口协议 第三节 停-等协议与滑动窗口协议 知识点 1 可靠数据传输基本原理 1 、internet传输层的两个协议&#xff1a;TCP 、UDP。 TCP&#xff1a;可靠数据传输服务。将报文段交给IP传送&#xff0c;而IP只能提供“尽 力”服务&#xff0c;也就是不可…

[微信小程序] 入门笔记2-自定义一个显示组件

[微信小程序] 入门笔记2-自定义一个显示组件 0. 准备工程 新建一个工程,删除清空app的内容和其余文件夹.然后自己新建pages和components创建1个空组件和1个空页面. 设定 view 组件的默认样式,使其自动居中靠上,符合习惯.在app.wxss内定义,作用做个工程. /**app.wxss**/ /* 所…

宝塔环境安装+安装软件教程

游戏&#xff0c;大型网站程序等都安装在服务器上&#xff0c;服务器用的是Linux系统&#xff0c;进行服务器维护需要记住很多linux的命令&#xff0c;这就很麻烦。 宝塔的好处&#xff0c;就是通过一个交互界面就能完成服务器的维护工作&#xff0c;比如更新系统&#xff0c;添…