首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Roundcube mail代码审计笔记

以下笔记适用于 Roundcube mail 1.4.4 代码结构 ├─bin // 涉及到更新的相关bash脚本 ├─config //配置文件 ├─installer // 安装目录 ├─...在审计roundcube mail的代码过程中,我们可以把目标的重心放在program目录下,其中 include、lib、steps这三个目录分别包含了整个系统最核心的相关代码。...入口路由 在弄明白roundcube的结构时,首先我们把目标放在路由入口处。 值得注意的是steps中的代码都是.inc结尾的,所以我们必须要从入口文件进入才能走到具体的代码部分。...mvc结构 roundcube的MVC结构,出口函数为 $OUTPUT->send(); 跟随这个send函数,我们可以找到引入模板文件的位置 program/include/rcmail_output_html.php...Ui', array($this, 'alter_form_tag'), $output); return $output; } 相应的类变量被重新刷新回去 全局变量以及过滤函数 过滤函数 Roundcube

1.2K10
您找到你想要的搜索结果了吗?
是的
没有找到

加固你的Roundcube服务器

简介 Roundcube是一个Webmail客户端,具有强大的安全功能和来自其插件存储库的广泛自定义选项。本文介绍如何进一步保护基本的现有Roundcube安装。...如果在Roundcube的初始设置中配置IMAP和STMP设置时使用了SSL,则Roundcube与电子邮件服务器之间的连接已得到保护。...但是,从您的浏览器到Roundcube的连接却不是这样,您的电子邮件本身也是明文发送的。您的Roundcube帐户本身也仅受密码保护。...使用Roundcube插件为您的Roundcube帐户添加双重身份验证。 使用GPG使用Roundcube插件对电子邮件进行签名和加密。...第一步 - 添加SSL以安全访问Roundcube 现在,如果您在浏览器中使用服务器的域名访问Roundcube安装,则将通过HTTP而不是HTTPS进行连接。

4K00

Ubuntu如何使用Roundcube安装自己的Webmail客户端

第2步 - 下载Roundcube 与Linux中的许多项目一样,有两种方法可以安装Roundcube:从包或源。Roundcube有一个PPA,但由于该项目正在积极开发中,PPA经常过时。...www/roundcube/logs/ 我们已经下载了Roundcube的代码并更新了它的位置和权限,但此时它只是部分安装。...要完成安装,我们需要通过Roundcube的GUI将Roundcube连接到我们的数据库。在我们能够做到这一点之前,我们需要告诉Apache Roundcube在哪里可以加载网站。...mysql> mysql -u roundcube -p roundcubemail < /var/www/roundcube/SQL/mysql.initial.sql 系统将提示您输入roundcube...然后我们准备告诉Roundcube我们的电子邮件设置并完成安装。 第5步 - 配置Roundcube 如前所述,如果您现在尝试访问Roundcube安装,您将收到错误页面。

10.8K51

RoundCube Webmail邮件正文存储型XSS(CVE-2015-1433)

(BUT 还是被人申请下来了:CVE-2014-1433) roundcube webmail官网:http://roundcube.net/,下载最新版本。.../program/lib/Roundcube/rcube_washtml.php ,这文件实际上是一个富文本过滤类class rcube_washtml。...roundcube就是利用这个类对富文本进行过滤。 先大概看一下,我知道了这个类的特点: 用DOM对换入的HTML做解析,取出所有标签、相应属性的键和值。 利用白名单,只保留允许存在的标签和属性。...很大一点不同就是,roundcube对HTML进行拼接,拼接的过程中如果处理不好引号,很容易导致属性“值”越出引号范围,变成一个新的“属性”,比如onerror。 好,我们看到246行, <?...http://trac.roundcube.net/ticket/1490227 http://trac.roundcube.net/changeset/786aa0725/github

1.9K30

PHPMailer 代码执行漏洞(CVE-2016-10033)分析(含通用POC)

其实答案呼之欲出了——和Roundcube的RCE类似,mail函数的第五个参数,传命令参数的地方没有进行转义。...回顾一下当时Roundcube的漏洞:因为mail函数最终是调用的系统的sendmail进行邮件发送,而sendmail支持-X参数,通过这个参数可以将日志写入指定文件。...https://github.com/PHPMailer/PHPMailer cd PHPMailer git checkout -b CVE-2016-10033 v5.2.17 单步调试可以发现确实和之前Roundcube...word=roundcube )一样,是传给mail函数的第五个参数没有正确过滤: ? 但上图是错的,因为这里是不支持bash的一些语法的,也就是说反引号、${IFS}都是无效的。...但实际上PHPMailer在调用mailPassthru前会对email进行一定的检测,这导致我们无法构造出像Roundcube那些可以直接写文件的payload,检测部分的代码如下: <?

1.9K20

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券