Vô hiệu hóa NTP trên OS X Lion trở lên


9

Sau một lỗ hổng bảo mật mới trong gói phần mềm Network Time Protocol , Apple đã cung cấp bản cập nhật phần mềm cho Mountain Lion và các phiên bản OS X mới hơn.

Như thường lệ, các phiên bản OS X cũ hơn mà người ta có thể bị mắc kẹt (vì phần cứng không hỗ trợ các phiên bản mới hơn, vì một phiên bản cần Rosetta, vá) không được cập nhật bảo mật.

Câu hỏi của tôi là:

  • Là vô hiệu hóa cài đặt ngày và giờ tự động, trong Chế độ tùy chọn phần mềm đủ để đảm bảo rằng ntpd không chạy?

  • Điều gì có thể phá vỡ nếu nhị phân ntdp bị xóa đơn giản để đảm bảo an toàn trên OS X Snow Leopard hoặc Lion?

Tôi nghi ngờ rằng tôi có thể sử dụng các hướng dẫn này để giới hạn phạm vi của ntpd mà không vô hiệu hóa / xóa nó hoàn toàn, nhưng trong trường hợp này vẫn có nguy cơ bị sai và để lộ ntpd.


Vui lòng báo cáo sự thiếu sửa lỗi bảo mật này của các phiên bản khách hàng vẫn đang sử dụng cho Apple. → apple.com/feedback/macosx.html . Họ chưa có securitymục phản hồi nào :(.
dan

1
@danielAzuelos Tôi đã đi xa như viết một bài đăng blog: blog.frama-c.com/index.php?post/2013/01/01/ chủ đề
Pascal Cuoq

1
@PascalCuoq Offtopic: Bạn có thể làm sống lại rằng iMac với chuyển đổi nó để Hackintosh với NUC) - google.com.ua/... tưởng tôi không biết nếu 17" . Giá trị rắc rối Tuy nhiên, 20" chắc chắn không
Iskra

Câu trả lời:


7

Là vô hiệu hóa cài đặt ngày và giờ tự động, trong Chế độ tùy chọn phần mềm đủ để đảm bảo rằng ntpd không chạy?

.

Đây là cách để đảm bảo chính mình về điều này. Mở một Terminalhoặc xtermcửa sổ.

Chạy lệnh sau:

ps ax | grep ntp

và lưu ý rằng bạn có một ntpdquy trình đang chạy.

Mở System Preferencesvà tắtSet date and time automatically:

Kiểm tra với pslệnh trên mà bạn không có bất kỳ ntpdquá trình đang chạy.


Đừng xóa ntpdnhị phân, điều này là không cần thiết và sẽ làm mất cơ hội của bạn để tận dụng lợi thế của bản sửa lỗi từ Apple :).


Tôi nghi ngờ tôi có thể sử dụng các hướng dẫn này để giới hạn phạm vi

Không .

Biên lai này sẽ khiến bạn phải chạy ntpdvà do đó bị tấn công.


1
Vì một số lý do, việc bỏ chọn "thiết lập ngày và giờ tự động" đã không giết quá trình ntpd đối với tôi. Tôi đã phải chạy:sudo launchctl unload /System/Library/LaunchDaemons/org.ntp.ntpd.plist
12719

2
Lệnh bạn đã sử dụng chính xác là những gì GUI System Preferencesđang làm. Khi sử dụng nó, bạn nên kiểm tra xem tail -f /var/log/system.logđiều gì có thể xảy ra trong bạn System Preferences. Để điều tra vấn đề này, tôi khuyên bạn nên khởi động một câu hỏi khác.
dan

8

Thay vì vô hiệu hóa ntpd, bạn nên tải xuống nguồn cho phiên bản 4.2.8 của ntp và tự biên dịch nó. Tất cả bạn cần là Xcode cho Lion / SnowLeo. Nó sẽ hoạt động trên 10.6.x và 10.7.x tốt.

Tôi đã cập nhật cài đặt 10.10 của mình ngay lập tức sau khi CVE được công khai và mã nguồn được phát hành và tôi đã không chờ đợi Apple phát hành bản cập nhật.

