Danh sách kho lưu trữ có an toàn không? Có phiên bản HTTPS không?


24

Cập nhật kho lưu trữ có an toàn không?

Là một bộ não nhỏ từ phía nhà phát triển, tôi không thể hiểu tại sao danh sách kho lưu trữ http://security.ubuntu.comvà các httptrang web khác (không bảo mật) được liệt kê trong /etc/apt/sources.list. Nếu không có chuỗi chứng chỉ khớp, điều này sẽ xuất hiện dưới dạng "yêu cầu bất kỳ người trả lời nào cho danh sách các gói cần cập nhật" thay vì "hỏi trang web ubfox.com ..."

Bất kỳ mạng nào có thể chọn để giả mạo các trang web cập nhật và đây có phải là một cách phổ biến để cung cấp một bản sao được lưu trữ và lưu trữ cục bộ không?

Câu trả lời:


30

Nói tóm lại, vâng, chúng an toàn, vì mật mã khóa công khai được sử dụng để ký các tệp.

Tất cả các tệp được tải xuống bởi APT đều có chữ ký cho phép xác minh tệp đã tải xuống đối với các khóa chung được lưu trữ trên máy tính của bạn như được ký bởi Ubuntu và chỉ Ubuntu. Điều này xác minh rằng tệp bạn nhận được đã được ủy quyền bởi Ubuntu ở một số giai đoạn và đã không được sửa đổi hoặc giả mạo kể từ đó.

Một lời giải thích kỹ thuật về cách thức hoạt động này có sẵn từ Ubuntu (và từ Debian sử dụng cùng một hệ thống).

Do việc sử dụng HTTP thay vì HTTPS, nên những kẻ nghe trộm có thể thấy những tệp bạn đang tải xuống, nhưng quyền riêng tư không có khả năng là mối quan tâm của bạn trong trường hợp này. Một nỗ lực trung gian để sửa đổi các gói để tiêm mã độc hại vẫn sẽ thất bại vì nó sẽ phá vỡ cơ chế ký.

Một điều có thể xảy ra trong cơ chế ký này là nó không đảm bảo rằng bạn đang nhận được phiên bản cập nhật nhất của gói (thực sự, đôi khi các bản sao chậm cập nhật). Để giúp giảm thiểu vấn đề này, tệp phát hành đã ký bao gồm ngày "Hợp lệ cho đến khi" sau đó tất cả các tệp mà tài liệu tham khảo nên được coi là cũ. Sẽ là hợp lý khi một người trung gian thay thế một kho lưu trữ bằng một phiên bản lưu trữ trước đó chưa được sửa đổi trong ngày hợp lệ này và cho đến khi APT của bạn tin rằng không có cập nhật nào. Nhưng họ không thể thực hiện bất kỳ sửa đổi tùy ý nào đối với các gói và cũng không thể quay ngược thời gian qua một điểm nhất định.

Các cơ chế ký cung cấp bảo mật tốt hơn nhiều so với HTTPS trong loại môi trường phân tán này, nơi các tệp được nhân đôi trên nhiều máy chủ không được kiểm soát bởi Ubuntu. Về bản chất, bạn chỉ cần tin tưởng vào Ubuntu chứ không phải gương, vì vậy bạn cần chứng minh rằng các tệp ban đầu đến từ Ubuntu và chưa được sửa đổi vì - không cần phải xác minh danh tính của máy nhân bản.

Lưu ý rằng khi bạn thêm kho lưu trữ không chính thức vào danh sách nguồn của mình, chẳng hạn như PPA, bạn sẽ nhận được các tệp không được ký bởi Ubuntu. APT sẽ cảnh báo bạn về điều này, bởi vì chúng chưa được ký bởi một chứng chỉ khớp với bất kỳ khóa công khai nào được cài đặt trên máy tính của bạn như được ủy quyền bởi Ubuntu.


1
Tuyệt quá! Vì vậy, phiên bản ngắn là "lớp vận chuyển không an toàn, nhưng mỗi gói được ký. Không có danh sách bảo mật nào về các bản cập nhật và bản vá cho các vấn đề bảo mật hiện tại không được đảm bảo sẽ được gửi."
Charles Merriam

2
Không chắc chắn ý của bạn là gì "Không có danh sách bảo mật các bản cập nhật khả dụng" nhưng tệp phát hành và danh sách gói được ký. Chỉ là nó không xác minh rằng gương của bạn được cập nhật.
thomasrutter

3
Er, nếu không có cách nào để xác minh rằng một máy nhân bản, hoặc trang web chính, đã được cập nhật thì không có cách nào để biết nếu có bản cập nhật có sẵn, cập nhật bảo mật hay nói cách khác. Đó là, không có danh sách an toàn của các bản cập nhật có sẵn.
Charles Merriam

