Lỗ hổng “SMS Tử thần” trên Android có thể ngắt cuộc gọi và khiến điện thoại liên tục gặp sự cố

Đọc trong 16 phút
Android SMS of Death Flaw Can Drop Calls and Trap Phones in Repeated Crashes

Một tin nhắn vô hình có thể làm gián đoạn cuộc gọi

Một tin nhắn văn bản được tạo đặc biệt, chỉ dài tám byte, có thể làm sập dịch vụ gọi điện trên các điện thoại Android dễ bị tấn công, ngắt cuộc gọi đang diễn ra và, nếu được gửi nhiều lần, khiến điện thoại khó khởi động bình thường. Nhà nghiên cứu bảo mật Mark Blaszczyk công bố lỗ hổng vào ngày 29 tháng 10 năm 2026, sau khi lần đầu báo cáo cho Google vào ngày 5 tháng 5.

Nội dung
  1. Một tin nhắn vô hình có thể làm gián đoạn cuộc gọi
  2. Vì sao tin nhắn không bao giờ đến hộp thư đến
  3. Một con số lớn biến thành độ dài âm
  4. Vì sao sự cố ngắn có thể biến thành lỗi lặp lại
  5. Vì sao màn hình khôi phục có thể đồng nghĩa với mất dữ liệu
  6. Phiên bản Android nào cần lưu ý?
  7. Bản sửa lỗi đi theo lộ trình khác với khiếu nại
  8. Bản sửa lỗi thay đổi điều gì?
  9. Người dùng có thể làm gì ngay bây giờ?
  10. Điểm chính

Lỗ hổng được mô tả là SMS Tử thần (SMS of Death) và được các bài viết về bảo mật định danh là CVE-2026-58882, ảnh hưởng đến phần mềm xử lý một số tin nhắn đến trước khi chúng được chuyển tới ứng dụng nhắn tin. Người nhận không cần mở bất cứ thứ gì, cài ứng dụng hay nhấn vào liên kết. Theo Blaszczyk, tin nhắn độc hại không tạo mục nào trong hộp thư đến hay thông báo.

Blaszczyk tái hiện sự cố trên Google Pixel 9 chạy firmware tháng 4 năm 2026 và một số điện thoại Samsung Galaxy, trong đó có các mẫu thuộc dòng Galaxy A. Ông cho biết đã tái hiện thành công trong mọi lần thử trên những thiết bị này. Chỉ một tin nhắn cũng làm gián đoạn dịch vụ di động khoảng một đến hai giây trong khi Android khởi động lại tiến trình gọi điện.

Blaszczyk, một nhà nghiên cứu bảo mật độc lập, mô tả tác động tức thời lên tiến trình Android phụ trách chức năng điện thoại:

Một tin nhắn WAP Push SMS bị lỗi định dạng có thể làm sập com.android.phone trên Android, ngắt các cuộc gọi đang diễn ra (kể cả cuộc gọi khẩn cấp) mà nạn nhân không cần thao tác gì,

Chưa có cuộc tấn công nào ngoài môi trường thử nghiệm được báo cáo; cảnh báo về khả năng ảnh hưởng đến dịch vụ khẩn cấp dựa trên đánh giá của nhà nghiên cứu. Chưa có danh sách đầy đủ các mẫu điện thoại, mạng di động và quốc gia bị ảnh hưởng. Mối lo ngại thực tế là gián đoạn dịch vụ dù ngắn cũng có thể kết thúc cuộc trò chuyện, còn gián đoạn lặp đi lặp lại có thể khiến người dùng không duy trì được kết nối khi cần trợ giúp.

Quảng cáo

Vì sao tin nhắn không bao giờ đến hộp thư đến

Android nhận nội dung độc hại thông qua WAP Push, một cơ chế cũ dùng để truyền dữ liệu và hướng dẫn qua mạng di động. Các mục đích sử dụng hợp pháp gồm nhắc điện thoại tải tin nhắn đa phương tiện hoặc áp dụng cài đặt của nhà mạng. Khác với tin nhắn thông thường được viết để người đọc xem, loại tin này được phần mềm hệ thống xử lý tự động.

