ruby-on-rails - 在 Ubuntu 上更新 Ruby 的 libyaml

标签 ruby-on-rails ruby security ubuntu libyaml

这与最近的 libyaml 漏洞(CVE-2014-2525)有关。

我在我的 Gemfile 中更新了 psych按照建议升级到 2.0.5,但我的服务器上的 libyaml 版本仍然是 0.1.4 而不是 0.1.6。

看起来使用最新的 psych gem 不会更新 Ruby 使用的 libyaml 版本。

2.0.0p353 :001 > Psych.libyaml_version
 => [0, 1, 4]

显然 libyaml 指向安装在系统上的那个。注意 libyaml-0.so.2指向 /usr/lib/x86_64-linux-gnu/libyaml-0.so.2 :
ubuntu@host:~$ find $MY_RUBY_HOME -name psych.so | xargs ldd
    linux-vdso.so.1 =>  (0x00007fff22fff000)
    libruby.so.2.0 => /home/ubuntu/.rvm/rubies/ruby-2.0.0-p353/lib/libruby.so.2.0 (0x00007fc91a537000)
    libyaml-0.so.2 => /usr/lib/x86_64-linux-gnu/libyaml-0.so.2 (0x00007fc91a30e000)
    libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fc919f4d000)
    libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fc919d30000)
    librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fc919b28000)
    libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fc919923000)
    libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007fc9196ea000)
    libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fc9193ee000)
    /lib64/ld-linux-x86-64.so.2 (0x00007fc91abbf000)
/usr/lib/x86_64-linux-gnu/libyaml-0.so.2libyaml-0-2 安装如下图所示:
ubuntu@host:~$ dpkg -S /usr/lib/x86_64-linux-gnu/libyaml-0.so.2
libyaml-0-2: /usr/lib/x86_64-linux-gnu/libyaml-0.so.2

如果我理解正确,这意味着 Ruby 将 libyaml 动态链接到 APT 安装的那个。

Ubuntu 已发布 a patch修复了漏洞并且已经安装了该补丁。 libyaml 的版本仍然是 0.1.4。

因此,基于此,该漏洞似乎已经在我的服务器上修复。我对吗?有什么方法可以测试该漏洞是否已修复?

最佳答案

我认为 ldd只检查动态链接的库。如果它是静态链接的,则不会列出。这意味着漏洞已修复。

If you have compiled nginx yourself, you may have statically linked the openssl libraries. The ldd test will reveal no dependencies on the operating system libssl.so library.



http://nginx.com/blog/nginx-and-the-heartbleed-vulnerability/

关于ruby-on-rails - 在 Ubuntu 上更新 Ruby 的 libyaml,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22921895/

相关文章:

ruby-on-rails - Rails : Completed 500 Internal Server Error, 与 AngularJS $http.post 调用

ruby - 有没有办法将 html 刷新到 Sinatra 中的线路

security - 是否有任何安全措施可以抵抗蛮力攻击?

jquery - jQuery UI Bootstrap 在 Rails 中的什么位置

ruby-on-rails - Rails 4 session 不会跨请求持续存在

ruby-on-rails - 当正则表达式具有不同的字节表示时如何匹配元音变音符 (äöü)?

security - 你如何强制执行强密码?

security - 计算机是否部署了预先计算的素数列表

ruby-on-rails - 获取与模型关联的嵌套属性

ruby-on-rails - Rails - 防止发布请求从数组创建多行,同时仍保留数据