BadUSB 2.0 – USB Man in the midle

BadUSB 2.0 là một ứng dụng cấp giấy phép phần cứng Inline kêt hợp với cổng USB cố định tấn công trong mạng nội bộ – có thể nghe trộm, phát lại, sửa đổi, chế tạo, exfiltrate dữ liệu và BadUSB nằm bên trong một thiết bị.

BadUSB 2.0 - USB Man in the midle

BadUSB 2.0, một công cụ “có khả năng ảnh hưởng đến USB giao tiếp cố định thông qua một cuộc tấn công chủ động man-in-the-middle. Nó có thể đạt được kết quả tương tự như keylogger phần cứng, mô phỏng bàn phím và cấy ghép phần cứng BadUSB. Hơn nữa, BadUSB2 giới thiệu các kỹ thuật mới để đánh bại bàn phím OTP (one time password), tự động phát lại thông tin người dùng, cũng như tích hợp lệnh shell tương tác trên USB.

Nguyên văn bài báo nghiên cứu, BadUSB 2.0: USB man-in-the-middle(pdf), do nhà nghiên cứu bảo mật David Kierznowski có sẵn trên Royal Holloway. Bài viết mô tả BadUSB 2.0 là một “dòng giải pháp phần cứng” đó là “có khả năng thực hiện tấn công man-in-the-middle thụ động hay chủ động chống lại tốc độ thấp của các thiết bị USB-HID, chẳng hạn như bàn phím và chuột.” BadUSB 2.0 có thể “chặn bắt thông điệp từ máy tính cũng như tin nhắn dành cho các thiết bị ngoại vi.” – khả năng tấn công của nó khá là ấn tượng.

Kierznowski gửi một phiêncủa bài nghiên cứu của mình trên GitHub. Không giống như Rubber Ducky hoặc keylogger, mà Kierznowski nói “chỉ có thể đạt được một hoặc hai cuộc tấn công class như nghe trộm hoặc bịa đặt thông điệp,” BadUSB 2.0 “có thể nghe trộm, phát lại, sửa đổi, chế tạo, exfiltrate dữ liệu và BadUSB trong một thiết bị.” Kết hợp các cuộc tấn công class là khi “kịch bản tấn công thực sự thú vị bắt đầu nổi lên.

Ông ta nói thêm:

Thứ hai, các thiết bị mô phỏng bàn phím đăng ký như là một thiết bị USB bổ sung, làm cho chúng dễ dàng để phát hiện và ngăn chặn, nghĩa là tại sao bây giờ tôi đã hai bàn phím kèm theo !? Vâng, các thiết bị như vậy có thể dễ dàng phát hiện và bị chặn. Cũng có thể nói về BadUSB, nó thường cần phải đăng ký như một thiết bị USB thứ cấp để thực hiện một nhiệm vụ nguy hiểm. BadUSB2 cấy một ghép phần cứng INLINE cho nó khả tàng hình của một keylogger phần cứng nhưng khả năng xa hơn như đã đề cập ở trên.

Kierznowski mô tả quá trình thực hiện PoC cuộc tấn công

Eavesdrop (Nghe lén): Khi bàn phím đã được đăng ký đến mục tiêu, tất cả các tổ hợp phím được chụp vào thư mục ‘/ tmp’.

Modify (Chỉn sửa): đoạn mã như một vũ khí có thể sử dụng regular expressions để thay đổi tổ hợp phím dùng để đánh bại OTP. Trong POC này, chúng tôi chỉ đơn giản là làm phiền người dùng 🙂

Replay (Phát lại): đoạn mã PoC sẽ tự động phát hiện ‘ctrl-alt-delete’ và cho rằng đó là một phiên đăng nhập. Nó dừng theo dõi mãi cho đén khi nhấn phím ‘Enter’. Bất cứ lúc nào các lệnh ‘replay’ có thể được tự động xác thực đến các máy trạm.

Fabricate (Chế tạo): Start/Run hoặc lệnh chung chung có thể ra lệnh cho các hệ điều hành mục tiêu.

Exfiltrate: Tôi đã thực hiện PoC Powershell exfiltration sử dụng ‘mã morse’ – kỹ thuật (đèn LED) để exfiltrate dữ liệu. Sử dụng các báo cáo đầu ra bằng cách tùy chỉnh HID sẽ nhanh hơn, nhưng MS Windows hạn chế đọc/ghi truy cập từ Win 2K. Tóm lại, đây là một PoC rất thô sơ và nó rất chậm!

Trước khi bạn thích thú về bài viết này, Kierznowski lưu ý trong bài nghiên cứu, “BadUSB2 chỉ là một PoC, và mặc dù đoạn mã ở dạng core, nó sẽ yêu cầu phát triển hơn nữa để được sử dụng trong thế giới thực như lời cam kết.

Trên GitHub, ông kết luận rằng “việc đánh giá rủi ro” cho vấn đề này là “rủi ro thấp bởi vì bạn cần truy cập vật lý.” Nhưng “lưu ý rằng sẽ có một bản thiết kế dựa trên phiên bản này có khả năng sử dụng một số mẫu của RF, vì vậy việc truy cập một lần có thể đủ để tồn tại một cuộc tấn công. Ngoài ra, khi là lần cuối cùng bạn kiểm tra phần cứng cung cấp bởi các nhà cung cấp của bạn !? các cuộc tấn công chuỗi cung ứng là có thật –  🙂 “.

networkworld