Thành phần WapPushOverSms của Android đảm nhiệm việc xử lý đó. Lỗ hổng nằm trong hàm giải mã, nơi điện thoại đọc thông tin mô tả độ dài của một phần tin nhắn. Vì dịch vụ gọi điện gặp lỗi trước khi hoàn tất quy trình xử lý tin nhắn thông thường, người nhận không thấy nội dung nào để xem hoặc xóa.

Do đó, cuộc tấn công bỏ qua thời điểm người dùng thường quyết định liệu một tin nhắn có đáng ngờ hay không. Bỏ qua người gửi lạ hoặc không mở liên kết hầu như không giúp ích khi lỗi xảy ra trong quá trình xử lý tự động. Biện pháp bảo vệ chủ yếu là sửa thành phần hệ điều hành xử lý tin nhắn.

Một con số lớn biến thành độ dài âm

Blaszczyk lần ra nguyên nhân gây sập ứng dụng là lỗi chuyển đổi số. Android đọc độ dài trong phần đầu tin nhắn bằng một kiểu dữ liệu có thể chứa số lớn, sau đó chuyển giá trị đó thành số nguyên có dấu 32 bit mà không kiểm tra trước xem nó có nằm trong giới hạn hay không.

Trong thử nghiệm được mô tả, giá trị 2,147,483,648 trở thành số âm 2,147,483,648 sau khi chuyển đổi. Số nguyên có dấu 32 bit chỉ chứa được số dương tối đa là 2,147,483,647. Giá trị được tạo đặc biệt này chỉ vượt quá giới hạn đó một đơn vị.

Sau đó, Android cố dành chỗ cho một khối dữ liệu bằng độ dài âm. Kích thước âm không hợp lệ với thao tác này, nên phần mềm phát sinh lỗi có tên NegativeArraySizeException. Vì lỗi không được xử lý đúng cách, tiến trình com.android.phone bị chấm dứt.

Tin nhắn dài tám byte chứa một chuỗi năm byte cung cấp thông tin độ dài gây lỗi. Kích thước nhỏ giúp lý giải mức độ nghiêm trọng: một tin nhắn đến rất nhỏ có thể gây gián đoạn lớn hơn nhiều vì một tiến trình hệ thống trọng yếu gặp lỗi khi diễn giải nó.

Quảng cáo

Vì sao sự cố ngắn có thể biến thành lỗi lặp lại

Thông thường, nhà mạng chờ điện thoại xác nhận đã nhận tin nhắn. Khi Android bị sập trước khi hoàn tất trao đổi này, nhà mạng có thể thử gửi lại. Vì thế, cơ chế vốn nhằm giúp việc nhắn tin đáng tin cậy hơn lại có thể khiến cùng một nội dung nguy hiểm được gửi đến điện thoại lần nữa.

Android cũng giữ các tin nhắn đến trong hàng đợi chờ xử lý. Blaszczyk cho biết tin nhắn bị lỗi định dạng có thể vẫn nằm trong hàng đợi và được xử lý lại sau khi khởi động lại, tạo thêm cơ hội để sự cố tương tự xảy ra.

Blaszczyk giải thích vì sao khởi động lại thiết bị có thể không chấm dứt được sự cố:

Tin nhắn bị lỗi định dạng vẫn nằm trong hàng đợi và được thử xử lý lại mỗi lần khởi động, nên điện thoại có thể gặp sự cố ngay lúc khởi động cho đến khi tin nhắn được xóa,

Blaszczyk cảnh báo khoảng 20 tin nhắn có thể khiến thiết bị không sử dụng được trong thời gian dài. Các thử nghiệm cũng ghi nhận khoảng 30 tin nhắn đến dồn dập trước khi những lỗi dai dẳng hơn xuất hiện. Những con số này phản ánh điều kiện thử nghiệm, không phải ngưỡng chính xác mà mọi điện thoại đều sẽ đạt tới.

