Phát hiện lỗ hổng có thể dùng thẻ tín dụng hết hạn để mua hàng:

Bài 2: Giải mã cơ chế đánh lừa máy POS

Thứ Năm, 03/09/2026 08:04

|

(CATP) Mỗi khi một tấm thẻ ngân hàng gắn chip EMV thanh toán không tiếp xúc được áp vào máy đọc (POS) tại quầy thanh toán, một chuỗi trao đổi dữ liệu diễn ra chỉ trong tích tắc. Thẻ giao tiếp trực tiếp với máy POS qua kênh NFC, sau đó thông tin giao dịch được chuyển tiếp đến một mạng lưới thanh toán như Visa, Mastercard hay Discover.

Ngày hết hạn không được đối chiếu

Mạng lưới này lại kết nối cửa hàng đặt máy POS với ngân hàng thanh toán và cuối cùng là ngân hàng phát hành thẻ. Chính trong chuỗi mắt xích tưởng chừng chặt chẽ này, nhóm nghiên cứu tại UMass Amherst đã tìm ra khoảng trống cho phép một thẻ tín dụng đã hết hạn vượt qua toàn bộ quy trình kiểm tra để hoàn tất thanh toán. Vì sao một chi tiết nhỏ như ngày hết hạn trên thẻ lại có thể trở thành cửa ngõ cho gian lận thanh toán?

Theo phân tích kỹ thuật trong bài báo khoa học của nhóm nghiên cứu tại UMass Amherst, ngày hết hạn của một thẻ ngân hàng không tiếp xúc (contactless) thực chất xuất hiện ở hai nơi khác nhau và được hai bên khác nhau sử dụng. Máy POS kiểm tra một trường dữ liệu mã 5F24 "ngày hết hạn"; trong khi ngân hàng phát hành khi phê duyệt giao dịch trực tuyến lại lấy ngày hết hạn từ một trường dữ liệu khác nằm trong dữ liệu tương đương dải từ (Track 2, mã 57).

Mô tả sơ đồ nhóm nghiên cứu UMass Amherst thực hiện

Trong cấu hình Kernel 3 của Visa, 2 trường dữ liệu này không bắt buộc phải khớp với nhau và chữ ký số nhanh mà máy POS dùng để xác thực (fast Dynamic Data Authentication) hoàn toàn không bao trùm trường dữ liệu đầu tiên nên việc chỉnh sửa không hề làm hỏng bước xác thực mật mã. Kẻ tấn công cũng không cần biết ngày hết hạn thật của thẻ thay thế, vì bất kỳ ngày nào muộn hơn ngày giao dịch hiện tại đều có thể qua được bước kiểm tra này.

Theo Cyber Security News, gốc rễ sâu xa hơn của vấn đề nằm ở chỗ khóa bí mật lưu trong chip của thẻ về bản chất không có khái niệm hết hạn, còn chứng chỉ xác thực thẻ trong cơ chế xác thực dữ liệu ngoại tuyến thường được thiết lập hiệu lực dài hơn hẳn ngày in trên thẻ, nhằm tạo khoảng đệm cho quá trình gia hạn hoặc phát hành lại thẻ diễn ra suôn sẻ. Khoảng đệm ấy, vốn được thiết kế vì mục đích thuận tiện cho ngân hàng và người dùng, lại trở thành kẽ hở khi bị đặt cạnh một trường dữ liệu khác - ngày hết hạn hiển thị cho máy POS - vốn không được bảo vệ chặt chẽ bằng cơ chế mật mã tương tự.

Đáng chú ý, cùng với phát hiện về ngày hết hạn, nhóm nghiên cứu còn thử nghiệm chỉnh sửa một trường dữ liệu khác gọi là cờ xác minh chủ thẻ trên thiết bị (CDCVM) và nhận thấy giao dịch cũng trót lọt tại phần lớn ngân hàng được thử nghiệm. Theo Anwar, kết quả này đáng lo ngại vì nó cho thấy cùng một điểm yếu cốt lõi - việc chỉnh sửa dữ liệu giao dịch không bị phát hiện - có thể bị khai thác theo nhiều cách khác nhau, không chỉ riêng ngày hết hạn.

