Làn sóng báo cáo bảo mật từ AI thúc đẩy việc gỡ bỏ mã nguồn khỏi Linux Kernel
Các nhà phát triển Linux Kernel đang đề xuất loại bỏ hàng loạt driver mạng và hệ thống vô tuyến nghiệp dư do áp lực từ hàng loạt báo cáo lỗi bảo mật được tạo bởi AI. Những đoạn mã cũ kỹ và thiếu người bảo trì này trở thành gánh nặng lớn khi các công cụ LLM liên tục phát hiện ra lỗ hổng trong đó. Quyết định này nhằm giảm tải cho đội ngũ phát triển nhưng cũng gây tranh luận về việc hỗ trợ phần cứng cũ.
Cộng đồng phát triển Linux Kernel đang đứng trước một quyết định khó khăn nhưng cần thiết: loại bỏ các mã nguồn cũ kỹ và ít người sử dụng. Động lực chính cho việc này không phải là sự lỗi thời của phần cứng, mà là sự gia tăng đột biến của các báo cáo lỗi bảo mật được tạo tự động bởi các Mô hình Ngôn ngữ Lớn (LLM).
Trong số các mã nguồn bị đề xuất loại bỏ có driver Ethernet ISA và PCMCIA, một số driver PCI, giao thức AX.25 và hệ thống vô tuyến nghiệp dư (amateur radio), cũng như các giao thức ATM và ISDN. Các nhà phát triển cho rằng việc duy trì những mã nguồn này trong nhân Linux chính thống (in-tree) đã trở nên quá tốn kém về mặt nỗ lực.
Áp lực từ các công cụ AI
Vấn đề cốt lõi nằm ở chỗ các công cụ AI hiện đại đang quét mã nguồn của Linux Kernel và phát hiện ra hàng loạt lỗ hổng bảo mật, đặc biệt là trong các driver cũ. Những đoạn mã này thường được viết từ nhiều năm trước, khi các tiêu chuẩn bảo mật khắt khe hiện nay chưa được áp dụng.
Một nhà phát triển kernel chia sẻ rằng bộ giao thức vô tuyến nghiệp dư (AX.25, NET/ROM, ROSE) từ lâu đã là "nam châm thu hút lỗi" và công cụ tìm lỗi tự động như Syzbot. Tuy nhiên, sự xuất hiện của các báo cáo do AI tạo ra đã đẩy vấn đề lên đỉnh điểm. Vì không có ai tình nguyện đứng ra xử lý dòng báo cáo lỗi khổng lồ này, việc đưa mã nguồn ra khỏi cây kernel chính thống được xem là giải pháp cuối cùng để "bảo vệ sự tỉnh táo" của đội ngũ phát triển.
Bảo mật so với tính tương thích
Quyết định này đã gây ra nhiều tranh luận trong cộng đồng kỹ thuật. Một số người cho rằng việc loại bỏ các driver này sẽ làm tăng tính bảo mật tổng thể của hệ thống, vì các mã nguồn không được bảo trì thường chứa các lỗ hổng có thể bị khai thác. Nếu không ai sửa lỗi, tốt nhất là loại bỏ chúng đi để tránh rủi ro.
Tuy nhiên, nhiều ý kiến lo ngại về việc người dùng sở hữu phần cứng cũ hoặc những người đam mê vô tuyến nghiệp dư sẽ bị bỏ lại phía sau. Việc buộc họ phải sử dụng các phiên bản kernel cũ hơn để tiếp tục sử dụng thiết bị của mình không phải là một giải pháp lý tưởng, đặc biệt khi các phiên bản cũ cũng có thể chứa các lỗ hổng bảo mật khác chưa được khắc phục.
Tương lai của các driver cũ
Một số giải pháp thay thế đã được đưa ra thảo luận. Một ý kiến đề xuất việc viết lại các driver này bằng ngôn ngữ lập trình Rust. Ngay cả khi logic của chương trình vẫn chứa lỗi, Rust có thể ngăn chặn được các lỗi hỏng bộ nhớ (memory corruption) – một loại lỗ hổng nghiêm trọng thường gặp trong các driver C cũ.
Một hướng đi khác là tách biệt hoàn toàn các driver này ra khỏi nhân Linux chính thống, chuyển chúng sang các dự án riêng biệt. Điều này sẽ giúp người dùng vẫn có thể sử dụng phần cứng cũ nếu cần thiết, trong khi đội ngũ phát triển kernel chính không phải chịu trách nhiệm về các vấn đề bảo mật của chúng.
Sự kiện này đánh dấu một bước ngoặt mới trong phát triển phần mềm nguồn mở, nơi các công cụ AI không chỉ hỗ trợ viết mã mà còn tác động mạnh mẽ đến quy trình bảo trì và quản lý vòng đời của dự án.



