1 điểm bởi GN⁺ 2025-08-08 | 2 bình luận | Chia sẻ qua WhatsApp
  • Firmware tùy chỉnh của Flipper Zero được xác nhận gần đây đã vô hiệu hóa hoàn toàn bảo mật rolling code của xe hơi
  • Khác với phương pháp RollJam, cuộc tấn công này có thể sao chép tất cả chức năng nút bấm chỉ bằng cách bắt được tín hiệu đơn lẻ của một phím
  • Phương thức dùng trong cuộc tấn công là thao tác kỹ thuật ngược chuỗi hoặc brute-force trên một danh sách mã khổng lồ
  • Firmware hoạt động dựa trên nguyên lý tấn công RollBack được trình bày trong một nghiên cứu mới
  • Xe của nhiều nhà sản xuất, bao gồm Chrysler, Ford, Hyundai, đang bị ảnh hưởng và không có giải pháp đơn giản

Lỗ hổng bảo mật rolling code qua Flipper Zero

Gần đây, kênh YouTube Talking Sasquach đã trình diễn firmware tùy chỉnh được áp dụng trên Flipper Zero, cho thấy có thể vượt qua cơ chế bảo mật rolling code dùng trong chìa khóa khởi động từ xa của xe hơi

Security rolling code và các phương thức tấn công trước đây

  • Hệ thống rolling code tạo ra mã dùng một lần mới mỗi lần bằng thuật toán được đồng bộ hóa giữa máy phát (chìa khóa) và máy thu (xe)
  • Cơ chế này được áp dụng nhằm ngăn chặn tấn công phát lại (replay) và truy cập trái phép
  • Trước đây từng có cách tấn công RollJam, trong đó tín hiệu xe bị jam để bắt và tái sử dụng, nhưng khó triển khai trong thực tế

Kỹ thuật tấn công mới

  • Cuộc tấn công này có thể sao chép tất cả chức năng như khóa/mở khóa, mở cốp chỉ bằng việc bắt một tín hiệu nút bấm duy nhất
  • Phương pháp này không cần một tín hiệu gây nhiễu hoặc thiết bị bổ sung nào khác, chỉ cần Flipper Zero là đủ
  • Khi tín hiệu khóa bị bắt, chìa khóa từ xa hiện hữu sẽ mất đồng bộ và không còn sử dụng được

Nguyên lý tấn công

  • Kẻ tấn công thực hiện kỹ thuật đảo ngược chuỗi từ dò rò rỉ chuỗi hoặc brute-force dựa trên danh sách chuỗi khổng lồ
  • Một số chuyên gia cho rằng firmware này dựa trên lý thuyết tấn công RollBack gần đây công bố trong một bài báo
    • Cơ chế RollBack hoạt động bằng cách phát lại mã rolling code đã bắt theo thứ tự nhất định nhằm đưa hệ thống đồng bộ trở về trạng thái trước

Tác động và tình trạng ứng phó

  • Trong video trình diễn, có thể thấy toàn bộ remote của xe được mô phỏng chỉ sau một lần bắt tín hiệu duy nhất
  • Các nhà sản xuất chịu ảnh hưởng bao gồm Chrysler, Dodge, Fiat, Ford, Hyundai, Jeep, Kia, Mitsubishi, Subaru
  • Hiện tại chưa có cách vá phần mềm hay chỉnh sửa đơn giản; biện pháp thay thế duy nhất được ghi nhận là thu hồi xe quy mô lớn nhưng chưa có giải pháp nào áp dụng tức thì

2 bình luận

 
ndrgrd 2025-08-18

Mặc dù họ cố tình dùng cụm từ gây sốc “firmware darkweb”, nhưng thực chất chỉ là kích hoạt các cảm biến có sẵn trên thiết bị thôi.

Flipper Zero không phải thiết bị tội phạm chuyên nghiệp, mà gần giống một món đồ chơi chỉ gồm một cụm cảm biến gắn với hệ điều hành thân thiện người dùng. Việc tự hào vì nó chỉ bị tấn công ở mức này thì không phải điều đáng tự hào.

