Phân tích kỹ thuật - Sử dụng không đúng cách các API iOS riêng tư trong một số ứng dụng ngân hàng Việt Nam

Bài viết này được dịch máy
Xem bản gốc

Giới thiệu

Hôm qua, các báo cáo xuất hiện trong cộng đồng an ninh thông tin Việt Nam cho biết hai ứng dụng ngân hàng phổ biến - BIDV SmartBankingAgribank - đang sử dụng API iOS ẩn / riêng để phát hiện các ứng dụng khác được cài đặt trên iPhone của người dùng.

Hành vi này ban đầu được @opa334, nhà phát triển TrollStore, nêu bật trên infosec.exchange cách đây hai ngày và sau đó trong một bài đăng trên Facebook trên diễn đàn J2TEAM Việt Nam. Sự tranh cãi nhanh chóng lan rộng vì hành vi như vậy cho thấy vi phạm chính sách của Apple và xâm phạm quyền riêng tư của người dùng.

(Phần còn lại của bản dịch tương tự, tuân thủ các quy tắc dịch thuật đã được đặt ra)

  • com.opa334.Dopamine.roothide

  • com.roothide.manager

  • com.cokepokes.AppStorePlus

  • xyz.willy.Zebra

  • com.opa334.Dopamine

  • com.kahsooa.piqwkk.dummy

  • Ảnh chụp màn hình LLDB bên dưới tại điểm dừng trong SBSLaunchApplicationWithIdentifierAndURLAndLaunchOptions hiển thị việc kiểm tra "com.opa334.Dopamine.roothide".

    SBSLaunchApplicationWithIdentifierAndURLAndLaunchOptions được gọi từ SBSLaunchApplicationWithIdentifier.

    API riêng được sử dụng như một kênh phụ để xác minh sự tồn tại của ứng dụng thông qua các mã lỗi trả về:

    • Nếu được cài đặt: trả về lỗi chính sách bảo mật (số lỗi 9) do thiếu quyền của Apple).

    • Nếu không được cài đặt: trả về không tìm thấy ứng dụng (số lỗi 7).

    Điều này chứng minh một lỗ hổng kênh phụ thông qua việc xác minh riêng của iOS để kiểm tra xem một ứng dụng có được cài đặt hay không, được thực thi trong lệnh gọi lớp VNPShieldBridgingManager.

    Tuy nhiên, khi chạy ứng dụng ngân hàng khai thác API riêng này để phát hiện phần mềm được cài đặt trên thiết bị của người dùng, nhật ký bảng điều khiển của ứng dụng sẽ hiển thị các thông báo lỗi cho biết các nỗ lực khởi chạy ứng dụng mà không có quyền.

    Vi Phạm Chính Sách Cửa Hàng Apple

    Theo Hướng Dẫn Đánh Giá Cửa Hàng Ứng Dụng của Apple (Phần 2.5.1 và Pháp Lý 5), việc sử dụng các API riêng (riêng tư) hoặc các lệnh hệ thống ẩn mà không có sự đồng ý rõ ràng của người dùng vi phạm tính minh bạch dữ liệu, quyền kiểm soát của người dùng và các tiêu chuẩn bảo mật, làm suy yếu niềm tin của người dùng.

    Cụ thể, Hướng Dẫn 2.5.1 yêu cầu các ứng dụng "chỉ được sử dụng các API công khai" và phải sử dụng các API này một cách nghiêm ngặt cho mục đích của chúng. Bất kỳ việc sử dụng các framework hoặc chức năng hệ thống nội bộ, không được tiết lộ nào sẽ dẫn đến việc từ chối hoặc gỡ bỏ ứng dụng. Apple thực thi các hướng dẫn này để duy trì tính ổn định của ứng dụng, bảo vệ quyền riêng tư của người dùng và đảm bảo bảo mật nền tảng.

    Ngoài việc tuân thủ, việc lạm dụng các API riêng có thể là vấn đề về bảo mật và quyền riêng tư. Các quy tắc của Apple tồn tại một phần để ngăn các ứng dụng truy cập dữ liệu hoặc khả năng mà người dùng không đồng ý. Ví dụ, việc sử dụng các lệnh hệ thống ẩn để dò tìm trạng thái của thiết bị có thể vi phạm quyền riêng tư và bảo mật nền tảng của người dùng. Quét các ứng dụng đã cài đặt trên thiết bị của người dùng mà không được phép là điều bị cấm rõ ràng và làm suy yếu niềm tin của người dùng​.

    Cố gắng vượt qua các hạn chế của iOS sandbox hoặc thu thập dữ liệu không được ủy quyền (ví dụ: danh sách các ứng dụng đã cài đặt) là một vi phạm lớn, nâng cao các cảnh báo nghiêm trọng cho Apple và những người dùng quan tâm đến bảo mật. Những thực hành như vậy có nguy cơ bị cấm ứng dụng hoặc loại bỏ khỏi App Store, có thể ảnh hưởng đến hàng triệu khách hàng ngân hàng.

    Kết Luận

    Phân tích kỹ thuật cho thấy BIDV SmartBanking (v5.2.62, cập nhật vào ngày 14 tháng 3, 2025) và Agribank Plus (v5.1.8, cập nhật vào ngày 25 tháng 3, 2025) sử dụng Mobile App Shield thương mại DexProtector và Dexguard, cùng với mã tự phát triển có tên "VNPay Runtime Protection".

    VNPay Runtime Protection sử dụng một cơ chế sử dụng các API riêng của iOS không được ủy quyền (SBSLaunchApplicationWithIdentifierAndURLAndLaunchOptions) để phát hiện sự hiện diện của ứng dụng trên các thiết bị iOS của người dùng, kết hợp với một mã hóa XOR rất yếu để cố gắng che giấu các chuỗi API riêng.

    Những thực hành này có khả năng vi phạm các chính sách App Store của Apple và tạo ra nguy cơ cao bị Apple gỡ bỏ ứng dụng, có thể ảnh hưởng đến hàng triệu khách hàng ngân hàng.

    Sự việc này KHÔNG liên quan đến BShield. Mặc dù chúng tôi thỉnh thoảng nhận thức được các phương pháp phát hiện khác nhau, bao gồm một số thủ thuật sử dụng các lỗ hổng N-day hoặc API riêng, nhưng với tư cách là Giải Pháp Bảo Vệ Ứng Dụng Di Động cấp ngân hàng, BShield nghiêm ngặt sử dụng các kỹ thuật phát hiện ổn định và hợp pháp. Chúng tôi KHÔNG sử dụng các phương pháp rủi ro hoặc nguy hiểm, đảm bảo tuân thủ đầy đủ các chính sách cửa hàng, ưu tiên bảo mật người dùng và doanh nghiệp giữa những mối đe dọa gia tăng nhằm vào các ứng dụng ngân hàng.

    Nguồn
    Tuyên bố từ chối trách nhiệm: Nội dung trên chỉ là ý kiến của tác giả, không đại diện cho bất kỳ lập trường nào của Followin, không nhằm mục đích và sẽ không được hiểu hay hiểu là lời khuyên đầu tư từ Followin.
    Thích
    1
    Thêm vào Yêu thích
    Bình luận