Thủ thuật hack này nhắm vào trình torrent Transmission, nhưng cũng có thể sử dụng được trên các trình torrent khác.
Theo ArsTechnica, lỗ hổng nghiêm trọng này xuất hiện trên trình tải torrent Transmission, cho phép các website thực thi các mã độc trên một số máy tính của người dùng. Các nhà nghiên cứu nhóm Project Zero của Google đã cảnh báo rằng các trình tải torrent khác cũng có thể bị ảnh hưởng bởi lỗ hổng này.
Cụ thể, nhà nghiên cứu Tavis Ormandy đã đăng tải một đoạn mã tấn công mẫu vào tuần trước, cùng một bản hướng dẫn chi tiết về lỗ hổng mà đoạn mã này lợi dụng để tấn công. Thông thường, Project Zero sẽ không tung ra các tài liệu chi tiết như thế này trong vòng 90 ngày, hoặc cho tới khi nhà phát triển chính thức tung ra một bản vá lỗi. Nhưng trong trường hợp này, bản báo cáo riêng của Ormandy về trình tải torrent Transmission còn bao gồm cả một bản vá có thể giải quyết hoàn toàn lỗ hổng này. Nhà nghiên cứu này đã quyết định đi trước một bước và thông báo rộng rãi lỗ hổng này vào hôm thứ Ba - tức chỉ 40 ngày sau bản báo cáo đầu tiên - bởi các nhà phát triển Transmission vẫn chưa áp dụng các bản vá. Theo Ormandy thì bản báo cáo mà anh vừa đăng gần đây sẽ giúp Ubuntu và các dự án lớn có thể cài đặt các bản vá một cách độc lập mà không phải đợi phía Transmission.
"Tôi thấy rất khó chịu vì các nhà phát triển Transmission không phản hồi trong danh sách bảo mật riêng của họ. Tôi đã đề xuất công khai vấn đề này để các bên phân phối có thể tự mình áp dụng các bản vá" - Ormandy nói.
Một nhà phát triển Transmission đã chính thức lên tiếng rằng một bản vá chính thức sẽ được tung ra sớm nhất có thể nhưng không nói rõ là lúc nào. Nhà phát triển này cho biết lỗ hổng chỉ xuất hiện khi người dùng bật tính năng truy cập từ xa và tắt bảo vệ bằng mật mã. Theo anh, những người sử dụng phiên bản Transmission chưa được vá dưới dạng daemon nên đảm bảo rằng họ đã bật tính năng bảo vệ bằng mật mã.
Phương thức tấn công
Đoạn mã tấn công mẫu mà Ormandy tung lên lợi dụng một chức năng của Transmission, vốn cho phép người dùng điều khiển trình tải torrent của họ bằng trình duyệt web. Các nhà nghiên cứu cho biết hầu hết mọi người đều không bật tính năng bảo vệ bằng mật mã bởi họ cho rằng giao diện JSON RPC chỉ có thể được điều khiển bởi những người đang trực tiếp sử dụng máy tính đang chạy Transmission. Bằng cách sử dụng một thủ thuật tấn công gọi là DNS Rebinding - thiết lập lại DNS - Ormandy đã chứng minh rằng giao diện Transmission có thể bị điều khiển khi người dùng truy cập vào một trang web độc hại. Anh cho biết thủ thuật này hoạt động trên cả Chrome và Firefox trên Windows và Linux, và các nền tảng và trình duyệt khác cũng có thể bị ảnh hưởng.
Những kẻ tấn công lợi dụng lỗ hổng này bằng cách tạo ra một tên DNS để điều hướng localhost trên máy người dùng. Cụ thể:
2. Kẻ tấn công sẽ cấu hình DNS server của người dùng để luân phiên giao tiếp với 127.0.0.1 và 123.123.123.123 (DNS mà kẻ tấn công kiểm soát) với TTL rất thấp.
3. Khi trình duyệt giải mã 123.123.123.123, kẻ tấn công sẽ gởi một trang HTML có chức năng đợi cho đợt giải mã DNS này hết hạn (hoặc ép nó hết hạn bằng cách làm ngập cache với các lookups), sau đó kẻ tấn công sẽ chiếm được quyền đọc và đặt header.
Trong số những việc kẻ tấn công có thể thực hiện là thay đổi thư mục download của trình tải torrent thành thư mục chính của người dùng. Sau đó hắn ta sẽ ra lệnh Transmission tải về một tập tin torrent tên là ".bashrc" có khả năng tự động thực thi vào lần tiếp theo người dùng mở một bash shell. Ngoài ra, hắn còn có thể tái cấu hình Transmission từ xa để chạy bất kỳ câu lệnh nào được chọn sau khi đã tải xong một tập tin. Ormandy nói rằng phương thức tấn công này khá đơn giản, đó là lý do vì sao anh muốn đảm bảo mọi người phải được vá lỗi càng sớm càng tốt.
Ormandy nói rằng lỗ hổng này "một trong một số lỗi thực thi code từ xa trên nhiều trình tải torrent phổ biến". Anh không nêu tên các ứng dụng này bởi quy định 90 ngày vẫn chưa hết.
Dù lỗ hổng này xuất phát từ Transmission và chủ yếu ảnh hưởng người dùng Transmission, nhưng nó cũng cảnh báo về mối nguy hiểm của việc DNS Rebinding - vốn có thể bị lợi dụng trên khá nhiều ứng dụng khác nhau.
"Tôi thường gặp nhiều người không đồng ý rằng các website có thể truy cập các dịch vụ trên localhost hoặc trong mạng intranet. Họ hiểu rằng các dịch vụ trên localhost chỉ có thể được truy cập bởi các phần mềm chạy trên máy tính local và trình duyệt của họ cũng đang chạy trên máy tính local, nhưng lại tin rằng việc truy cập một website sẽ "chuyển" quyền truy cập đến một nơi nào đó. Thực ra nó không như vậy, nhưng đây lại là điều thường xuyên bị nhầm lẫn" - Ormandy nói.
Thêm bình luận