【发布时间】: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.key 是bin/client 或容器本身自动生成的。而不是失败,命令成功了,我看到了 Karaf 控制台。
这是否意味着容器仍然容易受到这种攻击媒介的攻击?
【问题讨论】:
-
我注意到一个反对票,投票结束了这个问题。请在评论中解释投反对票的目的。
-
不是对您投反对票的人,但我认为您的意思是要问:“如何保护...而不是如何破解...?
-
最好在 Karaf 邮件列表上提问,我相信你会在那里得到更详细的答案...
标签: security ssh-keys apache-karaf