【问题标题】:How to secure the default apache karaf installation如何保护默认的 apache karaf 安装
【发布时间】:2016-07-04 04:21:02
【问题描述】:

根据 Christian Schneider 的博文 How to hack into any default apache karaf installation,我检查了我的默认 Karaf 安装 (4.0.5) 是否不安全:

检查您的 karaf 安装是否打开的一些简单步骤。

  • 检查属性 sshPort 的“etc/org.apache.karaf.shell.cfg”。记下这个端口号。默认为 8101
  • 执行“ssh -p 8101 karaf@localhost”。正如预期的那样,它会要求输入密码。如果您不更改默认密码但很明显,这也可能很危险。
  • 现在只需执行 bin/client -a 8101。您将获得一个不提供密码的 shell。如果这可行,那么您的服务器很容易受到攻击

正如预期的那样。它很脆弱。因此,我尝试按照所述说明对其进行保护:

如何保护您的服务器?

  • 只需在“etc/keys.properties”中删除 karaf 用户的公钥。不幸的是,这将使 bin/client 命令停止工作。
  • 还要确保在“etc/users.properties”中更改 karaf 用户的密码。

我使用halt 命令关闭了Karaf 服务器。然后我更改了etc/users.properties中的karaf密码并删除了文件etc/keys.properties。然后我用bin/karaf 再次启动服务器。然后在一个新终端中,我通过尝试 ssh 进入服务器来测试安装是否安全。我验证了 ssh 登录现在需要新配置的密码。最后,我尝试使用bin/client -a 8101 命令。

此时,如博文中所述,我预计命令会失败:

不幸的是,这将使 bin/client 命令停止工作。

我注意到在运行bin/client -a 8101 后有一个新文件etc/host.keybin/client 或容器本身自动生成的。而不是失败,命令成功了,我看到了 Karaf 控制台。

这是否意味着容器仍然容易受到这种攻击媒介的攻击?

【问题讨论】:

  • 我注意到一个反对票,投票结束了这个问题。请在评论中解释投反对票的目的。
  • 不是对您投反对票的人,但我认为您的意思是要问:“如何保护...而不是如何破解...?
  • 最好在 Karaf 邮件列表上提问,我相信你会在那里得到更详细的答案...

标签: security ssh-keys apache-karaf


【解决方案1】:

没有。

OP 中描述的修改(更改etc/users.properties 中的默认密码并删除etc/keys.properties 保护容器免受特定攻击向量的影响。

根据Karafusers mailing list关于这个堆栈溢出问题的讨论:

默认情况下bin/client 尝试(按此顺序)使用:

  1. etc/keys.properties

  2. etc/users.properties

  3. karaf/karaf

  4. -u 提示输入密码

bin/client 是一个 SSH 客户端(用 Java 编写)。 host.key 是与 SSH 相同的文件,并且包含受信任的主机(您也有 .sshkaraf/known_hosts)。

从 OP 中的博客引用的部分已过时:

不幸的是,这将使 bin/client 命令停止工作。

【讨论】:

    猜你喜欢
    • 2017-01-19
    • 1970-01-01
    • 2016-06-26
    • 1970-01-01
    • 1970-01-01
    • 2016-03-19
    • 2016-09-24
    • 2015-12-05
    • 2013-06-12
    相关资源
    最近更新 更多