1 điểm bởi GN⁺ 2024-05-12 | 1 bình luận | Chia sẻ qua WhatsApp

Tranh cãi về việc loại bỏ tính năng khỏi gói KeePassXC của Debian

  • Quản lý viên gói KeePassXC trên Debian đã đơn phương quyết định loại bỏ mọi tính năng khỏi gói.
  • Trên Debian sid, gói keepassxc mặc định sẽ bị loại bỏ các tính năng như mạng, SSH agent, plugin trình duyệt, fdo secret storage và chỉ còn lại các chức năng tối thiểu.
  • Nếu cần các tính năng đó, người dùng phải chuyển sang gói keepassxc-full.

Tranh cãi về lý do loại bỏ tính năng

  • Trong báo cáo lỗi của Debian, lý do được đưa ra là vấn đề bảo mật.
  • Tuy nhiên, nhóm KeePassXC cho rằng việc loại bỏ không chỉ tính năng mạng mà còn gần như mọi chức năng như hỗ trợ Yubikey, tự động nhập, tích hợp trình duyệt là quá mức.
  • Cũng có ý kiến cho rằng việc loại bỏ tính năng như vậy không hẳn làm giảm lỗ hổng mà chỉ lấy đi những chức năng người dùng cần.

Lập trường và phản ứng của Debian

  • Debian cho rằng việc loại bỏ mã không dùng đến và các tính năng không cần thiết là cách tốt nhất để bảo mật sau sự cố thỏa hiệp liblzma.
  • Tuy nhiên, họ bị chỉ trích vì đã đưa ra quyết định đơn phương mà không trao đổi trước với nhóm KeePassXC.
  • Để giảm thiểu sự nhầm lẫn cho người dùng, Debian quyết định cung cấp một gói chuyển tiếp để chuyển từ keepassxc sang keepassxc-full.

Ý kiến của GN⁺

  • Việc loại bỏ các tính năng không cần thiết vì lý do bảo mật tự nó không phải là điều xấu, nhưng việc đột ngột xóa các chức năng mà người dùng hiện có đang dùng mà không đổi tên gói là một cách làm không phù hợp.
  • Khi thay đổi chính sách gói trong các bản phân phối như Debian, nên cố gắng trao đổi với các nhà phát triển upstream và giảm thiểu tối đa sự nhầm lẫn từ góc nhìn người dùng.
  • Cách làm hợp lý là cung cấp riêng gói đầy đủ tính năng và gói tối thiểu, đồng thời đặt tên rõ ràng để người dùng có thể lựa chọn.
  • Tìm một trình quản lý mật khẩu khác cũng là một cách, nhưng chủ động đóng góp và hợp tác nhiều hơn với KeePassXC để cải thiện vấn đề cũng rất quan trọng.
  • Phần mềm tự do không có nghĩa là người quản lý gói có thể tùy ý làm gì cũng được; cần nỗ lực tôn trọng ý kiến của cộng đồng người dùng và nhà phát triển, đồng thời giao tiếp minh bạch.

1 bình luận

 
GN⁺ 2024-05-12
Ý kiến Hacker News

Tóm tắt bình luận Hacker News

1. Lo ngại về việc gỡ bỏ tính năng của dự án upstream rồi phân phối dưới cùng một tên

  • Việc gỡ bỏ các tính năng do dự án upstream triển khai rồi phân phối dưới cùng một tên là điều có thể gây vấn đề
  • Nếu muốn đi theo hướng này thì nên fork và phân phối dưới một tên khác
  • Có nhắc đến trường hợp trước đây người quản lý gói Chromium của Debian đã tự ý vô hiệu hóa việc cài tiện ích mở rộng