Để biên dịch ntpd, tải xuống nguồn từ ntp.org và áp dụng bản vá cho OS X / FreeBSD. Sau khi áp dụng bản vá này, bạn sẽ có thể chạy "./cool && make." Sau đó, bạn có thể sao chép các tệp nhị phân vào các thư mục thích hợp (/ usr / sbin / và / usr / bin /).

Đối với Mac OS X 10.7 (Sư tử):

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

Đây là danh sách các tệp và thư mục mà chúng thuộc về chúng sẽ được xây dựng từ nguồn ở trên. Sau khi biên dịch, tất cả các tệp này sẽ nằm trong các thư mục con khác nhau.

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

Đổi tên những cái cũ bằng cách sử dụng một cái gì đó như:

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

và sau đó di chuyển cái mới vào. Hãy chắc chắn để chỉnh các tệp sau khi di chuyển chúng vào vị trí:

sudo chown root:wheel /usr/sbin/ntpd

Lưu ý : Tôi không sử dụng sudo make installvì tôi không tin Makefile (Tôi không chắc nó sẽ đặt các tệp vào cùng thư mục mà Apple ban đầu đã đặt chúng vào và muốn chắc chắn rằng chúng vẫn ở cùng một vị trí như cũ những cái). Di chuyển thủ công 6 tập tin không phải là một vấn đề lớn. Phần còn lại của các tệp (trang man, trang html, v.v ... đều giống nhau nên bạn không phải bận tâm đến việc di chuyển chúng.)


vui lòng thêm tập tin nào phải được sao chép và vị trí
klanomath

@klanomath Tôi vừa chỉnh sửa bình luận của tôi với nhiều thông tin hơn. Hãy cho tôi biết nếu bạn gặp phải bất kỳ vấn đề.
MelB

tôi đã thêm phần còn lại và 10 điểm ;-)
klanomath

ntpsnmpd thì sao?
klanomath

1
Đối với những người không muốn thực hiện thay thế thủ công, nên chạy ./configure --prefix='/usr'như bước ban đầu và sau đó theo dõi make ; sudo make install.
Trane Francks

1
  1. Tôi đã không đi sâu vào tài liệu vi phạm một cách chi tiết. Thông thường ntp thực hiện các truy vấn định kỳ đến các máy chủ để được chỉnh sửa. Khi sự trôi dạt của đồng hồ cục bộ được thiết lập, các truy vấn này không thường xuyên.

  2. Hầu hết các tường lửa được cấu hình để bỏ qua các gói yêu cầu từ bên ngoài. Ntp tôi nghĩ rằng sử dụng UDP là không quốc tịch. Thông thường, tường lửa sẽ cho phép một gói UDP quay lại trong một cửa sổ nhỏ sau khi gói UDP bị mất. Gói trả về phải từ đúng IP và có đúng cổng. Một chiếc mũ đen sẽ phải lật đổ máy chủ DNS của bạn hoặc lật đổ máy chủ NTP của bạn.

Vì vậy, ai đó sẽ giải thích làm thế nào mối đe dọa này thực sự được đưa vào chơi, giả sử rằng người đó không chỉ định pool.ntp.org là máy chủ ntp của mình?


Cách xung quanh này:

  1. Xây dựng từ nguồn - ở trên.
  2. Sử dụng cổng mac. Điều này làm cho việc cài đặt khá khó khăn, mặc dù việc xây dựng ban đầu sẽ mất nhiều thời gian và không gian khá lớn. Thêm thông tin https://www.macports.org/

Bạn cũng có thể sử dụng Fink hoặc Homebrew theo cách này, nhưng MacPorts dường như ít phụ thuộc vào hệ điều hành Apple hơn, vì vậy về lâu dài đối với một hệ thống cũ hơn tôi nghi ngờ sẽ có ít đau hơn.

  1. Cấu hình một máy không dễ bị tổn thương để trở thành một máy chủ ntp cục bộ. Điểm máy dễ bị tấn công đến máy chủ ntp. Tại tường lửa của bạn chặn cả bên ngoài và bên trong cho ntp cho tất cả trừ máy ntpserver. Khi tôi điều hành một mạng lưới trường học địa phương, tôi có một máy (freebsd) chạy một loạt các dịch vụ mạng, bao gồm ntp. Sau đó, nó sẽ phát một gói ntp sau mỗi 64 giây.
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.