WhiteHat News #ID:2112
VIP Members
-
16/06/2015
-
83
-
672 bài viết
Phát hiện nhiều lỗ hổng 36 tuổi trên máy khách SCP
Một loạt các lỗ hổng 36 tuổi đã được phát hiện trong Giao thức sao chép an toàn (Secure Copy Protocol - SCP) của nhiều ứng dụng máy khách. Các lỗ hổng có thể bị các máy chủ độc hại khai thác để ghi đè trái phép các tệp tùy ý trong thư mục đích của máy khách SCP.
Giao thức điều khiển phiên truyền (SCP), còn được gọi là sao chép an toàn, là giao thức mạng cho phép người dùng chuyển các tệp tin giữa máy chủ cục bộ và máy chủ từ xa một cách an toàn bằng RCP (Giao thức sao chép từ xa) và giao thức SSH.
Nói cách khác, SCP, xuất hiện từ năm 1983, là phiên bản an toàn của RCP sử dụng xác thực và mã hóa giao thức SSH để chuyển các tệp tin giữa máy chủ và máy khách.
Được phát hiện bởi Harry Sintonen, chuyên gia của F-Secure, các lỗ hổng tồn tại do xác nhận yếu được thực hiện bởi các máy khách SCP, có thể bị lạm dụng bởi các máy chủ độc hại hoặc kẻ tấn công MiTM để thả hoặc ghi đè tập tin tùy ý trên hệ thống của máy khách.
"Nhiều máy khách scp không xác minh được nếu các đối tượng được máy chủ SCP trả về khớp với những đối tượng được yêu cầu. Vấn đề này có từ năm 1983 và từ RCP, vốn là một giao thức được SCP sử dụng. Một lỗ hổng riêng biệt trong máy khách cho phép tùy ý thay đổi thuộc tính của thư mục đích. Sau đó, hai lỗ hổng trong máy khách có thể cho phép máy chủ giả mạo đầu ra của máy khách", Sintonen giải thích. Một kịch bản tấn công cụ thể là, máy chủ do kẻ tấn công kiểm soát có thể thả tệp .bash_aliases vào thư mục chính của nạn nhân, điều này sẽ lừa hệ thống thực thi các lệnh độc hại ngay khi người dùng Linux khởi chạy một chương trình mới.
Theo giải thích của nhà nghiên cứu, "việc chuyển các tệp bổ sung bị ẩn đi bằng cách gửi các chuỗi điều khiển ANSI qua stderr".
Nhiều lỗ hổng trên máy khách SCP
Theo thông báo, các lỗ hổng được đề cập sau đây đã được phát hiện vào tháng 8 năm ngoái, sau đó được báo cho các nhà phát triển của các máy khách bị ảnh hưởng bao gồm OpenSSH, PuTTY và WinSCP.
- Máy khách SCP xác thực không đúng tên thư mục (CVE-2018-20685) - máy khách SCP tồn tại lỗ hổng có thể cho phép máy chủ SCP từ xa sửa đổi các quyền của thư mục đích bằng cách sử dụng tên thư mục rỗng ('D0777 0 \n') hoặc chấm ('D0777 0 .\n ').
- Máy khách SCP thiếu xác thực tên đối tượng nhận được (CVE-2019-6111) - Lỗ hổng này có thể cho phép máy chủ SCP độc hại ghi đè lên các tệp tùy ý trong thư mục đích của máy khách SCP. Nếu một thao tác đệ quy (-r) được thực hiện, máy chủ cũng có thể thao túng các thư mục con (ví dụ: ghi đè .ssh/authorized_keys).
- Giả mạo máy khách SCP qua tên đối tượng (CVE-2019-6109) - Do thiếu ký tự mã hóa trong hiển thị tiến trình, đầu ra của máy khách có thể bị thao túng bằng mã ANSI để ẩn các tệp bổ sung được truyền.
- Giả mạo máy khách SCP thông qua stderr (CVE-2019-6110) - Vấn đề này tương tự như vấn đề trên, cho phép một máy chủ độc hại thao túng đầu ra của máy khách.
Do các lỗ hổng ảnh hưởng đến việc triển khai giao thức SCP, tất cả các ứng dụng máy khách SCP, bao gồm OpenSSH, PuTTY và WinSCP sử dụng SCP làm tiêu chuẩn để truyền tệp tin đều bị ảnh hưởng.
WinSCP đã giải quyết các vấn đề với việc phát hành phiên bản 5.14 vào tháng 10 năm ngoái và bản vá cũng được bao gồm trong phiên bản 5.14.4 hiện tại.
CVE-2018-20685 đã được vá trong quá trình triển khai giao thức SCP của OpenSSH vào tháng 11 năm ngoái, mặc dù bản sửa lỗi chưa được nhà cung cấp chính thức phát hành. Ba lỗ hổng còn lại vẫn chưa được vá trong phiên bản 7.9, phiên bản mới nhất được phát hành hồi tháng 10.
Tuy nhiên, nếu thấy lo lắng về máy chủ SCP độc hại, bạn có thể cấu hình hệ thống của mình để sử dụng SFTP (FTP an toàn).
PuTTY vẫn chưa khắc phục được các lỗ hổng, vì phiên bản PuTTY mới nhất là phiên bản 0.7 vào tháng 7 năm 2017.
Bkav khuyến cáo người dùng nên kiểm tra lại phiên bản của các ứng dụng có khả năng bị ảnh hưởng mà mình đang sử dụng và cập nhật bản vá càng sớm càng tốt. Với các ứng dụng chưa có bản vá, như PuTTY PSCP, người dùng cần thận trọng với các server kết nối tới. Tốt nhất, người dùng nên chuyển qua dùng các phần mềm an toàn hơn.
Giao thức điều khiển phiên truyền (SCP), còn được gọi là sao chép an toàn, là giao thức mạng cho phép người dùng chuyển các tệp tin giữa máy chủ cục bộ và máy chủ từ xa một cách an toàn bằng RCP (Giao thức sao chép từ xa) và giao thức SSH.
Nói cách khác, SCP, xuất hiện từ năm 1983, là phiên bản an toàn của RCP sử dụng xác thực và mã hóa giao thức SSH để chuyển các tệp tin giữa máy chủ và máy khách.
Được phát hiện bởi Harry Sintonen, chuyên gia của F-Secure, các lỗ hổng tồn tại do xác nhận yếu được thực hiện bởi các máy khách SCP, có thể bị lạm dụng bởi các máy chủ độc hại hoặc kẻ tấn công MiTM để thả hoặc ghi đè tập tin tùy ý trên hệ thống của máy khách.
"Nhiều máy khách scp không xác minh được nếu các đối tượng được máy chủ SCP trả về khớp với những đối tượng được yêu cầu. Vấn đề này có từ năm 1983 và từ RCP, vốn là một giao thức được SCP sử dụng. Một lỗ hổng riêng biệt trong máy khách cho phép tùy ý thay đổi thuộc tính của thư mục đích. Sau đó, hai lỗ hổng trong máy khách có thể cho phép máy chủ giả mạo đầu ra của máy khách", Sintonen giải thích. Một kịch bản tấn công cụ thể là, máy chủ do kẻ tấn công kiểm soát có thể thả tệp .bash_aliases vào thư mục chính của nạn nhân, điều này sẽ lừa hệ thống thực thi các lệnh độc hại ngay khi người dùng Linux khởi chạy một chương trình mới.
Theo giải thích của nhà nghiên cứu, "việc chuyển các tệp bổ sung bị ẩn đi bằng cách gửi các chuỗi điều khiển ANSI qua stderr".
Nhiều lỗ hổng trên máy khách SCP
Theo thông báo, các lỗ hổng được đề cập sau đây đã được phát hiện vào tháng 8 năm ngoái, sau đó được báo cho các nhà phát triển của các máy khách bị ảnh hưởng bao gồm OpenSSH, PuTTY và WinSCP.
- Máy khách SCP xác thực không đúng tên thư mục (CVE-2018-20685) - máy khách SCP tồn tại lỗ hổng có thể cho phép máy chủ SCP từ xa sửa đổi các quyền của thư mục đích bằng cách sử dụng tên thư mục rỗng ('D0777 0 \n') hoặc chấm ('D0777 0 .\n ').
- Máy khách SCP thiếu xác thực tên đối tượng nhận được (CVE-2019-6111) - Lỗ hổng này có thể cho phép máy chủ SCP độc hại ghi đè lên các tệp tùy ý trong thư mục đích của máy khách SCP. Nếu một thao tác đệ quy (-r) được thực hiện, máy chủ cũng có thể thao túng các thư mục con (ví dụ: ghi đè .ssh/authorized_keys).
- Giả mạo máy khách SCP qua tên đối tượng (CVE-2019-6109) - Do thiếu ký tự mã hóa trong hiển thị tiến trình, đầu ra của máy khách có thể bị thao túng bằng mã ANSI để ẩn các tệp bổ sung được truyền.
- Giả mạo máy khách SCP thông qua stderr (CVE-2019-6110) - Vấn đề này tương tự như vấn đề trên, cho phép một máy chủ độc hại thao túng đầu ra của máy khách.
Do các lỗ hổng ảnh hưởng đến việc triển khai giao thức SCP, tất cả các ứng dụng máy khách SCP, bao gồm OpenSSH, PuTTY và WinSCP sử dụng SCP làm tiêu chuẩn để truyền tệp tin đều bị ảnh hưởng.
WinSCP đã giải quyết các vấn đề với việc phát hành phiên bản 5.14 vào tháng 10 năm ngoái và bản vá cũng được bao gồm trong phiên bản 5.14.4 hiện tại.
CVE-2018-20685 đã được vá trong quá trình triển khai giao thức SCP của OpenSSH vào tháng 11 năm ngoái, mặc dù bản sửa lỗi chưa được nhà cung cấp chính thức phát hành. Ba lỗ hổng còn lại vẫn chưa được vá trong phiên bản 7.9, phiên bản mới nhất được phát hành hồi tháng 10.
Tuy nhiên, nếu thấy lo lắng về máy chủ SCP độc hại, bạn có thể cấu hình hệ thống của mình để sử dụng SFTP (FTP an toàn).
PuTTY vẫn chưa khắc phục được các lỗ hổng, vì phiên bản PuTTY mới nhất là phiên bản 0.7 vào tháng 7 năm 2017.
Bkav khuyến cáo người dùng nên kiểm tra lại phiên bản của các ứng dụng có khả năng bị ảnh hưởng mà mình đang sử dụng và cập nhật bản vá càng sớm càng tốt. Với các ứng dụng chưa có bản vá, như PuTTY PSCP, người dùng cần thận trọng với các server kết nối tới. Tốt nhất, người dùng nên chuyển qua dùng các phần mềm an toàn hơn.
The Hacker News, Bkav