Ứng dụng di động ngân hàng tồn tại nhiều lỗ hổng bảo mật

10:57 | 27/07/2020

Trong khi mức độ an toàn của các ứng dụng ngân hàng di động không mấy khả quan, thì tội phạm lại đang tập trung tấn công vào lĩnh vực này.

Năm 2019, công ty Positive Technologies (Anh) đã chọn 14 ứng dụng ngân hàng di động đầy đủ tính năng để tiến hành nghiên cứu theo 3 tiêu chí là: Ngân hàng có cả ứng dụng cho Android và iOS; Ứng dụng ngân hàng đã được tải xuống từ các cửa hàng ứng dụng chính thức (Google Play và App Store của Apple) hơn 500.000 lần; Chủ hệ thống đồng ý sử dụng kết quả đánh giá bảo mật cho mục đích nghiên cứu.

Mức độ bảo mật của mỗi ứng dụng được đánh giá thủ công, sử dụng các phương pháp hộp đen, hộp xám hoặc hộp trắng với sự hỗ trợ của các công cụ tự động. Phương pháp kiểm thử hộp đen có nghĩa là xem xét một ứng dụng từ quan điểm của kẻ tấn công bên ngoài, người không có thông tin gì về ứng dụng. Kiểm thử hộp xám tương tự như kiểm thử hộp đen, ngoại trừ kẻ tấn công là người dùng có một số đặc quyền. Trong khi đó, kiểm thử hộp trắng là phân tích bảo mật sử dụng tất cả các thông tin liên quan về ứng dụng, bao gồm cả mã nguồn của nó.

Tuy nhiên, kết quả nghiên cứu khá thất vọng: Không có ứng dụng ngân hàng di động nào được kiểm thử có mức độ bảo vệ chấp nhận được (theo quan điểm của Positive Technologies).

Với các ứng dụng được cài đặt trên điện thoại di động của người dùng, kết quả cho thấy:

- 100% ứng dụng di động có lỗ hổng trong mã nguồn. Lỗ hổng ở đây có thể đơn giản là mã nguồn không được làm rối (obfuscated) để gây khó khăn cho kẻ tấn công khi dịch ngược hay không áp dụng các biện pháp ngăn chặn chèn mã hay đóng gói lại ứng dụng.

- 13/14 ứng dụng có khả năng bị kẻ tấn công truy cập dữ liệu của khách hàng từ phía máy khách.

- 76% các lỗ hổng của ứng dụng ngân hàng di động có thể bị lợi dụng mà không cần truy cập vật lý vào thiết bị.

- 37% các lỗ hổng có thể bị lợi dụng mà không cần quyền quản trị (không cần jailbreak với iOS hay root với Android).

Kết quả đánh giá ứng dụng ngân hàng trên thiết bị di động

Việc không áp dụng các biện pháp làm rối sẽ cho phép kẻ tấn công phân tích mã và tìm dữ liệu quan trọng, chẳng hạn như: Tên người dùng và mật khẩu liên quan đến thử nghiệm; Khóa mã hóa và các tham số để sinh khóa mã hóa; Giá trị salt để băm và mã hóa.

Những kẻ tấn công sau đó có thể sử dụng thông tin này để có được thông tin đăng nhập và truy cập máy chủ web. Hơn nữa, tin tặc có thể phân tích thuật toán ứng dụng và khai thác lỗ hổng trong logic kinh doanh. Các đối thủ cạnh tranh cũng có thể muốn biết ứng dụng được thiết kế như thế nào để sao chép các tính năng mới cho các sản phẩm của chính họ.

Một vấn đề khác là xử lý liên kết sâu không an toàn, một lỗ hổng nghiêm trọng với khả năng gây tổn thất tài chính cho các ngân hàng. Khi một ứng dụng ngân hàng không thể lọc các URL liên kết sâu, các thành phần WebView nhúng có thể tải các liên kết tùy ý. Vì vậy, những kẻ tấn công có thể lợi dụng điều này bằng cách tải một liên kết đến một trang web chứa mã độc và tương tác với các giao diện JavaScript có sẵn trong các thành phần WebView đó.

Các chuyên gia của Positive Technologies đã phát triển các kịch bản thử nghiệm và thể hiện việc chặn SMS. Họ có thể sử dụng tính năng quét thẻ ngân hàng bằng camera hoặc qua kết nối trường gần (NFC) để lấy số thẻ. Kẻ tấn công có thể hiển thị một trang độc hại trong giao diện của ứng dụng và yêu cầu quét thẻ. Đối với người dùng, mọi việc có vẻ giống như một giao dịch ngân hàng thông thường, ngoại trừ việc kẻ tấn công sẽ là những người nhận dữ liệu chứ không phải ngân hàng.

Và còn khá nhiều lỗ hổng khác có thể làm lộ dữ liệu của người dùng. Chẳng hạn như 11 trong số 14 ngân hàng di động cho phép chụp ảnh màn hình tự động - một tính năng giúp xem nhanh các chương trình được sử dụng gần đây. Trong khi ảnh chụp màn hình có thể chứa dữ liệu nhạy cảm như thông tin thẻ và số dư tài khoản. Hay việc 43% ứng dụng lưu trữ dữ liệu quan trọng trong điện thoại ở dạng bản rõ cũng là một nguy cơ an ninh lớn.