Cần phân biệt rõ giữa việc phá vỡ hệ thống mật mã của thẻ với điều nhóm nghiên cứu thực sự đã làm. Trả lời câu hỏi liệu đây có phải một lỗ hổng trong bản thân thuật toán mật mã của chuẩn EMV hay không, nhóm nghiên cứu khẳng định là không, ít nhất không theo nghĩa thông thường.

Họ không phá được khóa bí mật của thẻ (mã PIN), cũng không làm giả được phản hồi bảo mật mà thẻ trả lời máy POS. Vấn đề nằm ở chỗ trường dữ liệu ngày hết hạn mà máy POS kiểm tra không được ràng buộc đủ chặt với thông tin ngân hàng dùng để phê duyệt giao dịch - đây là khoảng trống trong cách hệ thống thực thi vòng đời của thẻ, chứ không phải lỗi trong chính thuật toán mã hóa.

Nhóm nghiên cứu cũng lưu ý phát hiện của mình chỉ giới hạn ở giao dịch thẻ Visa không tiếp xúc; họ chưa xác định liệu vấn đề tương tự có xảy ra với giao dịch thẻ chip cắm trực tiếp vào máy hay không, vì đây là luồng giao tiếp khác cần được đánh giá riêng và việc một thẻ ghi nợ (debit) có bị ảnh hưởng hay không còn tùy vào ứng dụng thanh toán, quy định của máy POS và cách kiểm tra của ngân hàng phát hành, chứ không thể suy luận.

Không phải lỗ hổng trong thuật toán mã hóa

Nhóm nghiên cứu đã thử áp dụng cùng một cách chỉnh sửa dữ liệu lên 4 cấu hình kỹ thuật khác nhau của chuẩn EMV không tiếp xúc, mỗi cấu hình gắn với một hãng thẻ và nhận được 4 kết quả khác nhau. Với cấu hình của Visa - gọi là Kernel 3 - việc chỉnh sửa vượt qua được bước kiểm tra của máy POS và không làm hỏng chữ ký số.

Với cấu hình của Mastercard - Kernel 2 - máy POS chủ động đối chiếu 2 trường dữ liệu ngày hết hạn với nhau ngay trong bước đọc dữ liệu thẻ và xem sự chênh lệch giữa 2 giá trị là một lỗi dữ liệu thẻ, từ đó từ chối giao dịch ngay tại chỗ thay vì chuyển tiếp lên hệ thống trực tuyến để xử lý tiếp.

Với cấu hình American Express - Kernel 4 - ngày hết hạn là trường dữ liệu bắt buộc, được gộp vào khối dữ liệu tĩnh chịu bảo vệ của cơ chế xác thực dữ liệu ngoại tuyến, nên chỉnh sửa nào cũng làm sai lệch giá trị, xác minh chữ ký khiến giao dịch bị phát hiện ngay. Với cấu hình Discover - Kernel 6 - cơ chế xác thực dữ liệu động kết hợp gộp toàn bộ dữ liệu thẻ trả về, trong đó có ngày hết hạn, được xác minh khi giao dịch diễn ra, nên mọi chỉnh sửa đều bị từ chối. Ba cơ chế của Mastercard, American Express và Discover tuy khác nhau, nhưng chung một nguyên tắc là ràng buộc ngày hết hạn bằng mật mã.

Trả lời phỏng vấn của The Register qua email, Anwar giải thích thêm rằng các hãng thẻ có cách xử lý khác nhau vì mỗi nhà sản xuất phải đưa ra lựa chọn thiết kế riêng cho cơ chế xử lý giao dịch không tiếp xúc, dù phần lớn thông điệp trao đổi vẫn tuân theo chuẩn chung để bảo đảm tương thích toàn cầu.

Những lựa chọn ấy thường phải thỏa hiệp để tương thích ngược với máy POS đời cũ và đáp ứng tốc độ xử lý, khiến chỉ một phần cơ chế bảo mật sẵn có được kích hoạt để giao dịch nhanh hơn, tạo ra đánh đổi giữa hiệu năng và bảo mật mà không thiết kế nào vốn dĩ không tốt, đồng thời cho biết từng có nghiên cứu khác chỉ ra vấn đề tương tự trên thẻ Mastercard.