Nhà nghiên cứu cho rằng một số lỗi kéo dài là do cơ sở dữ liệu SQLite dùng để lưu dữ liệu SMS đến bị hỏng. SQLite là hệ quản trị cơ sở dữ liệu nhỏ mà các ứng dụng và hệ điều hành sử dụng để lưu các bản ghi có cấu trúc. Nếu những bản ghi cần thiết khi khởi động liên tục kích hoạt lỗi, dịch vụ gọi điện có thể gặp sự cố mỗi lần điện thoại cố khôi phục hoạt động.

Trong thử nghiệm, việc nhà mạng gửi lại tin nhắn gây trục trặc gọi điện không liên tục kéo dài đến một tuần, kể cả trường hợp được cho là do chỉ một tin nhắn độc hại. Sự kết hợp giữa tin nhắn nhà mạng giữ lại và dữ liệu lưu trên điện thoại giúp lý giải vì sao tác động có thể kéo dài sau lần gửi ban đầu.

Vì sao màn hình khôi phục có thể đồng nghĩa với mất dữ liệu

Android có cơ chế khôi phục tự động tên là RescueParty. Khi một thành phần quan trọng liên tục gặp lỗi, cơ chế này sẽ thử khôi phục và có thể đưa điện thoại vào chế độ khôi phục sau khoảng 90 giây. Người dùng khi đó có thể thấy tùy chọn xóa dữ liệu.

Khôi phục cài đặt gốc sẽ xóa dữ liệu và cài đặt lưu trên thiết bị. Blaszczyk cho biết trong thử nghiệm, việc đặt lại chỉ giúp tạm thời vì nhà mạng có thể gửi lại những tin nhắn vẫn đang chờ xác nhận. Vì vậy, người chọn xóa điện thoại có thể mất thông tin cá nhân rồi lại gặp sự cố sau đó.

Quảng cáo

Blaszczyk mô tả cách khôi phục bằng Android Debug Bridge, hay ADB, một công cụ cho phép máy tính giao tiếp với thiết bị Android để phát triển và bảo trì. Quy trình của ông bao gồm xóa các bản ghi SMS bị ảnh hưởng trong khoảng thời gian ngắn khi điện thoại còn truy cập được.

Khôi phục bằng ADB đòi hỏi kiến thức kỹ thuật, và nhiều chủ sở hữu chưa thiết lập sẵn kết nối cần thiết. Cách khôi phục mà nhà nghiên cứu nêu ra cũng bao gồm việc chuyển SIM vật lý sang một điện thoại không chạy Android để nhận và xác nhận các tin nhắn đang chờ. Ông cảnh báo việc khôi phục có thể khó hơn nếu thuê bao di động dùng eSIM.

Với người gặp tình trạng sập lặp đi lặp lại, ưu tiên thiết thực là tìm sự trợ giúp kỹ thuật có chuyên môn trước khi chọn xóa dữ liệu. Cách khôi phục được mô tả liên quan đến bản ghi hệ thống và cài đặt truy cập, phức tạp hơn nhiều so với xóa một tin nhắn thông thường.

Phiên bản Android nào cần lưu ý?

Phạm vi bị ảnh hưởng chính được các bài viết kỹ thuật nêu là Android 12 đến Android 16. Một số bài viết mở rộng phạm vi đến Android 17. Thử nghiệm nêu cụ thể các thiết bị Pixel và Samsung Galaxy, trong khi phạm vi nghi ngờ rộng hơn vì sự cố nằm trong mã điện thoại chung của Android.

Bản sửa lỗi được báo cáo vào tháng 10 năm 2026 áp dụng cho Android 14 đến Android 17. Điện thoại vẫn chạy Android 12 hoặc Android 13 là mối lo ngại rõ nhất về hỗ trợ: các phiên bản này được mô tả là nằm ngoài phạm vi hỗ trợ bảo mật hiện tại của Google, khiến người dùng phụ thuộc vào nhà sản xuất hoặc nhà cung cấp hệ điều hành khác để có bản sửa lỗi.

Phiên bản Android và tình trạng cập nhật bảo mật của điện thoại trả lời hai câu hỏi khác nhau. Phiên bản cho biết thế hệ hệ điều hành đang dùng. Thông tin cập nhật bảo mật giúp xác định mức độ mới của các bản vá lỗ hổng. Hai điện thoại cùng chạy một phiên bản Android vẫn có thể nhận bản sửa lỗi vào những thời điểm khác nhau.