4
Alice chạy Ubuntu. Bob kiểm soát kết nối Internet của Alice. Bob không thể đặt gói xấu vào cài đặt của Alice vì mỗi gói được ký. Có một số lỗ hổng bảo mật khổng lồ được tìm thấy trong Ubuntu. Alice cố gắng tìm gói cập nhật, nhưng Bob xóa tất cả đề cập đến gói khỏi kiểm tra cập nhật của Alice. Alice đánh cắp một sysadmin và sau đó kéo kiểm tra cập nhật qua HTTPS từ ubfox.com để xác minh rằng cô ấy được kết nối với trang web thực cùng với một liên kết an toàn. Bây giờ Alice thấy bản cập nhật bảo mật và Bob không thể che giấu nó.
Charles Merriam

3
Tất nhiên đây là câu trả lời đúng. Nhưng điều tôi thấy lạ là dường như không ai lo lắng về một kẻ nghe trộm đang biên soạn một danh sách tất cả các gói bạn đã cài đặt theo thứ tự, bao gồm cả những gói bạn đã cập nhật và những gói nào bạn chưa có, để nhắm mục tiêu vào cuộc tấn công của chúng lỗ hổng bảo mật trong các gói đó.
Teekin

8

Câu trả lời đánh giá hàng đầu ở đây rõ ràng là lỗi thời. Kể từ đó, đã có 2 khai thác thực thi mã từ xa nghiêm trọng được tìm thấy trong apt vì xác minh gói lỗi. Bản tin an ninh ở đâyđây .

Điều này tồi tệ hơn nhiều so với những lo ngại về quyền riêng tư / rò rỉ thông tin và phiên bản gói cũ; điều này cho phép thực thi mã tùy ý như root, lỗi bảo mật hoàn toàn. Và vấn đề là: Những cuộc tấn công này đã bị ngăn chặn nếu https được sử dụng thay vì http.

Điều này chứng tỏ rằng nguyên tắc phòng thủ theo chiều sâu áp dụng ở đây cũng như bất kỳ nơi nào khác. Nhiều tuyên bố nổi xung quanh rằng https cung cấp không có hoặc lợi ích bảo mật tối thiểu trong bối cảnh apt đơn giản là không chính xác, như đã được thể hiện bởi các khai thác này.

Khi đó, câu hỏi đặt ra là lợi ích bảo mật của https có xứng đáng với chi phí về bộ nhớ đệm, tăng chi phí không, v.v. Tôi không thể trả lời điều đó, nhưng ít nhất tôi nghĩ Ubuntu / Canonical / Launchpad nên cung cấp các điểm cuối https tùy chọn cho kho lưu trữ của họ .


1
Bảo mật cũng là về quyền riêng tư và HTTPS ít nhất sẽ có một thời gian khó khăn hơn nhiều để tìm ra gói và phiên bản nào bạn đang chạy.
l0b0

Mặc dù vậy, tôi sẽ nói rằng miễn là bản thân apt không gặp vấn đề gì với điều này, thì http vẫn ổn. Tuy nhiên, https cung cấp một bản sao lưu trong trường hợp bảo mật gpg (hoặc cách nó sử dụng chính xác hơn) gây rối.
RoundDuckMan

2

Trên thực tế, phần bổ sung quan trọng, khi nâng cấp và cài đặt ban đầu tải xuống trực tuyến, nó cần rất nhiều lưu lượng truy cập và nguồn của các lưu lượng này, nghĩa là các luồng mã nhị phân và mã văn bản, có thể tái tạo được. Vì vậy, có một số lượng lớn các cổng và thiết bị bộ nhớ cache trên Internet cho nó. Một số lượng đáng kể các ISP đã thiết lập bộ đệm dựa trên giao thức http để tiết kiệm băng thông xuất khẩu và giao thức https không thể tồn tại dưới dạng bộ đệm trong suốt.

Một lý do khác là chương trình phản chiếu dựa trên http đơn giản hơn nhiều, không cần xác minh chứng chỉ tls-ssl và cũng không cần phải lo lắng về vấn đề mất hiệu lực chứng chỉ hoặc cấu hình máy chủ web.

Cách đây không lâu, khoảng 20 năm, khi bắt đầu Internet, https và lưu lượng truy cập Internet vẫn còn rất đắt. Do đó, http cũng bao gồm giao thức ftp, gần như đã lỗi thời, là cách chính để cung cấp cài đặt và cập nhật cho phân phối gói phần mềm trực tuyến.

Tương tự, Microsoft Windows và Office cũng được nâng cấp bằng http. Bạn có thể quan sát rằng đó thường không phải là gói cài đặt được tải xuống từ máy chủ của Microsoft, mà là máy chủ bộ nhớ cache tự xây dựng của ISP.

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.