Về phía máy chủ, nơi chứa ứng dụng web tương tác với ứng dụng di động qua Internet nhờ các giao diện lập trình ứng dụng (API), kết quả nghiên cứu cũng không khả quan hơn:

- Ứng dụng phía máy chủ chứa 54% tổng số lỗ hổng mà Positive Technologies tìm thấy (tức là cao hơn phía máy khách).

- Trung bình, mỗi ngân hàng di động có 23 lỗ hổng phía máy chủ.

- Một nửa số ngân hàng di động có thể bị gian lận và đánh cắp tiền.

- Tại 5 trong số 7 ngân hàng, tin tặc có thể đánh cắp thông tin đăng nhập của người dùng. Tại 1/3 ngân hàng, thông tin thẻ có nguy cơ bị lộ.

- 3 trong số 7 ngân hàng di động chứa các lỗ hổng phía máy chủ trong logic kinh doanh. Trong hầu hết các trường hợp, các lỗ hổng này ảnh hưởng đến chức năng trực tiếp hữu ích cho các nỗ lực gian lận. Lỗi logic kinh doanh có thể gây ra tổn thất đáng kể cho các ngân hàng và thậm chí dẫn đến các vấn đề pháp lý.

- 5 trong số 7 ngân hàng di động có lỗ hổng phía máy chủ mà tin tặc có thể khai thác để chống lại người dùng. Ví dụ, việc không kiểm tra phần mở rộng của các tệp được tải lên từ một ứng dụng di động cho phép kẻ tấn công tải các tệp thực thi độc hại lên máy chủ. Nếu một nhân viên ngân hàng thực thi một tệp như vậy, script độc hại có thể thực thi và đánh cắp dữ liệu từ máy chủ.

Trong khi mức độ an toàn của các ứng dụng ngân hàng di động không mấy khả quan, thì tội phạm lại đang tập trung tấn công vào lĩnh vực này. Theo một báo cáo mới của Lookout – một công ty an ninh CNTT tại Mỹ chuyên về phần mềm bảo mật cho thiết bị di động, các cuộc tấn công phishing nhắm vào người dùng di động trong quý I/2020 trên toàn cầu đã tăng 37% so với quý trước. Họ cho rằng căn cứ vào dữ liệu và các phép đo từ xa thu thập từ 200 triệu thiết bị di động trên khắp thế giới, khoảng 22% người dùng di động doanh nghiệp đã bị tấn công phishing trong quý I, so với 16% trong quý trước đó.

Sự gia tăng này có thể liên quan đến việc những người làm việc từ xa đã sử dụng thiết bị di động cho cả công việc và nhu cầu cá nhân. Cũng theo Lookout, những kẻ tấn công đang ngày càng điều chỉnh các chiến dịch của chúng dành riêng cho thiết bị di động. Ví dụ: chúng đang gửi các URL lừa đảo tương tự như các tên miền gốc, điều này thường dẫn đến việc nạn nhân không nhìn thấy các dấu hiệu lừa đảo mà họ có thể phát hiện ra nếu sử dụng màn hình lớn hơn trên máy tính xách tay hoặc thiết bị để bàn.

Có lẽ vì những lý do đó mà đầu tháng 6/2020, FBI vừa phát hành cảnh báo khách hàng của các ngân hàng về việc nhu cầu sử dụng ứng dụng ngân hàng di động tăng cao có thể bị tội phạm lợi dụng. Chẳng hạn như các ứng dụng giả danh ứng dụng di động của các ngân hàng lớn để lừa người dùng nhập tên đăng nhập và mật khẩu. Theo các công ty nghiên cứu thì trong năm 2018 đã có khoảng 65 nghìn ứng dụng giả bị phát hiện trong các cửa hàng ứng dụng chính thống. Tội phạm mạng cũng tạo ra các ứng dụng ẩn mình dưới dạng trò chơi hay tiện ích. Khi người dùng chạy ứng dụng di động của ngân hàng, các ứng dụng này liền hiển thị màn hình đăng nhập giả phía trên màn hình đăng nhập thật. Sau khi người dùng nhập thông tin đăng nhập, phần mềm đó sẽ chuyển họ tới màn hình đăng nhập của ứng dụng thật khiến họ không biết rằng mình đã bị đánh cắp thông tin.

Dịch bệnh và yêu cầu giãn cách xã hội đã khiến cho nhu cầu giao dịch từ xa tăng cao và thúc đẩy sự phát triển của dịch vụ ngân hàng di động, nhưng cũng tạo thời cơ cho tội phạm mạng lợi dụng. Để có thể phát triển dịch vụ và phục vụ khách hàng ngày càng tốt hơn, các ngân hàng cần rà soát lại các ứng dụng, vá các lỗ hổng và hướng dẫn khách hàng cách tự bảo vệ bản thân. Khách hàng cần biết tải ứng dụng ngân hàng ở đâu, khi thấy những dấu hiệu khả nghi thì liên hệ với ai,… Nếu không có sự phối hợp chặt chẽ giữa ngân hàng với khách hàng và các cơ quan chức năng, tội phạm mạng sẽ ngày càng gia tăng và sự phát triển của dịch vụ ngân hàng di động sẽ gặp không ít khó khăn.