当前位置: 首页 > news >正文

网络安全筑基篇——XSS、XML、XXE

目录

前言

什么是XSS?

XSS的类型有哪些?

反射型

存储型

DOM型

XSS原理

XSS修复建议

绕过

XSS与CSRF与SSRF漏洞区别

XML是什么?

XXE是什么?

XXE漏洞的触发点

XXE的原理

XXE的危害有哪些?

1、敏感数据泄露

2、内部系统扫描

3、服务器请求伪造

4、执行远程代码和命令

5、拒绝服务攻击

6、绕过防火墙

7、植入恶意内容

XXE的特征

测试XXE的漏洞点


前言

最近事儿太多啦,更新的时间都没固定下来,更新的时间也变得越来越慢,望各位支持的师傅们海涵,嘿嘿~

什么是XSS?

XSS(corss site script)跨站脚本攻击。

XSS的类型有哪些?

反射型

攻击者通过构造恶意脚本的URL,插入到返回的网页中,浏览器执行这些恶意脚本,从而使攻击者能够执行恶意操作。

也就是构造好的恶意脚本之后,将这个恶意脚本插入到你所要访问的页面

那么可以插这个点在哪呢?

各种文本框,输入框,url链接后面

1、<script></script>
<script>location.href</script>

存储型

前期存储型也和反射型一样,同样的操作,只是构造恶意脚本的时候,需要

DOM型

XSS原理

原理: 中文名是跨站脚本攻击,通过在客户端和服务器的访问过程中插入恶意脚本(一般我们使用js代码),实现对用户浏览器的攻击

XSS修复建议

  1. 对输入的内容进行过滤,比如过滤掉<>
  2. 对将要输出的内容进行HTML编码
  3. 对重要的cookie设置httpOnly, 防止客户端通过document.cookie读取 cookie

绕过

大小写;编码;重写绕过;/;//;\;等

XSS与CSRF与SSRF漏洞区别

XSS是跨站脚本攻击,攻击的目标是客户端,因为是脚本攻击,所以JS脚本写什么,客户端就会做什么,比如窃取cookie利用方式比较灵活

CSRF是跨站请求伪造,攻击的目标也是客户端,利用时只能窃用cookie,只能利用存在csrf漏洞的功能点,局限性比XSS大

SSRF是服务端请求伪造,攻击的是服务端,危害较大,可以造成内网穿透、命令执行、内网信息泄露

XML是什么?

  • XML 指可扩展标记语言(EXtensible Markup Language)。
  • XML 是一种很像HTML的标记语言。
  • XML 的设计宗旨是传输数据,而不是显示数据。
  • XML 标签没有被预定义。您需要自行定义标签。
  • XML 被设计为具有自我描述性。
  • XML 是 W3C 的推荐标准。

这里做简要概括,详细的可以参考以下网址

XML 教程 | 菜鸟教程 (runoob.com)

XXE是什么?

XXE(全称:XML External  Entity  Injection)即是XML外部实体注入漏洞

XXE漏洞的触发点

找找那些能够上传xml文件的功能点,试试看有没有没对xml进行过滤的,有的话,那就导致可加载恶意外部文件和代码,造成任意文件读取,命令执行、内网端口扫描、攻击内网网站。


XXE的原理

XML文档可以定义实体,它们是存储文档中其他地方重复使用的数据的方式。

外部实体是一种特殊类型的实体,它们的内容被定义在XML文档外部。

XXE的危害有哪些?

1、敏感数据泄露

攻击者读取服务器上的文件,包括配置文件、源代码、密码文件等

2、内部系统扫描

探测内部网络,识别内部服务和应用

3、服务器请求伪造

服务器与内部系统或外部服务器进行交互,可能导致数据泄露

4、执行远程代码和命令

用于执行远程代码或系统命令,从而完全控制受影响的服务器

5、拒绝服务攻击

指向大量消耗资源的外部实体或构造庞大的XML文档来耗尽服务器资源

6、绕过防火墙

绕过直接从外部网络访问内部网络资源的限制

7、植入恶意内容

漏洞绕过直接从外部网络访问内部网络资源的限制

XXE的特征

1、特征1:   后缀名为 .ashx

2、特征2:响应体为xml

测试XXE的漏洞点

http://ceye.io/http://www.dnslog.cn/https://dnslog.io/

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 全新TTT架构:挑战Transformer和Mamba的霸主地位
  • 从Helm到 Operator:Kubernetes应用管理的进化
  • 二叉苹果树
  • 如何用Vue3和Plotly.js创建交互式表格?
  • 【亲测有效】Linux/Ubuntu远程服务器使用plt.show()没有反应,vscode ssh 远程ubuntu,plt.show不显示图片问题
  • 泰勒公式中拉格朗日余项和佩亚诺余项的区别及具体的应用场景案例
  • Vue3 根据相对路径加载vue组件
  • PostgreSQL 中如何处理数据的并发更新冲突解决?
  • Git 操作总结
  • 移动应用:商城购物类,是最常见的,想出彩或许就差灵犀一指
  • 插入排序算法(C语言版)
  • HTML5使用<progress>进度条、<meter>刻度条
  • 如何用 Python 绕过 cloudflare(5秒盾) 抓取数据:也不是很难嘛!
  • 红日靶场----(三)漏洞利用
  • Mac平台虚拟机 Parallels Desktop v19.4.1,支持M1/M2/M3芯片组
  • 网络传输文件的问题
  • 分享一款快速APP功能测试工具
  • 【知识碎片】第三方登录弹窗效果
  • co模块的前端实现
  • Sublime text 3 3103 注册码
  • weex踩坑之旅第一弹 ~ 搭建具有入口文件的weex脚手架
  • 多线程 start 和 run 方法到底有什么区别?
  • 更好理解的面向对象的Javascript 1 —— 动态类型和多态
  • 技术发展面试
  • 力扣(LeetCode)357
  • 配置 PM2 实现代码自动发布
  • 前言-如何学习区块链
  • 远离DoS攻击 Windows Server 2016发布DNS政策
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • 完善智慧办公建设,小熊U租获京东数千万元A+轮融资 ...
  • ​浅谈 Linux 中的 core dump 分析方法
  • #git 撤消对文件的更改
  • ()、[]、{}、(())、[[]]等各种括号的使用
  • (1)虚拟机的安装与使用,linux系统安装
  • (CVPRW,2024)可学习的提示:遥感领域小样本语义分割
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (html5)在移动端input输入搜索项后 输入法下面为什么不想百度那样出现前往? 而我的出现的是换行...
  • (二十九)STL map容器(映射)与STL pair容器(值对)
  • (简单) HDU 2612 Find a way,BFS。
  • (五)网络优化与超参数选择--九五小庞
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • (转)程序员技术练级攻略
  • (转载)Linux 多线程条件变量同步
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .Net Core与存储过程(一)
  • .net redis定时_一场由fork引发的超时,让我们重新探讨了Redis的抖动问题
  • .Net 知识杂记
  • .NET 中小心嵌套等待的 Task,它可能会耗尽你线程池的现有资源,出现类似死锁的情况
  • .NetCore Flurl.Http 升级到4.0后 https 无法建立SSL连接
  • .NET的数据绑定
  • .Net面试题4
  • /etc/skel 目录作用
  • [ web基础篇 ] Burp Suite 爆破 Basic 认证密码
  • [④ADRV902x]: Digital Filter Configuration(发射端)