Nhà sản xuất và nhà mạng ảnh hưởng đến thời điểm bản cập nhật đến từng mẫu máy. Người dùng nên kiểm tra ngày cập nhật bảo mật trong phần Cài đặt, thường nằm ở Giới thiệu về điện thoại, Bảo mật hoặc Cập nhật phần mềm, rồi cài bản cập nhật mới nhất hiện có. Với lỗ hổng này, bản sửa lỗi được báo cáo gắn với bản cập nhật tháng 10 năm 2026, dù xác nhận cụ thể từ nhà sản xuất vẫn hữu ích khi chưa rõ thời điểm phát hành.

Quảng cáo

Bản sửa lỗi đi theo lộ trình khác với khiếu nại

Blaszczyk cho biết ban đầu Google xem báo cáo của ông là vấn đề không liên quan đến bảo mật và đóng hồ sơ mà không đồng ý với biện pháp ông đề nghị. Bài viết công bố của ông mô tả những lần khiếu nại tiếp theo và việc báo cáo lại bị phân loại là vấn đề không liên quan đến bảo mật vào ngày 29 tháng 10. Trong khi đó, các kỹ sư Android đã phát triển bản sửa lỗi.

Trình tự được báo cáo cho thấy quá trình xử lý khiếu nại của nhà nghiên cứu và quá trình đưa mã nguồn qua các hệ thống phát triển, cập nhật Android là hai việc riêng biệt:

  • Ngày 5 tháng 5 năm 2026: Blaszczyk lần đầu báo cáo lỗ hổng cho Google.
  • Ngày 15 tháng 6: Google tạo bản sửa lỗi kỹ thuật cho sự cố xử lý tin nhắn.
  • Tháng 7: GrapheneOS cho biết đã nhận bản vá qua các bản xem trước bảo mật và triển khai trong tháng đó.
  • Ngày 5 tháng 8: Bản sửa lỗi được cho là đã được đưa vào quy trình phát triển của Google.
  • Tháng 10: Thay đổi được công khai trong Dự án mã nguồn mở Android và đưa vào các bản cập nhật cho Android 14 đến Android 17.
  • Ngày 29 tháng 10: Blaszczyk công khai phát hiện của mình.
  • Tháng 11: GrapheneOS cho biết lỗ hổng dự kiến sẽ được đưa vào bản tin bảo mật Android.

GrapheneOS cho rằng vấn đề liên lạc nội bộ có thể lý giải cách Google xử lý báo cáo. Đây là suy đoán của các nhà phát triển dự án hệ điều hành. Hồ sơ được mô tả ở đây bao gồm cả một khiếu nại bị bác bỏ và một thay đổi kỹ thuật nhằm ngăn sự cố sập ứng dụng.

Bản tin tháng 11 là mốc công bố tiếp theo được nêu. GrapheneOS cho biết đã triển khai bản sửa lỗi từ tháng 7, vì vậy ngày phát hành bản tin muộn hơn liên quan đến tài liệu bảo mật công khai, chứ không phải lần đầu bản vá được triển khai.

Bản sửa lỗi thay đổi điều gì?

Bản sửa lỗi được cho là của Google mở rộng khả năng xử lý ngoại lệ để Android bắt lỗi khi chạy và xóa tin nhắn bị lỗi định dạng khỏi hàng đợi chờ xử lý. Nhờ đó, quá trình xử lý có thể tiếp tục sau bản ghi nguy hiểm thay vì liên tục gặp sự cố vì nó.

Blaszczyk đề xuất kiểm tra tính hợp lệ của độ dài khai báo trong phần đầu tin nhắn trước khi chuyển đổi. Thay vào đó, hướng xử lý kỹ thuật được báo cáo là bắt lỗi và xóa tin nhắn gây ra sự cố. Trên thực tế, xóa bản ghi này cũng xử lý được tình trạng xử lý lặp lại vốn có thể biến một lần gửi thành sự cố dịch vụ kéo dài.