Nếu mức bảo mật có thể bị xâm nhập ở mức này, thì chẳng khác nào đi lại với cánh cửa để mở cả ngày. Mọi người dù không có Flipper Zero cũng có thể mua vài cảm biến qua Internet theo đúng con đường hợp pháp rồi làm đúng một việc tương tự.

 
GN⁺ 2025-08-08
Ý kiến trên Hacker News
  • Nhiều hệ thống khóa cuộn quay (rolling code) đang bán trên thị trường hiện nay dựa trên KeyLoq. KeyLoq vốn được thiết kế khá tốt, nhưng có một lỗ hổng lớn. Có một “khóa nhà sản xuất” (manufacturer key), và mọi thiết bị hỗ trợ ghép nối tại chỗ của remote đều cần khóa này. Nếu khóa nhà sản xuất này bị lộ, chỉ cần khoảng hai lần mẫu từ bộ xác thực là có thể suy ra khóa dãy (sequence key). Nếu không có khóa nhà sản xuất thì tấn công dừng + phát lại (replay) là khả thi, nhưng việc bẻ khóa dãy bằng brute-force thì không thực tế. Tuy nhiên, các receiver hỗ trợ lập trình tại chỗ bắt buộc phải có “khóa ma thuật” của nhà sản xuất này, nên bất kỳ ai cũng có thể mua một thiết bị như vậy rồi trích xuất khóa.

    • Thay vì dùng khóa master cố định, có thể đã thiết kế để mỗi receiver có khóa ngẫu nhiên riêng và chỉ cho phép ghép nối khi có kết nối vật lý trực tiếp giữa remote và receiver (phần bị khóa nằm bên trong xe). Dường như một hệ thống dùng chung kiểu này chưa chắc được triển khai vì đi ngược lại cách nhà sản xuất kiểm soát thị trường sửa chữa và aftermarket.

    • Đúng vậy. Thuật toán mã hóa KeeLoq bản thân đã không còn an toàn, nhưng Microchip hiện đã chuyển sang AES. KeeLoq cũng được dùng rất nhiều cho thiết bị đóng mở cổng gara, không chỉ trong ô tô. Một số receiver KeeLoq có chế độ “học”; khi nhận tín hiệu từ transmitter KeeLoq dùng cùng khóa nhà sản xuất thì chúng sẽ tự đăng ký. Chế độ học có thể được bật bằng nút trên PCB hoặc bằng transmitter “master”. https://en.wikipedia.org/wiki/KeeLoq

  • Tôi không hiểu vì sao việc công khai trên “dark web” lại là vấn đề. Có thể liên quan tới điều khoản USC 18 1029/30 của Hoa Kỳ, nhưng trên thực tế có thể dùng ở bất kỳ nơi nào trên Internet. Tôi thắc mắc vì sao chủ đề liên quan dark web luôn bị chính trị hóa và biến thành chiêu trò câu view. Cuối cùng thì đó vẫn là Internet.

    • Bởi vì ban đầu có hacker bán firmware trên chợ đen với giá 1000 USD. Lần này đúng là có thứ gì đó đang thực sự được bán trên dark web.

    • Người viết firmware dường như đã đăng tải lên diễn đàn dựa trên onion (tức dark web) với mục đích trộm xe thực sự.

    • Có thể là ví dụ về việc gọi Internet là kiểu “newspeak” khi muốn ám chỉ mô hình internet siết chặt kiểu Anh hay Trung Quốc.

  • Vì những lý do này, tôi nghĩ chức năng “nút khởi động không cần chìa” (keyless start button) của xe không phải là lựa chọn tốt. Cách cũ như chỉ dùng keyfob để mở cửa, còn việc khởi động thì dùng chìa khóa thật, sẽ an toàn hơn. Có nhiều lớp bảo mật thì tốt hơn. Từ kinh nghiệm làm việc trong ngành an toàn xe, tôi nhận thấy các hãng ô tô không hề thích xe của khách bị mất một cách triệt để; khi được bồi thường thì họ bán được nhiều xe mới hơn.

    • Theo tôi biết, thuật toán rolling code không được dùng cho nút start bấm, chỉ dùng cho chức năng keyfob thôi. Đặc biệt ở châu Âu do quy định về immobilizer, các khu vực khác cũng tương tự. Thường thì chức năng khóa từ xa tầm xa và chức năng start chỉ hoạt động khi gần xe được tách riêng để tăng bảo mật. Có vẻ các hãng xe châu Âu nhìn chung có bảo mật mã hóa chìa tốt hơn, do các yếu tố như quy định bảo hiểm, tỷ lệ trộm cao và các yêu cầu khác.

    • Nếu nghĩ đến mức phí bảo hiểm của một số mẫu xe tăng vọt, người mua Hyundai sẽ phải chuẩn bị cho mức phí cực cao. Thiệt hại về hình ảnh thương hiệu như vậy chắc chắn không rẻ.

    • Có thể hơi châm biếm, nhưng tôi nghĩ thay vì “an toàn”, từ “bảo mật” mới phù hợp hơn. Việc tội phạm dễ dàng lấy xe đang đậu có thể làm xã hội an toàn hơn một cách tổng thể. Khi đó, các vụ tấn công buộc người lái xe mất khả năng phản ứng bằng xe sẽ giảm. Nếu thực sự muốn bảo mật cho chiếc xe của mình, cách tốt nhất là đi chiếc xe cũ, để trong xe chỉ toàn thứ đã mất giá trị; xe tôi cũng đã cũ và đã chống chọi với rỉ sét, nhưng trong xe vẫn chỉ toàn rác.

    • Với câu “các hãng xe thực ra thích xe bị trộm”, Hyundai và Kia cũng nên lên tiếng.

    • Với DIY, chắc chắn có cách gắn công tắc hoặc relay đơn giản để thêm một lớp bảo mật kiểu MFA (xác thực đa yếu tố). Tuy nhiên, nó không giúp với các vấn đề như mất đồng bộ kiểu “desync” hoặc lỗi mở khóa.

  • Với video này, rất nhiều lời mà rất ít nội dung thực chất, nên khó đánh giá. Với thông tin được đưa ra, có vẻ chỉ là bản đóng gói chỉ điểm cho lỗ hổng rolling code đã có sẵn trước đó. https://github.com/jamisonderek/flipper-zero-tutorials/tree/main/subghz/apps/rolling-flaws

  • Tôi hình dung rằng nếu tín hiệu giao tiếp xe không phải (a) phát quảng bá hoặc (b) không nhận ra được bằng con người, thì những lỗ hổng như vậy sẽ giảm đáng kể. Ví dụ nếu tay nắm cửa có tiếp điểm điện thì người ngoài rất khó nghe lén hay tiêm tín hiệu. Nếu tín hiệu là âm thanh nghe thấy được, sẽ nhận biết ngay ai đang gây nhiễu (jamming). Trên thực tế, tôi dùng keyfob từ xa chủ yếu cho “khóa” xe, và “mở khóa” thì gần như không có rủi ro.

    • Bạn nói nếu tín hiệu là âm thanh nghe thấy được thì khi jamming có thể biết ngay ai là người làm, tôi thấy ở Đông Á chuyện này chắc sẽ rất phổ biến. Ở đó có vô số cảnh báo âm thanh: nồi cơm có giai điệu, đèn giao thông có nhạc, xe rác cũng phát giai điệu. Nhật Bản là “đất nước của cảnh báo âm thanh”.

    • Nếu “khóa” và “mở khóa” dùng cùng một khóa rolling code thì rủi ro là như nhau, dù nói khóa mới dùng ở xa còn mở khóa thì không. Nếu hãng xe dùng khóa rolling code khác nhau cho mỗi chức năng thì đó mới là điều đáng ngạc nhiên.

  • Dĩ nhiên, trong hoàn cảnh này các chính trị gia kém tinh tế sẽ đòi cấm Flipper Zero. Có vẻ họ không muốn thừa nhận thực tế rằng keyfob xe hơi đã kém an toàn.

    • Vì Flipper Zero là mã nguồn mở, ai có một chút kiến thức điện tử cũng có thể tái tạo được. Từ góc nhìn tội phạm thì không thể khóa hoàn toàn.
  • Bài báo nói “chỉ cần bắt tín hiệu một lần bấm nút là có thể sao chép toàn bộ chức năng keyfob mà không cần jamming”, nên tôi thắc mắc nếu tôi không bao giờ bấm nút keyfob thì có tránh được tấn công này không. Thực tế tôi chỉ dùng cách khi nhấn nút trên tay nắm cửa, nếu chìa gần thì mở/khóa cửa.

    • Nếu bạn để chìa xe ở gần nhà, như gần cửa vào ra, chìa sẽ liên tục phát tín hiệu; kẻ tấn công có thể chuyển tiếp tín hiệu này để nhấn nút tay nắm xe. Khi đó xe có thể mở ngay cả khi không có chìa thật.

    • Theo tôi biết, khi mở cửa hay khởi động bằng chìa cơ hoặc phương thức tương tự vẫn áp dụng cơ chế challenge/response. Hệ thống chống trộm và immobilizer phân biệt được đó là chìa thật hay bị hack. Tôi chưa rõ chi tiết tấn công trong bài, nhưng nghĩ rằng cách này cũng có thể bị bẻ.

    • Đây là câu hỏi thú vị. Nếu chức năng đó không dùng NFC hay giao thức đặc biệt khác, tôi dự đoán vẫn có thể bị tấn công.

  • Do tính chất rolling code, bài báo có nhắc rằng keyfob gốc có thể ngừng hoạt động khi mất đồng bộ. Trong trường hợp đó, người dùng có thể tự reset hay chỉ làm được ở cửa hàng?

    • Tùy bản triển khai. Đa số chỉ cần nhấn keyfob liên tiếp vài lần, receiver nhận ra đã bỏ sót tín hiệu và sẽ đồng bộ lại. Không chắc giới hạn số lần cho phép (window) là bao nhiêu, nhưng nếu lệch quá nhiều, phía receiver có thể coi đó là chìa khác và bỏ qua.
  • Tôi nghĩ nếu tấn công khiến không dùng được chìa gốc được tận dụng, mối đe dọa thực tế là kẻ xấu chỉ cần bắt tín hiệu chìa ở bãi đỗ rồi tấn công, không cần trộm xe nhưng khiến chủ xe phải chịu kéo xe + lập lại lập trình để gây rắc rối.

    • Trong những chiếc xe tôi từng dùng, dù remote hỏng hẳn tôi vẫn mở cửa và chạy xe được bằng chìa cơ. Tôi tò mò không biết chiếc xe nào thì khi remote hỏng thì chỉ còn cách kéo xe.

    • Kịch bản này cũng có thể cho phép kẻ xấu lấy đồ có giá trị trong xe.

    • Kẻ tấn công có thể bắt tín hiệu khóa khi chủ xe vào cửa hàng, rồi trong lúc chủ xe đang trong đó thì kéo mất xe.

    • Kịch bản tệ hơn là làm vậy để nạn nhân không kịp dùng xe làm nơi thoát thân trong tình huống khẩn cấp như gián điệp, cướp hay thậm chí ám sát.

  • Tôi thắc mắc vì sao xe không dùng mã hóa khóa công khai. Có phải vì tính toán quá nặng cho keyfob không?

    • Có lẽ do vấn đề điện năng. Phần lớn keyfob muốn chạy bằng pin đồng xu trong nhiều năm. Chiếc BMW smart key của tôi tiêu tốn pin rất nhanh nên sau 2 tuần đã tệ, phải luôn sạc liên tục.