2. Ý kiến cho rằng việc gỡ bỏ tính năng mạng là hợp lý về mặt bảo mật

  • Trong trình quản lý mật khẩu, các tính năng mạng và tích hợp trình duyệt có thể trở thành lỗ hổng tiềm tàng
  • Nếu chỉ dùng cơ sở dữ liệu đáng tin cậy mà không có các tính năng liên quan đến mạng, thì ngay cả khi phát hiện lỗ hổng cũng không thể bị khai thác
  • Debian cũng có gói phiên bản đầy đủ bao gồm các tính năng mạng, nên người dùng muốn có thể cài keepassxc-full
  • Tuy vậy, việc gọi upstream là "tệ hại" không mang tính xây dựng, và keepassxc-lite cùng keepassxc-full có thể là tên gói phù hợp hơn

3. Ý kiến cho rằng đóng gói cả bản "full" và "minimal" mới là lựa chọn đúng đắn

  • Cần định nghĩa quan hệ Conflicts giữa hai phiên bản và tận dụng các thẻ Provides cùng Replaces để người dùng có thể lựa chọn
  • Đặt câu hỏi vì sao đây lại không phải là lựa chọn hiển nhiên

4. Nêu vấn đề trên Arch Linux khi ép phụ thuộc vào gói passim mà không có sự đồng ý của người dùng

  • Gói fwupd được cấu hình để phụ thuộc vào passim mà không có sự đồng ý của người dùng
  • passim chạy một máy chủ web trên 0.0.0.0:27500 và sử dụng GnuTLS vốn có nhiều lỗ hổng
  • Cấu hình như vậy gây lo ngại vì có khả năng bị khai thác

5. Ý kiến cho rằng theo nguyên tắc ít gây bất ngờ nhất, không nên vô hiệu hóa tính năng cốt lõi nếu không có rủi ro đã được ghi nhận rõ ràng

  • Các tính năng của KeePassXC không tự trở thành nguyên nhân gây lỗ hổng nếu không có sự can thiệp rõ ràng từ người dùng
  • Tính năng tích hợp trình duyệt an toàn hơn rất nhiều so với truy cập clipboard, đồng thời cũng phù hợp với định hướng của dự án
  • Số người dùng được hưởng lợi từ thay đổi này là cực ít, trong khi nó gây bất tiện nghiêm trọng cho những người đang dùng tích hợp trình duyệt

6. Lập luận rằng đây là quyết định sai của người quản lý gói Debian vì vẫn có thể phân biệt mà không làm hỏng người dùng hiện tại

  • Việc cung cấp KeePassXC không có tính năng mạng là điều tốt, nhưng xem tích hợp trình duyệt là tính năng ngách thì quá xa rời thực tế
  • Hơn một nửa người dùng KeePassXC trên Debian có thể sẽ bất ngờ vì quyết định lần này
  • Xét cho cùng đây là quyết định của người quản lý gói, nhưng không phải một quyết định tốt

7. Trích dẫn ý kiến của người quản lý KeePassXC

  • Đã nhận được báo cáo rằng cách đóng gói mới làm hỏng quy trình làm việc của mọi người
  • Cũng có trường hợp người dùng không thể truy cập cơ sở dữ liệu vì tính năng Yubikey bị gỡ bỏ
  • Những người mất quyền truy cập vào các bí mật quan trọng nhất của mình có thể hành động thiếu lý trí trong lúc hoảng loạn

8. Ý kiến cho rằng nếu thay đổi gói khác với ý định của dự án upstream thì phải phân phối dưới tên khác

  • Nếu người quản lý downstream thay đổi gói, họ nên phân phối dưới một tên khác và tự xử lý mọi báo cáo lỗi phát sinh từ phiên bản đã chỉnh sửa

9. Thông tin rằng có thể xem thảo luận mới nhất trong GitHub issue

10. Chỉ ra rằng tiêu đề là sai

  • Bài đăng gốc nói rằng không chỉ các tính năng mạng mà mọi tính năng đều đã bị gỡ bỏ, và điều này là sự thật
  • Tất cả các tính năng tùy chọn, bao gồm cả tính năng offline, đều được đặt thành tắt trong quá trình build