热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

重大消息!WordPress修复了严重的Shortcode核心引擎漏洞

WordPress核心引擎中的存在安全漏洞并不是什么稀罕的事情,但是也并不常见。在这个当前非常热门的内容管理系统中所存在的大多数安全问题,基本上都是由其他的第三方插件所引起的,而这些问题往往会影响整个

https://img.php1.cn/3cd4a/1eebe/cd5/8373b1277127c518.webp

WordPress核心引擎中的存在安全漏洞并不是什么稀罕的事情,但是也并不常见。在这个当前非常热门的内容管理系统中所存在的大多数安全问题,基本上都是由其他的第三方插件所引起的,而这些问题往往会影响整个网站的正常运行。除此之外,这些安全问题还有可能会导致这些网站受到网络黑客的攻击。

今天,WordPress更新至了4.3.1版本,该版本修复了三个重要的安全漏洞,其中有两个漏洞是由Check Point软件科技公司的安全研究人员所发现的。该公司的安全研究人员在对这个内容管理平台进行了一个多月的分析和研究之后,发现了这些漏洞,并将漏洞信息报告给了WordPress。

其中,此次所修复的最严重的一个漏洞涉及到了WordPress的一个特殊功能-Shortcode(简码)。Shortcode实际上是一种HTML标签,该功能是在Wordpress 2.5版本中引入的,用户通过简码可以非常方便和快速地在编辑文章或页面的时候插入动态内容,简码的常见应用有插入最新文章、插入广告、插入音频视频、插入下载按钮等。简单来说,简码指的是一些使用“[]”标签所包含的短代码,WordPress默认是支持简码功能的,而且WordPress会自动识别这些短代码,并根据短代码的定义来输出特定的内容。

Shahar Tal是Check Point漏洞研究部门的主管,他表示:“Check Point在几个月之前就已经将漏洞的详细信息报告给了WordPress的安全工程师了,但他们还需要一定的时间才能修复这些漏洞,主要是因为WordPress与一些第三方插件有可能会出现兼容性方面的问题,这些问题将会导致修复补丁失效。”

如果此次更新没有修复这个Shortcode漏洞,那么攻击者就可以利用WordPress的简码功能向WordPress平台中注入任意的Javascript代码了。对于基于Web的应用程序而言,这样的跨站脚本攻击也并不是什么新鲜的事情了,而且这样的攻击方式也是大多数攻击者所常用的攻击方式,包括那些犯罪分子以及由国家资助的黑客组织在内。

Tal说到:“这可以算得上是一个名副其实的水坑攻击了。各个APT组织以及国家级的黑客都会采用这样的攻击方式。”

Tal以及他的同事Netanel Rubin已经对WordPress平台进行了好几个月的漏洞研究,除了跨站脚本漏洞之外,他们还发现了另一个漏洞,这个漏洞可以允许没有相应权限的用户发布文章,并且还可以常驻于网站之内。在这几个月的时间里,Rubin还找到了一些其他的漏洞,这些漏洞只会影响WordPress网站中的订阅用户,攻击者可以利用这些存在于核心引擎中的漏洞来进行远程SQL注入以及跨站脚本攻击。

Tal解释称:“现在大多数的第三方插件通常是由一些小公司的几名程序员或者开发人员编写完成的。他们并不会在这些插件的安全性方面花费太多的时间,而且也不会对插件代码的质量进行审计,但是WordPress的核心引擎代码是经过了非常严格的安全审计之后才发布出来的。Netanel也已经非常明确地表示了,WordPress的代码块是至今为止他所见过的安全性最高的代码块之一,但其核心引擎之中仍然存在有可以被攻击者利用的安全漏洞。所以,我们希望这些插件的开发者们能够吃一堑长一智,并且花费一些时间去了解一下相关的安全技术,以及哪些操作会引起不必要的麻烦。”

Tal表示:“我们可以打开一个HTML标签,然后向标签中的简码属性注入一些代码。很明显,WordPress在增加这个功能的时候并没有考虑周全。这也就是我们常说的,系统的功能越丰富,出出现系统错误的几率也就越大。”

除此之外,Tal还说到:“目前,WordPress的工程师们正在检查系统所有的基础功能代码。”