Theo Anwar, sự khác biệt giữa cách các ngân hàng phản ứng với cùng một kỹ thuật tấn công quan trọng không kém việc ngân hàng nào chấp nhận hay từ chối giao dịch. Trả lời với The Hacker News, Anwar cho biết ngành thanh toán hiện chưa có sự đồng thuận về cách xử lý an toàn đối với thẻ đã hết hạn và mỗi ngân hàng cũng như mỗi mạng lưới thanh toán lại tự đặt ra những ưu tiên riêng, khiến mỗi bên dễ bị tổn thương trước một dạng tấn công khác nhau. Anwar cũng dẫn lại một nghiên cứu khác của chính nhóm mình, công bố năm 2024 với tựa đề "In Wallet We Trust", từng ghi nhận những bất nhất tương tự trong cách các ngân hàng và nhà cung cấp ví điện tử thực thi quy định về vòng đời của thẻ.

Dù chứng minh lỗ hổng có thể bị khai thác chỉ với thiết bị phổ thông, nhóm nghiên cứu chủ động không công bố phần mềm thực hiện việc chuyển tiếp và chỉnh sửa dữ liệu, vì lo ngại bị lợi dụng để can thiệp giao dịch tài chính thật. Thay vào đó, họ chỉ công bố bản ghi giao dịch đã làm sạch cùng mô tả chi tiết giao thức, đủ phục vụ kiểm chứng và khắc phục.

Nhóm nghiên cứu đã thông báo phát hiện của mình cho Visa và các ngân hàng liên quan từ tháng 5/2025, tiếp tục liên hệ lại vào tháng 12/2025. Tính đến ngày 20/8/2026, báo cáo gửi Visa mới qua bước sàng lọc ban đầu và đang được đội ngũ kiểm tra bảo mật nội bộ của hãng tái hiện lại.

Để tự bảo vệ tài sản, người dùng tuyệt đối không nên vứt nguyên vẹn thẻ hết hạn hoặc thẻ vừa được cấp mới thay thế; nên dùng kéo cắt vào chip đồng nhiều lần, cắt rời thân thẻ để phá hủy ăng-ten NFC và cạo tróc dải từ trước khi bỏ đi. Ngoài ra, việc chủ động khai báo mất thẻ đã hết hạn với ngân hàng là điều cần thiết để vô hiệu hóa hoàn toàn dữ liệu. Dù ý thức cẩn trọng của chủ thẻ là rất quan trọng, nhưng trách nhiệm lớn nhất vẫn thuộc về các đơn vị thanh toán và ngân hàng phát hành. Các tổ chức tài chính cần nâng cấp hệ thống phê duyệt để bảo vệ tính toàn vẹn của dữ liệu và từ chối dứt khoát thẻ đã ngưng hoạt động. Việc thắt chặt quy trình kiểm soát mã hóa sẽ ngăn chặn triệt để hình thức gian lận thẻ đầy rủi ro này.

Trong chương trình thử nghiệm với 5 ngân hàng lớn của Mỹ, nhóm nghiên cứu tại UMass Amherst ghi nhận chính sách không đồng nhất khi dữ liệu giao dịch bị can thiệp. Với giao thức Kernel 3 của Visa, ngày hết hạn mà POS sử dụng không nằm trong phần dữ liệu được chữ ký xác thực bảo vệ nên có thể bị thay đổi mà không làm mất hiệu lực chữ ký. Ngược lại, Kernel 2 (Mastercard), Kernel 4 (American Express) và Kernel 6 (Discover) có cơ chế kiểm tra khiến các giao dịch bị sửa đổi bị từ chối trong thử nghiệm. Nhóm nghiên cứu chứng minh lỗ hổng này hoạt động cả trong phòng thí nghiệm lẫn tại một số địa điểm thực tế, gồm nhà hàng và cửa hàng tạp hóa. Tuy nhiên, các tác giả nhấn mạnh đây không phải khảo sát trên toàn hệ sinh thái thanh toán.
Bài 1: Thẻ tín dụng đã
 

Bình luận (0)

Lên đầu trang