在OS X Lion或更早版本上禁用NTP


9

Network Time Protocol软件包中的一个新安全漏洞之后,Apple 为Mountain Lion和更新版本的OS X 提供了软件更新。

像往常一样,可能会卡住的旧版OS X(因为硬件不支持较新的版本,因为一个人需要Rosetta,…)未包含在此安全更新中。

我的问题是:

  • 是否足以禁用“软件偏好设置”中的“自动设置日期和时间”以确保ntpd未运行?

  • 如果出于安全考虑在OS X Snow Leopard或Lion上仅删除了ntdp二进制文件,可能会发生什么情况?

毫无疑问,我可能会使用这些说明来限制ntpd的范围而没有完全禁用/删除它,但是在这种情况下,仍然存在将其弄错并使ntpd暴露的风险。


请向Apple报告客户仍在使用的版本缺少安全修复程序。→ apple.com/feedback/macosx.html。他们没有一个security反馈词条尚未:(。

1
@danielAzuelos我曾经写过一篇博客文章:blog.frama-c.com/index.php?
Pascal Cuoq

1
@PascalCuoq offtopic:您可能是复苏的iMac将其与NUC到的Hackintosh) - google.com.ua/...以为我不知道,如果17"值得的麻烦还在20"绝对不会
火星

Answers:


7

是否足以禁用“软件偏好设置”中的“自动设置日期和时间”以确保ntpd未运行?

是的

这是确保这一点的方法。打开Terminalxterm窗口。

运行以下命令:

ps ax | grep ntp

并注意您ntpd正在运行一个进程。

打开System Preferences并关闭Set date and time automatically:

使用ps上面的命令检查您没有任何ntpd进程在运行。


不要删除ntpd二进制文件,这不是必需的,并且会剥夺您利用Apple的修复程序的机会:)。


有疑问,我可能会使用这些说明来限制范围

没有

此收据将使您ntpd无法奔跑,因此容易受到攻击。


1
由于某种原因,取消选中“自动设置日期和时间”并没有杀死ntpd进程。我必须运行:sudo launchctl unload /System/Library/LaunchDaemons/org.ntp.ntpd.plist
user12719 2014年

2
您使用的命令正是GUI的System Preferences功能。使用时,您应检查中的tail -f /var/log/system.log问题System Preferences。要调查此问题,建议您提出另一个问题。
2014年

8

而不是禁用ntpd,您应该下载ntp版本4.2.8的源代码并自己编译。您需要的是Xcode for Lion / SnowLeo。它应该可以在10.6.x和10.7.x上正常工作。

在CVE公开并发布源代码之后,我立即更新了10.10安装程序,我没有等待Apple发行更新。

要编译ntpd,请从ntp.org下载源代码并为OS X / FreeBSD 应用补丁。应用此修补程序后,您将可以只运行“ ./configure && make”。然后,您可以将二进制文件复制到适当的目录(/ usr / sbin /和/ usr / bin /)。

对于Mac OS X 10.7(Lion):

mkdir ntpd-fix
cd ntpd-fix
curl http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.8.tar.gz | tar zxf -
cd ntp-4.2.8/ntpd
curl http://bugs.ntp.org/attachment.cgi?id=1165 | patch -p1
cd ..
./configure && make

这是它们所属的文件和文件夹的列表,将从上面的源生成。编译后,所有这些文件将位于各个子文件夹中。

/usr/bin/sntp  
/usr/bin/ntp-keygen  
/usr/bin/ntpq  
/usr/sbin/ntpdc  
/usr/sbin/ntpdate  
/usr/sbin/ntpd

使用以下方法重命名旧的:

sudo mv /usr/sbin/ntpd /usr/sbin/ntpd.old

然后将新文件移入。将文件移到适当位置后,请确保将文件整理好:

sudo chown root:wheel /usr/sbin/ntpd

注意:我之所以没有使用, sudo make install是因为我不信任Makefile(我不确定它会将文件放置在Apple最初放置它们的同一文件夹中,并希望确保它们仍与旧文件位于同一位置那些)。手动移动6个文件不是一个大问题。其余文件(手册页,html页等是相同的,因此您不必费心移动这些文件。)


请添加必须复制的文件以及复制的位置
klanomath 2014年

@klanomath我刚刚用更多信息编辑了我的评论。让我知道您是否遇到任何问题。
MelB 2014年

我加上了其余的10分;-)
klanomath 2014年

ntpsnmpd呢?
klanomath 2014年

1
对于那些不想进行手动替换的人,应该足以./configure --prefix='/usr'作为第一步运行,然后继续进行操作make ; sudo make install
Trane Francks

1
  1. 我没有详细研究违规的文档。通常,ntp会定期查询服务器以获得更正。一旦建立了本地时钟的漂移,这些查询就不再频繁了。

  2. 大多数防火墙都配置为忽略来自外部的请求数据包。Ntp我认为使用名义上无状态的UDP。通常,防火墙会在UDP数据包出站后让UDP数据包重新进入一小段时间。返回数据包必须来自正确的IP,并具有正确的端口。一顶黑帽子将不得不颠覆您的DNS服务器或颠覆您的NTP服务器。

因此,假设某人未将pool.ntp.org指定为他的ntp服务器,那么有人会解释这种威胁实际上是如何发挥作用的吗?


解决方法:

  1. 从源代码构建-上面。
  2. 使用mac端口。尽管最初的构建将花费大量时间和相当大的空间,但这使安装变得相当轻松。更多信息https://www.macports.org/

您也可以通过这种方式使用Fink或Homebrew,但是MacPorts似乎对Apple OS的依赖性较小,因此从长远来看,对于较旧的系统,我怀疑会减轻痛苦。

  1. 将非脆弱计算机配置为本地ntp服务器。将易受攻击的计算机指向ntp服务器。在您的防火墙处,除ntpserver机器外,所有ntp的出站和入站均受阻。当我运行本地学校网络时,我有一台机器(freebsd)运行了很多网络服务,包括ntp。然后,它将每64秒广播一个ntp数据包。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.