Bản sửa lỗi được mô tả là xử lý tin nhắn lỗi định dạng ngay khi gặp phải. Khoảng 20 tin nhắn được nhắc đến trong thử nghiệm là con số liên quan đến mức độ nghiêm trọng của gián đoạn lặp lại, chứ không phải số lượng mà bản sửa lỗi phải chờ nhận đủ mới có tác dụng.

Quảng cáo

Việc bản sửa lỗi xuất hiện trong Dự án mã nguồn mở Android có nghĩa là mã nguồn nền tảng đã sẵn sàng để tích hợp vào phần mềm Android. Tuy nhiên, để đến được với từng người dùng, bản cập nhật phù hợp vẫn cần được xây dựng và phân phối cho mẫu điện thoại đó. Vì vậy, việc kiểm tra tình trạng hỗ trợ của từng mẫu máy cũng quan trọng không kém việc biết Google đã sửa mã nguồn.

Người dùng có thể làm gì ngay bây giờ?

Chủ sở hữu điện thoại còn được hỗ trợ nên cài bản cập nhật bảo mật hệ thống mới nhất và xem ghi chú phát hành hoặc thông tin hỗ trợ của nhà sản xuất để xác nhận đã có bản sửa lỗi. Người dùng Android 12 hoặc Android 13 nên hỏi liệu mẫu máy của mình có nhận được bản vá hay có thể nâng cấp lên phiên bản Android còn được hỗ trợ hay không.

Blaszczyk đã công bố ứng dụng minh họa và mã nguồn, khiến việc triển khai bản vá sớm càng trở nên cấp thiết. Bài công bố của ông có cảnh báo không nhắm mục tiêu vào người khác, đặc biệt vì việc làm gián đoạn liên lạc khẩn cấp có thể gây nguy hiểm nghiêm trọng.

Người dùng có điện thoại liên tục mất dịch vụ di động hoặc khởi động lại nên liên hệ nhà sản xuất thiết bị hoặc cơ sở sửa chữa đủ chuyên môn. Nếu điện thoại hiển thị lời nhắc khôi phục, cần thao tác thận trọng nếu muốn giữ lại dữ liệu. Bất kỳ ai cần trợ giúp khẩn cấp khi điện thoại không thể duy trì cuộc gọi nên dùng một điện thoại khác đang hoạt động.

Điều quan trọng nhất đối với người dùng rất đơn giản: lỗi này xảy ra trước cả khi có tin nhắn đáng ngờ để đánh giá. Với thiết bị còn được hỗ trợ, biện pháp bảo vệ thiết thực nhất là cài bản cập nhật bảo mật mới nhất dành cho chính mẫu điện thoại đang sử dụng.

Điểm chính

  • WAP Push SMS bị lỗi định dạng có thể làm sập dịch vụ gọi điện của Android mà người nhận không cần thao tác gì.
  • Blaszczyk tái hiện lỗ hổng trên Pixel 9 và các thiết bị Samsung Galaxy; mỗi lần gián đoạn riêng lẻ kéo dài khoảng một đến hai giây.
  • Việc xử lý lặp lại và nhà mạng gửi lại tin nhắn có thể gây gián đoạn kéo dài, sập ứng dụng nhiều lần và xuất hiện lời nhắc khôi phục.
  • Bản sửa lỗi được báo cáo vào tháng 10 năm 2026 áp dụng cho Android 14 đến Android 17. Người dùng Android 12 và Android 13 phụ thuộc vào hỗ trợ tiếp theo từ nhà cung cấp thiết bị.
  • Chưa có cuộc tấn công nào ngoài thử nghiệm được báo cáo. Nhà nghiên cứu cảnh báo việc gián đoạn cuộc gọi có thể ảnh hưởng đến khả năng liên lạc với dịch vụ khẩn cấp.
  • Khôi phục cài đặt gốc sẽ xóa dữ liệu và có thể bị theo sau bởi việc tin nhắn độc hại được gửi lại. Khôi phục bằng kỹ thuật có thể cần đến ADB.
Chia sẻ bài viết này

Có thể bạn cũng thích