推荐阅读
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • Java String与StringBuffer的区别及其应用场景
    本文主要介绍了Java中String和StringBuffer的区别,String是不可变的,而StringBuffer是可变的。StringBuffer在进行字符串处理时不生成新的对象,内存使用上要优于String类。因此,在需要频繁对字符串进行修改的情况下,使用StringBuffer更加适合。同时,文章还介绍了String和StringBuffer的应用场景。 ... [详细]
  • 恶意软件分析的最佳编程语言及其应用
    本文介绍了学习恶意软件分析和逆向工程领域时最适合的编程语言,并重点讨论了Python的优点。Python是一种解释型、多用途的语言,具有可读性高、可快速开发、易于学习的特点。作者分享了在本地恶意软件分析中使用Python的经验,包括快速复制恶意软件组件以更好地理解其工作。此外,作者还提到了Python的跨平台优势,使得在不同操作系统上运行代码变得更加方便。 ... [详细]
  • 本文详细介绍了Mybatis中#与$的区别及其作用。#{}可以防止sql注入,拼装sql时会自动添加单引号,适用于单个简单类型的形参。${}则将拿到的值直接拼装进sql,可能会产生sql注入问题,需要手动添加单引号,适用于动态传入表名或字段名。#{}可以实现preparedStatement向占位符中设置值,自动进行类型转换,有效防止sql注入,提高系统安全性。 ... [详细]
  • 浅解XXE与Portswigger Web Sec
    XXE与PortswiggerWebSec​相关链接:​博客园​安全脉搏​FreeBuf​XML的全称为XML外部实体注入,在学习的过程中发现有回显的XXE并不多,而 ... [详细]
  • 本文讨论了B360主板是否可以安装win7系统的问题。由于B360主板不支持win7系统且缺乏官方驱动的支持,安装win7系统可能存在兼容性和稳定性问题。然而,通过借助USB3.0转接卡,B360主板仍然可以安装win7系统,但USB接口无法使用。相比之下,B365主板可以直接支持win7系统,并提供了相应的驱动,具有更好的稳定性和兼容性。选择合适的主板对于安装win7系统至关重要。 ... [详细]
  • 本文介绍了使用postman进行接口测试的方法,以测试用户管理模块为例。首先需要下载并安装postman,然后创建基本的请求并填写用户名密码进行登录测试。接下来可以进行用户查询和新增的测试。在新增时,可以进行异常测试,包括用户名超长和输入特殊字符的情况。通过测试发现后台没有对参数长度和特殊字符进行检查和过滤。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 本文介绍了Java高并发程序设计中线程安全的概念与synchronized关键字的使用。通过一个计数器的例子,演示了多线程同时对变量进行累加操作时可能出现的问题。最终值会小于预期的原因是因为两个线程同时对变量进行写入时,其中一个线程的结果会覆盖另一个线程的结果。为了解决这个问题,可以使用synchronized关键字来保证线程安全。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • 本文介绍了南邮ctf-web的writeup,包括签到题和md5 collision。在CTF比赛和渗透测试中,可以通过查看源代码、代码注释、页面隐藏元素、超链接和HTTP响应头部来寻找flag或提示信息。利用PHP弱类型,可以发现md5('QNKCDZO')='0e830400451993494058024219903391'和md5('240610708')='0e462097431906509019562988736854'。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • Java学习笔记之面向对象编程(OOP)
    本文介绍了Java学习笔记中的面向对象编程(OOP)内容,包括OOP的三大特性(封装、继承、多态)和五大原则(单一职责原则、开放封闭原则、里式替换原则、依赖倒置原则)。通过学习OOP,可以提高代码复用性、拓展性和安全性。 ... [详细]
  • MySQL中的MVVC多版本并发控制机制的应用及实现
    本文介绍了MySQL中MVCC的应用及实现机制。MVCC是一种提高并发性能的技术,通过对事务内读取的内存进行处理,避免写操作堵塞读操作的并发问题。与其他数据库系统的MVCC实现机制不尽相同,MySQL的MVCC是在undolog中实现的。通过undolog可以找回数据的历史版本,提供给用户读取或在回滚时覆盖数据页上的数据。MySQL的大多数事务型存储引擎都实现了MVCC,但各自的实现机制有所不同。 ... [详细]
  • GPT-3发布,动动手指就能自动生成代码的神器来了!
    近日,OpenAI发布了最新的NLP模型GPT-3,该模型在GitHub趋势榜上名列前茅。GPT-3使用的数据集容量达到45TB,参数个数高达1750亿,训练好的模型需要700G的硬盘空间来存储。一位开发者根据GPT-3模型上线了一个名为debuid的网站,用户只需用英语描述需求,前端代码就能自动生成。这个神奇的功能让许多程序员感到惊讶。去年,OpenAI在与世界冠军OG战队的表演赛中展示了他们的强化学习模型,在限定条件下以2:0完胜人类冠军。 ... [详细]
author-avatar
浪漫的美食
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有