Các yêu cầu đối với bảo mật dữ liệu sau đây tương ứng với quy trình Đánh giá việc bảo vệ dữ liệu năm 2023.
Đối với các phiên bản đánh giá nhận được sau tháng 02/2024, vui lòng xem trang này.
Các ứng dụng có quyền truy cập vào một số loại Dữ liệu trên nền tảng của Meta cần phải hoàn thành quy trình Đánh giá việc bảo vệ dữ liệu (DPA) hàng năm. DPA được thiết kế nhằm xác định xem nhà phát triển có tuân thủ các yêu cầu trong Điều khoản của nền tảng Meta hay không vì phần đánh giá này liên quan đến việc sử dụng, chia sẻ và bảo vệ Dữ liệu trên nền tảng. Một nhóm nhỏ trong bảng câu hỏi DPA tập trung vào Điều khoản 6 của nền tảng - nêu các yêu cầu đối với bảo mật dữ liệu. Bạn nên tham khảo tài liệu này để nắm được các kỳ vọng, yêu cầu và bằng chứng liên quan về việc sử dụng và xử lý bảo mật dữ liệu theo quy định trong Điều khoản của nền tảng Meta.
Vui lòng lưu ý rằng cuối tài liệu này có một bảng thuật ngữ cung cấp các thuật ngữ chính và định nghĩa của những thuật ngữ đó.
Tìm thêm tài nguyên video từ Data Protocol.
Trong suốt tài liệu này, cụm từ phía máy chủ được dùng làm cách gọi ngắn gọn cho bất kỳ môi trường phụ trợ nào mà tổ chức sử dụng để xử lý Dữ liệu trên nền tảng - cho dù chạy trên máy chủ đám mây như Amazon Web Services (AWS), do nhà phát triển lưu trữ trong trung tâm dữ liệu riêng hoặc được chia sẻ hay hình thức kết hợp (kết hợp các phương thức này).
Các yêu cầu phía máy khách nói đến việc xử lý Dữ liệu trên nền tảng trong trình duyệt, thiết bị di động, ứng dụng dành cho máy tính và laptop, cũng như trong các loại thiết bị khác mà mọi người sử dụng.
Tạo (hoặc cập nhật, nếu cần) phần mô tả hoặc sơ đồ luồng dữ liệu trình bày cách ứng dụng hoặc hệ thống xử lý Dữ liệu nền tảng.
Cuối cùng, phần mô tả hoặc sơ đồ luồng dữ liệu phải bao gồm:
Bạn có thể phải gửi bằng chứng để hỗ trợ câu trả lời liên quan đến biện pháp bảo mật dữ liệu mà bạn triển khai. Bạn nên đọc Hướng dẫn về bằng chứng trong tài liệu này để biết ví dụ về bằng chứng được chấp nhận và chuẩn bị bằng chứng theo đó. Chúng tôi chấp nhận các loại tệp tài liệu phổ biến cùng với ảnh chụp màn hình và bản ghi màn hình. Vui lòng đảm bảo các tệp không được bảo vệ bằng mật khẩu. Bạn có thể tải nhiều tệp lên, mỗi tệp có kích thước tối đa là 2 GB. Chúng tôi chấp nhận các định dạng .xls, .xlsx, .csv, .doc, .docx, .pdf, .txt, .jpeg, .jpg, .png, .ppt, .pptx, .mov, .mp4, .zip và .zipx.
Vui lòng đảm bảo rằng bạn loại bỏ (gỡ) dữ liệu nhạy cảm khỏi bằng chứng trước khi gửi.
Đối với ứng dụng được yêu cầu tải lên bằng chứng liên quan đến biện pháp bảo mật dữ liệu, Meta yêu cầu 2 loại tài liệu khác nhau:
Bằng chứng về chính sách hoặc quy trình (đôi khi còn gọi là biện pháp kiểm soát quản trị) là văn bản tài liệu mô tả cách tiến hành một biện pháp bảo mật dữ liệu cụ thể. Bằng chứng này có thể tồn tại dưới nhiều dạng. Đó có thể là đoạn trích từ một bộ chính sách nội bộ, một phần hay toàn bộ trang wiki nội bộ hoặc một tài liệu mới tạo mà bạn sử dụng để mô tả cách tiến hành biện pháp nếu không có sẵn tài liệu. Trong trường hợp bất kỳ, bằng chứng về chính sách hoặc quy trình mà bạn tải lên phải giải thích rõ ràng mức độ liên quan của cách tiến hành biện pháp bảo vệ dữ liệu cụ thể với các yêu cầu của Meta. Vui lòng chỉ cung cấp chính sách hoặc ngôn ngữ có liên quan và cần thiết để Meta đánh giá tính bảo mật. Bạn cũng có thể sử dụng hộp không có văn bản đi kèm với câu hỏi để chuyển hướng người đánh giá đến (các) phần phù hợp.
Bằng chứng triển khai cho biết cách bạn triển khai trên thực tế chính sách hoặc quy trình một cách trực tiếp qua ảnh chụp màn hình/bản ghi màn hình. Do mỗi nhà phát triển lại có cấu hình khác nhau nên chúng tôi không thể cung cấp ví dụ cho từng trường hợp. Dù vậy, bằng chứng triển khai cần thể hiện cùng một mức độ chi tiết nhất có thể như ví dụ mà chúng tôi cung cấp.
Chúng tôi hiểu rằng việc chuẩn bị bằng chứng triển khai (cho thấy toàn diện hoạt động triển khai biện pháp bảo mật dữ liệu cụ thể) có thể là gánh nặng không cần thiết. Do đó, bạn nên gửi bằng chứng theo hướng dẫn ở đây, nhớ loại bỏ thông tin nhạy cảm khỏi bằng chứng trước khi gửi:
Không gửi bằng chứng chứa một trong các giá trị sau ở dạng đọc được (không loại bỏ). Nếu bạn đang dùng trình chỉnh sửa hình ảnh cho ảnh chụp màn hình, hãy đặt một hộp đen lên trên giá trị đó. Nếu bạn dùng trình chỉnh sửa PDF, hãy nhớ loại bỏ văn bản bằng cách dùng công cụ mà thực sự gỡ giá trị chứ không chỉ đơn thuần là thêm một lớp trong khi giữ nguyên văn bản (ví dụ: công cụ loại bỏ trong ứng dụng Xem trước của Apple).
Câu hỏi: Bạn có áp dụng tính năng mã hóa ở trạng thái nghỉ cho tất cả Dữ liệu trên nền tảng được lưu trữ trong môi trường trung tâm dữ liệu, máy chủ hoặc đám mây không?
Tính năng mã hóa ở trạng thái nghỉ bảo vệ Dữ liệu trên nền tảng bằng cách chuyển dữ liệu thành định dạng không đọc được nếu không có khóa giải mã riêng biệt, nhờ đó bổ sung một lớp bảo vệ nhằm ngăn quyền đọc trái phép.
Nếu lưu trữ Dữ liệu trên nền tảng tại phía máy chủ:
Nếu nhà phát triển KHÔNG lưu trữ Dữ liệu trên nền tảng tại phía máy chủ, yêu cầu này sẽ không áp dụng.
Nếu lưu trữ Dữ liệu trên nền tảng bằng hình thức lưu trữ qua IaaS (ví dụ: AWS EC2, Microsoft Azure IaaS và Google Compute Engine), tự lưu trữ hay lưu trữ kết hợp, bạn cần trả lời câu hỏi này.
Tuy nhiên, có những mô hình lưu trữ phụ trợ khác là trường hợp đặc biệt:
Nếu chỉ lưu trữ Dữ liệu trên nền tảng qua một sản phẩm bất kỳ nêu trên (và không dùng hình thức Lưu trữ qua IaaS, Tự lưu trữ hoặc Lưu trữ kết hợp), bạn không cần trả lời câu hỏi này. Thay vào đó, bạn nên mô tả mối quan hệ này trong phần Nhà cung cấp dịch vụ của bản Đánh giá việc bảo vệ dữ liệu.
Nếu bạn chỉ lưu trữ Dữ liệu trên nền tảng qua API của Meta (chẳng hạn như bằng player.setDataAsync()
) trong SDK Trò chơi tức thì, bạn không cần trả lời câu hỏi này.
Nếu bạn được yêu cầu gửi bằng chứng về biện pháp bảo vệ này, hãy làm theo hướng dẫn trong phần Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
AWS RDS – nhà phát triển có thể đặt cấu hình tính năng mã hóa ở trạng thái nghỉ trong AWS RDS, do đó họ phải đảm bảo đã thiết lập lựa chọn cấu hình để áp dụng biện pháp bảo vệ này.
Đối với phiên bản RDS đại diện có chứa Dữ liệu trên nền tảng, hãy dùng công cụ AWS CLI để tìm nạp cấu hình StorageEncrypted tương ứng.
# List RDS instances in default region $ aws rds describe-db-instances \ --query 'DBInstances[*].DBInstanceIdentifier' [ "database-1", "database-2" ] # For each instance returned, retrieve the storage encrypted config $ aws rds describe-db-instances \ --db-instance-identifier database-1 \ --query 'DBInstances[*].StorageEncrypted' [ true ] $ aws rds describe-db-instances \ --db-instance-identifier database-2 \ --query 'DBInstances[*].StorageEncrypted' [ true ]
Theo mặc định, AWS DynamoDB được mã hóa ở trạng thái nghỉ. Bạn có thể tìm nạp cấu hình tính năng mã hóa ở trạng thái nghỉ cho bảng bằng những lệnh này.
$ aws dynamodb list-tables --output table -------------- | ListTables | +------------+ ||TableNames|| |+----------+| || Users || |+----------+| $ aws dynamodb describe-table \ --table-name Users \ --query "Table.SSEDescription.Status" "ENABLED"
AWS DocumentDB phải được đặt cấu hình để áp dụng tính năng mã hóa ở trạng thái nghỉ. Đối với cụm đại diện có chứa Dữ liệu trên nền tảng, hãy dùng những lệnh này để tìm nạp cấu hình StorageEncrypted.
$ aws docdb describe-db-clusters --query 'DBClusters[*].DBClusterIdentifier' [ "docdb-users" ] $ aws docdb describe-db-clusters \ --db-cluster-identifier 'docdb-users' \ --query 'DBClusters[*].StorageEncrypted' [ true ]
Nhóm AWS S3 có thể được đặt cấu hình để áp dụng tính năng mã hóa ở trạng thái nghỉ cho tất cả đối tượng đã tạo trong nhóm đó. Hãy dùng những lệnh này để liệt kê các nhóm và tìm nạp cấu hình cho phương thức mã hóa nhóm mặc định.
$ aws s3api list-buckets --output table --query "Buckets[*].Name" --------------------------------------------- | ListBuckets | +-------------------------------------------+ | platform.storage | +-------------------------------------------+ $ aws s3api get-bucket-encryption \ --bucket platform.storage \ --query "ServerSideEncryptionConfiguration.Rules[*].ApplyServerSideEncryptionByDefault" \ --output table --------------------- |GetBucketEncryption| +-------------------+ | SSEAlgorithm | +-------------------+ | AES256 | +-------------------+
Hãy tham khảo tài liệu của Microsoft về tính năng mã hóa ở trạng thái nghỉ trong Azure có liên quan đến việc tổ chức dùng dịch vụ của Microsoft.
Hãy tham khảo tài liệu của Google về tính năng mã hóa ở trạng thái nghỉ trên Google Cloud Platform.
Nếu không triển khai tính năng mã hóa ở trạng thái nghỉ trong môi trường phía máy chủ, có thể bạn đang bảo vệ Dữ liệu trên nền tảng bằng cách khác vẫn được chấp nhận. Trong trường hợp này, bạn nên mô tả những nội dung sau đây:
Câu hỏi: Cụ thể liên quan đến dữ liệu được lưu trữ trong các thiết bị của cá nhân và tổ chức: Bạn có thực thi phương thức mã hóa ở trạng thái nghỉ hay áp dụng các chính sách và quy tắc để giảm nguy cơ mất dữ liệu đối với tất cả Dữ liệu trên nền tảng được lưu trữ trong những thiết bị này hay không?
Nếu nhà phát triển cho phép lưu trữ Dữ liệu trên nền tảng trong những thiết bị như máy tính xách tay của nhân viên hay phương tiện lưu trữ di động (ví dụ: ổ đĩa USB), dữ liệu đó có nguy cơ cao bị truy cập trái phép trong trường hợp thiết bị đã mất hoặc bị đánh cắp. Nhà phát triển phải thực hiện các bước để hạn chế rủi ro này.
Để giảm nguy cơ Dữ liệu trên nền tảng bị truy cập trái phép, Nhà phát triển phải có các biện pháp kiểm soát về mặt kỹ thuật (ưu tiên) hoặc hành chính (không ưu tiên nhưng chấp nhận được) liên quan đến Dữ liệu trên nền tảng được lưu trữ trong các thiết bị của tổ chức (ví dụ: máy tính xách tay) và phương tiện lưu trữ di động.
Yêu cầu này được áp dụng cho dù bạn có xử lý Dữ liệu trên nền tảng tại phía máy chủ hay không.
Nếu bạn được yêu cầu gửi bằng chứng về biện pháp bảo vệ này, hãy làm theo hướng dẫn trong phần Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
Bạn có thể sử dụng một hoặc cả hai: a) biện pháp kiểm soát về mặt kỹ thuật (ví dụ: mã hóa ổ đĩa) hoặc b) quy tắc/chính sách để giảm nguy cơ mất dữ liệu đối với Dữ liệu trên nền tảng được lưu trữ trong các thiết bị của tổ chức như máy tính xách tay và điện thoại di động.
Biện pháp kiểm soát về mặt kỹ thuật có thể bao gồm:
Quy tắc/chính sách có thể bao gồm:
Một tổ chức phân loại Dữ liệu trên nền tảng của Meta là "dữ liệu riêng tư" theo tiêu chuẩn phân loại dữ liệu của họ. Tổ chức này đã xây dựng Nguyên tắc xử lý dữ liệu, đồng thời yêu cầu tất cả nhân viên phải nắm rõ và tuân thủ các chính sách này.
Câu hỏi: Bạn có triển khai giao thức bảo mật TLS 1.2 trở lên cho mọi kết nối mạng chuyển qua hoặc kết nối hay đi qua các mạng công cộng mà hoạt động truyền Dữ liệu trên nền tảng xảy ra hay không? Ngoài ra, bạn có đảm bảo tuyệt đối không truyền Dữ liệu trên nền tảng ở dạng chưa mã hóa qua mạng công cộng (ví dụ: qua HTTP hoặc FTP), cũng như không sử dụng giao thức bảo mật SSL v2 và SSL v3 không?
Bất kỳ ai có thể quan sát lưu lượng truy cập mạng đều có khả năng tiếp cận Dữ liệu trên nền tảng được truyền qua Internet. Do đó, dữ liệu này phải được bảo vệ bằng phương thức mã hóa để ngăn các bên trái phép đọc được dữ liệu.
Dù bạn có xử lý Dữ liệu trên nền tảng tại phía máy chủ hay không:
Dưới đây là bảng tóm tắt chính sách về phương thức mã hóa khi truyền cho các hình thức truyền dữ liệu khác nhau.
Hình thức truyền dữ liệu | Chính sách về phương thức mã hóa khi truyền |
---|---|
Đến và từ các thiết bị của người dùng cuối (điện thoại di động, máy tính, máy tính bảng, v.v.) và máy chủ hoặc cơ sở hạ tầng đám mây. |
|
Đến và từ máy chủ/cơ sở hạ tầng đám mây và bất kỳ máy chủ từ xa, cơ sở hạ tầng đám mây hoặc dịch vụ của bên thứ tư nào. | Phải thực thi TLS 1.2 trở lên |
Đến và từ các thành phần nằm hoàn toàn trong trung tâm dữ liệu, máy chủ hoặc cơ sở hạ tầng đám mây riêng tư | Khuyên dùng nhưng không bắt buộc sử dụng phương thức mã hóa TLS cho hoạt động chuyển Dữ liệu trên nền tảng nằm hoàn toàn trong mạng đám mây riêng tư |
Đến và từ Meta cũng như bất kỳ thiết bị, máy chủ hoặc cơ sở hạ tầng đám mây nào | Không thuộc phạm vi Đánh giá việc bảo vệ dữ liệu – Meta kiểm soát chính sách TLS đối với những hoạt động chuyển này |
Nếu bạn được yêu cầu gửi bằng chứng về biện pháp bảo vệ này, hãy làm theo hướng dẫn trong mục Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai. Một cách đơn giản để tạo bằng chứng triển khai minh họa cấu hình của một trong các trình nghe trên web là sử dụng công cụ Qualys SSL Server Test.
Đây là ví dụ về kết quả thu được từ công cụ Qualys SSL Server Test. Các chú thích màu đỏ trong phần Cấu hình tóm tắt phiên bản SSL/TLS được hỗ trợ. Lưu ý: ví dụ này chỉ có 2 trang đầu tiên nhưng bạn cần gửi toàn bộ kết quả kiểm tra.
Ngoài TLS, bạn có thể bảo vệ Dữ liệu trên nền tảng bằng phương thức mã hóa khi truyền khác, miễn là phương thức đó có khả năng bảo vệ tương đương. Trong trường hợp này, bạn cần gửi thông tin chi tiết về phương thức mã hóa mình dùng để Meta xem xét:
Câu hỏi: Bạn có kiểm tra ứng dụng và hệ thống để phát hiện lỗ hổng và sự cố bảo mật ít nhất 1 lần/năm không? (Ví dụ: bạn có tiến hành kiểm thử thâm nhập theo cách thủ công không?)
Nhà phát triển phải kiểm tra lỗ hổng và sự cố bảo mật để chủ động phát hiện chúng, tốt nhất là ngăn chặn các sự cố bảo mật trước khi chúng xảy ra
Áp dụng cho tất cả nhà phát triển:
Yêu cầu bổ sung đối với nhà phát triển xử lý Dữ liệu trên nền tảng tại phía máy chủ:
Nếu tổ chức đang cân nhắc việc thêm Thử nghiệm tĩnh về khả năng bảo mật ứng dụng (SAST) vào quy trình phát triển, bạn có thể lựa chọn một công cụ từ danh sách các công cụ nguồn mở và thương mại do Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST) duy trì làm điểm khởi đầu hữu ích.
Nếu bạn được yêu cầu gửi bằng chứng về biện pháp bảo vệ này, hãy làm theo hướng dẫn trong mục Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
Nếu tổ chức xử lý Dữ liệu trên nền tảng trong môi trường đám mây/máy chủ:
Phần mềm đám mây hoặc máy chủ có thể truy cập Internet (ví dụ: API REST được ứng dụng web và di động sử dụng) mà bạn dùng để xử lý Dữ liệu trên nền tảng phải nằm trong phạm vi của quy trình kiểm tra này thì mới được chấp nhận.
Nếu tổ chức KHÔNG xử lý Dữ liệu trên nền tảng trong môi trường đám mây/máy chủ:
Kiểm thử thâm nhập – Một tổ chức ủy thác cho công ty khác kiểm thử thâm nhập phần mềm mà họ sở hữu. Phần mềm này chạy tại phía máy chủ tích hợp với các API của Meta và xử lý Dữ liệu trên nền tảng. Công ty kiểm tra hoàn tất quy trình kiểm tra và đưa ra bản tóm tắt như bên dưới. Hãy lưu ý đến các chú thích màu đỏ nêu bật ngày tiến hành kiểm tra (phải trong vòng 12 tháng qua) và thông tin tóm tắt những phát hiện cực/rất nghiêm trọng chưa được khắc phục ở phần kết luận quy trình kiểm tra (hoặc kiểm tra lại, nếu có). Vui lòng loại bỏ thông tin nhạy cảm khỏi báo cáo (cụ thể là mọi chi tiết về các bước tái tạo lỗ hổng bảo mật) trước khi gửi.
Phân tích tĩnh – Nếu bạn sử dụng phương pháp khác (ví dụ: công cụ SAST), hãy xuất kết quả thành tài liệu. Tài liệu này phải bao gồm ngày chạy SAST và danh sách những phát hiện nêu rõ từng loại phát hiện cùng mức độ nghiêm trọng của phát hiện đó.
Đánh giá cấu hình đám mây
Nhà phát triển sử dụng NCC Scout Suite theo bộ quy tắc mặc định được áp dụng cho nhà cung cấp dịch vụ đám mây của họ (trong trường hợp này là AWS) để xem xét cấu hình đám mây nhằm phát hiện lỗ hổng và sự cố bảo mật. Công cụ trả về tệp JSON chứa kết quả kiểm tra chi tiết. Trong ví dụ này, có một số sự cố bị gắn cờ là mức độ nghiêm trọng "Nguy hiểm" mà nhà phát triển cần xem xét và khắc phục.
Tệp thô JSON của NCC Scout Suite chứa thông tin chi tiết về môi trường đám mây của bạn, do vậy, bạn không nên tải lên. Thay vào đó, hãy lọc nội dung phản hồi để hiển thị số lượng kết quả theo mức độ nghiêm trọng.
$ python3 scout.py aws –-no-browser 2022-08-22 11:39:38 localhost scout[76981] INFO Saving data to scoutsuite-report/scoutsuite-results/scoutsuite_results_aws-043954759379.js $ cd scoutsuite-report/scoutsuite-results $ tail -n +2 scoutsuite_results_aws-043954750000.js| jq '. | {last_run}' | pbcopy { "last_run": { "ruleset_about": "This ruleset consists of numerous rules that are considered standard by NCC Group. The rules enabled range from violations of well-known security best practices to gaps resulting from less-known security implications of provider-specific mechanisms. Additional rules exist, some of them requiring extra-parameters to be configured, and some of them being applicable to a limited number of users.", "ruleset_name": "default", "run_parameters": { "excluded_regions": [], "regions": [], "services": [], "skipped_services": [] }, "summary": { "acm": { "checked_items": 4, "flagged_items": 2, "max_level": "warning", "resources_count": 2, "rules_count": 2 }, "awslambda": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 0 }, "cloudformation": { "checked_items": 11, "flagged_items": 0, "max_level": "warning", "resources_count": 11, "rules_count": 1 }, "cloudfront": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 3 }, "cloudtrail": { "checked_items": 153, "flagged_items": 4, "max_level": "danger", "resources_count": 17, "rules_count": 9 }, "cloudwatch": { "checked_items": 2, "flagged_items": 0, "max_level": "warning", "resources_count": 2, "rules_count": 1 }, "codebuild": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 0 }, "config": { "checked_items": 17, "flagged_items": 0, "max_level": "warning", "resources_count": 1227, "rules_count": 1 }, "directconnect": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 0 }, "dynamodb": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 1, "rules_count": 0 }, "ec2": { "checked_items": 760, "flagged_items": 108, "max_level": "danger", "resources_count": 44, "rules_count": 28 }, "efs": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 0 }, "elasticache": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 0 }, "elb": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 3 }, "elbv2": { "checked_items": 42, "flagged_items": 4, "max_level": "danger", "resources_count": 0, "rules_count": 5 }, "emr": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 0 }, "iam": { "checked_items": 801, "flagged_items": 27, "max_level": "danger", "resources_count": 87, "rules_count": 37 }, "kms": { "checked_items": 15, "flagged_items": 0, "max_level": "warning", "resources_count": 15, "rules_count": 1 }, "rds": { "checked_items": 1, "flagged_items": 0, "max_level": "warning", "resources_count": 27, "rules_count": 9 }, "redshift": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 6 }, "route53": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 1, "rules_count": 3 }, "s3": { "checked_items": 121, "flagged_items": 34, "max_level": "warning", "resources_count": 7, "rules_count": 18 }, "secretsmanager": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 1, "rules_count": 0 }, "ses": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 4 }, "sns": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 7 }, "sqs": { "checked_items": 0, "flagged_items": 0, "max_level": "warning", "resources_count": 0, "rules_count": 8 }, "vpc": { "checked_items": 271, "flagged_items": 211, "max_level": "warning", "resources_count": 0, "rules_count": 9 } }, "time": "2022-08-22 11:42:25-0400", "version": "5.11.0" } }
Một phương pháp khác để xem xét cấu hình đám mây dành cho những nhà phát triển sử dụng bộ quy tắc Amazon Web Services.
# Show that AWS Foundational Security Best Practices are enabled $ aws securityhub get-enabled-standards { "StandardsSubscriptions": [ { "StandardsSubscriptionArn": "arn:aws:securityhub:us-west-1:043954759379:subscription/aws-foundational-security-best-practices/v/1.0.0", "StandardsArn": "arn:aws:securityhub:us-west-1::standards/aws-foundational-security-best-practices/v/1.0.0", "StandardsStatus": "READY" } ] } # Show that aggregator is configured for a representative region used to process Platform Data $ aws securityhub list-finding-aggregators $ aws securityhub get-finding-aggregator --finding-aggregator-arn '{REPLACE-WITH-FINDING-AGGREGATOR-ARN}' # Demonstrate that the ruleset is running by fetching active findings and counting the number of lines of output $ aws securityhub get-findings --query 'Findings[?RecordState==`ACTIVE`]' --filters '{"GeneratorId":[{"Value": "aws-foundational-security","Comparison":"PREFIX"}]}' --output text | wc -l 4876 # Demonstrate that there are no active critical severity findings $ aws securityhub get-findings --query 'Findings[?Severity.Label==`CRITICAL`] | [?RecordState==`ACTIVE`] | [*][Title, GeneratorId]' --filters '{"GeneratorId":[{"Value": "aws-foundational-security","Comparison":"PREFIX"}]}' []
Nếu đang vận hành một Chương trình tiết lộ lỗ hổng bảo mật (VDP) vẫn hoạt động bình thường, chẳng hạn như nền tảng BugCrowd hoặc HackerOne, bạn có thể trình bày rằng chương trình này là biện pháp bảo vệ thay thế cho quy trình kiểm thử thâm nhập hoặc quét lỗ hổng bảo mật. Để chứng minh, bạn phải gửi bằng chứng cho thấy:
Trong trường hợp này, bằng chứng phải bao gồm:
Câu hỏi: Khóa bí mật của ứng dụng Meta và mã truy cập API của Meta có áp dụng 2 biện pháp bảo vệ sau đây không?
Khóa bí mật của ứng dụng và mã truy cập là những thông tin bảo mật cơ bản tác động đến cách API của Meta ra quyết định nên cho phép hành động nào. Nếu có được quyền truy cập vào các thông tin đăng nhập này, bên chưa được cấp phép có thể gọi API của Meta (tức là mạo danh nhà phát triển thật) và thực hiện hành động bất kỳ mà chúng tôi đã cấp quyền cho ứng dụng (ví dụ: đọc dữ liệu từ API của Meta về người dùng ứng dụng).
Mã truy cập
Khóa bí mật của ứng dụng – Bạn phải đáp ứng 1 trong 2 điều kiện sau đây:
Nếu bạn được yêu cầu gửi bằng chứng về biện pháp bảo vệ này, hãy làm theo hướng dẫn trong mục Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
Vui lòng cung cấp tài liệu về chính sách bảo vệ khóa bí mật của ứng dụng Meta và mã truy cập API của Meta. Nếu ứng dụng xử lý mã truy cập của Meta tại phía máy chủ, hãy đưa ra bằng chứng cho thấy biện pháp bảo vệ mà bạn áp dụng (ví dụ: dùng kho lưu trữ, chứng minh rằng các giá trị được lưu trữ bằng định dạng mã hóa, đặt cấu hình để ứng dụng yêu cầu bằng chứng khóa bí mật của ứng dụng).
Đừng cung cấp (tức là hãy gỡ) giá trị văn bản thuần túy của bất kỳ khóa bí mật hoặc mã truy cập nào trong bằng chứng bạn gửi.
Một tổ chức dùng AWS Secrets Manager để lưu trữ an toàn dữ liệu nhạy cảm, bao gồm cả Khóa bí mật của ứng dụng Meta.
Một tổ chức đặt cấu hình để ứng dụng Meta mà họ sở hữu yêu cầu bằng chứng Khóa bí mật của ứng dụng cho các lệnh gọi API.
Câu hỏi: Bạn có kiểm tra các quy trình và hệ thống cần dùng để ứng phó với sự cố bảo mật (ví dụ: xâm phạm dữ liệu hoặc tấn công mạng) ít nhất 1 lần/năm không?
Dù sớm hay muộn, sự cố bảo mật sẽ xảy ra với mọi công ty. Do đó, các tổ chức cần lên kế hoạch trước về việc ai cần làm gì để ngăn chặn sự cố, trao đổi với các bên liên quan, cũng như phục hồi và học hỏi từ sự cố đã xảy ra.
Nhà phát triển phải có:
Yêu cầu này được áp dụng cho dù bạn có xử lý Dữ liệu trên nền tảng tại phía máy chủ hay không.
Làm theo hướng dẫn trong mục Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
Nhà phát triển đã tạo kế hoạch ứng phó sự cố toàn diện theo mẫu này. Những hình ảnh này chỉ mô tả mục lục nhưng có một liên kết bên dưới dẫn đến mẫu đầy đủ.
Hãy xem toàn bộ mẫu kế hoạch ứng phó sự cố của Counteractive (định dạng docx)
Nhà phát triển đã tiến hành kiểm tra kế hoạch ứng phó sự cố thông qua diễn tập trong phòng họp, đồng thời đã ghi chép lại kết quả theo mẫu này.
Ở đây chỉ có 2 trang đầu tiên, nhưng bạn nên gửi toàn bộ tài liệu.
Câu hỏi: Bạn có yêu cầu xác thực đa yếu tố đối với quyền truy cập từ xa vào mọi tài khoản có thể kết nối với môi trường đám mây/máy chủ và/hoặc truy cập vào những dịch vụ bạn dùng để triển khai, duy trì, giám sát và vận hành các hệ thống lưu trữ Dữ liệu trên nền tảng của Meta không?
Một kỹ thuật phổ biến mà các kẻ xấu sử dụng để giành quyền truy cập vào dữ liệu bí mật bắt đầu từ việc giành quyền truy cập vào các công cụ mà nhà phát triển dùng để xây dựng hoặc vận hành ứng dụng/hệ thống của họ. Các công cụ tinh vi ra đời với mục đích xâm nhập vào những tài khoản chỉ được bảo vệ bằng mật khẩu. Phương thức xác thực đa yếu tố bổ sung một lớp bảo mật giúp ngăn chặn nguy cơ này.
Về việc xử lý Dữ liệu trên nền tảng, tổ chức phải bảo vệ quyền truy cập từ xa vào các công cụ này bằng phương thức xác thực đa yếu tố (tức là không chỉ dùng mật khẩu):
Cụ thể, bạn cần sử dụng phương thức xác thực đa yếu tố (MFA) hoặc biện pháp bảo vệ khác được chấp nhận cho những công cụ sau:
Về biện pháp triển khai phương thức xác thực đa yếu tố:
Nếu bạn được yêu cầu gửi bằng chứng về biện pháp bảo vệ này, hãy làm theo hướng dẫn trong phần Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
Một tổ chức sử dụng AzureAD làm giải pháp Đăng nhập một lần. Chính sách này yêu cầu Xác thực đa yếu tố.
Sau đó, chính sách được liên kết với các ứng dụng trên đám mây áp dụng chính sách. Nếu bạn dùng phương pháp này, bằng chứng phải cho thấy toàn bộ phần Các mục đã chọn để trình bày rõ ứng dụng nào trên đám mây yêu cầu xác thực đa yếu tố.
Quy tắc này yêu cầu xác thực đa yếu tố đối với mọi lần đăng nhập.
Đây là ví dụ về chính sách AWS IAM cho phép đặt cấu hình xác thực đa yếu tố (MFA), nhưng cấm các hành động khác nếu không triển khai MFA.
Một tổ chức đặt cấu hình xác thực trên GitHub để yêu cầu xác thực đa yếu tố đối với mọi người dùng trong tổ chức.
Câu hỏi: Bạn có thiết lập hệ thống bảo trì tài khoản (chỉ định, thu hồi, xem xét quyền truy cập và đặc quyền) không?
Phương pháp quản lý tài khoản hiệu quả là yếu tố quan trọng nhằm ngăn hành vi sử dụng trái phép tài khoản để giành quyền truy cập vào Dữ liệu trên nền tảng. Đặc biệt, nhà phát triển phải đảm bảo việc thu hồi quyền truy cập vào nguồn lực hoặc hệ thống khi không còn cần thiết.
Yêu cầu này sẽ áp dụng cho dù bạn có xử lý Dữ liệu trên nền tảng tại phía máy chủ hay không.
Hãy làm theo hướng dẫn trong phần Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
Bằng chứng về chính sách/quy trình – Một nhà phát triển tạo Tiêu chuẩn quản lý vòng đời truy cập chứa các quy trình cấp, xem xét và thu hồi quyền truy cập.
Một nhà phát triển sử dụng Workday làm nguồn dữ liệu Quản trị nhân sự (HR) chính thống, bao gồm cả tình trạng việc làm hiện tại. Nhà phát triển này dùng Google Cloud Identity làm Nhà cung cấp danh tính (IdP) để quản lý tài khoản người dùng cũng như cấp quyền truy cập vào các công cụ và hệ thống thông tin.
Một nhà phát triển gửi bằng chứng về việc thu hồi quyền truy cập của nhân sự đã rời khỏi tổ chức thông qua báo cáo cho thấy gần đây đã chạy báo cáo đối chiếu (tức là trong 1 năm qua) và không phát hiện tài khoản người dùng không hoạt động nào trong Google Cloud Identity đối với những người không phải nhân viên đang hoạt động (theo báo cáo trên Workday về các nhân viên hiện tại).
Một nhà phát triển dùng Google Cloud Identity làm Nhà cung cấp danh tính (IdP) để quản lý tài khoản người dùng cũng như cấp quyền truy cập vào các công cụ và hệ thống thông tin.
Một nhà phát triển gửi bằng chứng cho thấy việc thu hồi quyền truy cập khi không còn dùng đến (ví dụ: không có lần đăng nhập nào trong 6 tháng qua) thông qua bằng chứng về thư mục người dùng được sắp xếp theo ngày đăng nhập gần nhất để thể hiện rằng không có tài khoản người dùng đang hoạt động nào có lần đăng nhập gần nhất trước thời gian này.
Một nhà phát triển sử dụng công cụ Đăng nhập một lần (SSO) để quản lý danh tính và cấp quyền truy cập vào các công cụ và hệ thống thông tin. Nhà phát triển này đã đặt cấu hình GitHub để yêu cầu xác thực SSO.
Câu hỏi: Bạn có hệ thống cập nhật môi trường và mã hệ thống, chẳng hạn như máy chủ, máy ảo, phương thức phân phối, thư viện, gói và phần mềm diệt vi-rút không?
Các thành phần của phần mềm được cập nhật hoặc vá thường xuyên nhằm khắc phục lỗ hổng bảo mật. Sau cùng, các thành phần này sẽ hết tuổi thọ khi không còn được hỗ trợ nữa. Các nhà phát triển kết hợp hoặc sử dụng những thành phần này phải đảm bảo cập nhật để tránh chạy phần mềm có các lỗ hổng bảo mật đã biết.
Đối với các thành phần sau đây của phần mềm (nếu có), bạn phải có cách xác định và dễ làm theo để xác định những bản vá có sẵn nhằm khắc phục lỗ hổng bảo mật, ưu tiên dựa trên mức độ nguy cơ và liên tục sử dụng bản vá trong quá trình hoạt động:
Meta không yêu cầu sử dụng công cụ cụ thể nào cho những hoạt động này. Thông thường, tổ chức sẽ sử dụng các phương pháp khác nhau để luôn cập nhật nhiều loại phần mềm (ví dụ: thư viện được đóng gói cùng bản cập nhật ứng dụng với bản cập nhật hệ điều hành cho máy tính xách tay của nhân viên).
Yêu cầu này được áp dụng bất kể bạn sử dụng phương pháp lưu trữ nào (ví dụ: BaaS, PaaS, IaaS, tự lưu trữ hay kết hợp), mặc dù nhóm thành phần mà bạn chịu trách nhiệm cập nhật sẽ khác nhau
Sơ đồ bên dưới minh họa trường hợp có thể cần phải vá cho nhiều loại kiến trúc.
Nếu bạn được yêu cầu gửi bằng chứng về biện pháp bảo vệ này, hãy làm theo hướng dẫn trong mục Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
Hãy bắt đầu bằng cách xác định các loại phần mềm trong phạm vi môi trường (ví dụ: Thư viện, SDK, Gói, tệp ảnh đĩa Máy ảo, vùng chứa ứng dụng và hệ điều hành), Trình duyệt, hệ điều hành và các ứng dụng khác mà nhân viên/người đóng góp dùng.
Bạn có thể sử dụng một hoặc nhiều công cụ cho những hoạt động sau:
Snyk dành cho ứng dụng NodeJS – Nhà phát triển sử dụng Giao diện dòng lệnh (CLI) Synk để xác định những phần phụ thuộc của bên thứ ba được đóng gói có lỗ hổng bảo mật đã biết và ưu tiên dựa trên mức độ nghiêm trọng của những lỗ hổng bảo mật đó.
Nhà phát triển đang sử dụng NPM Audit để phát hiện lỗ hổng bảo mật trong những phần phụ thuộc được dùng trong ứng dụng Node. Ảnh minh họa bên dưới cho thấy nhiều lỗ hổng bảo mật rất nghiêm trọng cần được vá.
Nhà phát triển sử dụng Trivy để phát hiện các lỗ hổng bảo mật trong hình ảnh máy. Ảnh minh họa bên dưới cho thấy các lỗ hổng bảo mật rất nghiêm trọng cần được vá trong những thư viện thuộc hình ảnh này.
Nhà phát triển sử dụng Windows Server Update Services (WSUS) để quản lý nhóm máy chủ và máy tính/máy tính xách tay của họ. Ảnh minh họa bên dưới cho thấy chế độ xem quản trị của công cụ WUSU để xem xét, phê duyệt và triển khai các bản cập nhật Windows.
Nếu thiếu các tệp nhật ký đáng tin cậy, nhà phát triển sẽ khó lòng hoặc không thể phát hiện hành vi truy cập trái phép vào Dữ liệu trên nền tảng.
Nếu xử lý Dữ liệu trên nền tảng tại phía máy chủ thì trong môi trường đó, bạn nên:
Bằng chứng bạn tải lên khi có yêu cầu cần cho thấy:
Tổ chức phải biết phương pháp xử lý thích hợp đối với Dữ liệu trên nền tảng rồi giám sát quy trình xử lý thực tế để đảm bảo rằng Dữ liệu trên nền tảng chỉ được dùng cho các mục đích đã đề ra
Nếu xử lý Dữ liệu trên nền tảng tại phía máy chủ thì trong môi trường máy chủ đó, bạn nên:
Nếu bạn được yêu cầu gửi bằng chứng về biện pháp bảo vệ này, hãy làm theo hướng dẫn trong mục Chuẩn bị bằng chứng để chuẩn bị cả bằng chứng về chính sách/quy trình và bằng chứng triển khai.
Vui lòng cung cấp bằng chứng cho thấy:
Bạn không thể chỉ dựa vào con người để đánh giá và xác định hành vi không mong muốn trong hệ thống truy cập Internet hiện đại. Thay vào đó, bạn có sẵn các công cụ hỗ trợ xử lý tệp nhật ký và các tín hiệu khác để đưa ra những cảnh báo cần được con người điều tra thêm.
Nếu xử lý Dữ liệu trên nền tảng tại phía máy chủ thì trong môi trường máy chủ đó, bạn nên:
Thông thường, nhà phát triển sẽ sử dụng công cụ Quản lý sự kiện và thông tin bảo mật (SIEM) cho mục đích này, chẳng hạn như:
Bạn cần cung cấp bằng chứng cho thấy các nguồn tín hiệu liên quan được gửi đến công cụ phù hợp, các yếu tố kích hoạt hoặc cảnh báo được đặt cấu hình, các cảnh báo được gửi đến nhân viên chịu trách nhiệm theo dõi, cũng như có quy trình điều chỉnh cảnh báo định kỳ (ví dụ: qua chu kỳ cập nhật và đánh giá hàng tháng).
Bên thứ ba – trong thuật ngữ về quản lý rủi ro, bên thứ ba là nhà phát triển trên nền tảng của Meta (bên thứ nhất chính là Meta; bên thứ hai là người dùng sản phẩm của Meta)
Bên thứ tư – trong thuật ngữ về quản lý rủi ro, bên thứ tư là những công ty mà nhà phát triển tin dùng cho việc cung cấp các dịch vụ hỗ trợ hoạt động kinh doanh (bên thứ nhất là Meta, bên thứ hai là người dùng của Meta và bên thứ ba là nhà phát triển trên nền tảng của Meta) Mã truy cập – thông tin đăng nhập (chẳng hạn như mật khẩu) cần có để phần mềm gọi API nhằm thực hiện hành động nào đó (ví dụ: đọc dữ liệu từ trang cá nhân của người dùng).
Amazon Web Services (AWS) – bộ dịch vụ điện toán đám mây của Amazon
ID người dùng trong ứng dụng (ASID) – mã nhận dạng duy nhất do Meta tạo khi người nào đó chọn dùng một ứng dụng. ASID góp phần cải thiện quyền riêng tư cho người dùng bằng cách khiến các tập dữ liệu khó xác định mối tương quan về người dùng giữa các ứng dụng hơn. Lý do là khi dùng 2 ứng dụng, một người sẽ có các ASID khác nhau trong từng ứng dụng đó.
Khóa bí mật của ứng dụng – khóa bí mật chung do Meta cung cấp cho nhà phát triển thông qua bảng điều khiển ứng dụng. Khi sở hữu khóa bí mật của ứng dụng, phần mềm có quyền thực hiện một số hành động thông qua API Đồ thị. Do đó, nhà phát triển cần lưu ý rằng những bên chưa được cấp phép sẽ không thể truy cập vào khóa bí mật của ứng dụng.
Xâm phạm ứng dụng – nếu kẻ xấu có thể truy cập trái phép vào mạng nội bộ của tổ chức do cấu hình sai hoặc lỗ hổng bảo mật trong ứng dụng (ví dụ: lỗ hổng bảo mật phần mềm trong ứng dụng web) thì đó gọi là hành vi xâm phạm ứng dụng. Một biện pháp để ngăn ngừa hành vi xâm phạm ứng dụng là kiểm thử thâm nhập ứng dụng. Hãy xem thêm thuật ngữ xâm phạm mạng.
Vùng chứa ứng dụng – vùng chứa đóng gói mã phần mềm và những yếu tố phụ thuộc có liên quan để ứng dụng chạy trên các loại máy chủ khác nhau (ví dụ: những máy chủ chạy các hệ điều hành khác nhau như Linux hoặc Windows Server). Nhà phát triển sẽ tạo một hình ảnh vùng chứa đóng gói ứng dụng của họ. Công cụ vùng chứa ứng dụng hoặc thành phần vùng chứa ứng dụng sẽ lưu trữ (chạy) hình ảnh vùng chứa.
Mã hóa ứng dụng – một phương thức bảo vệ dữ liệu, theo đó phần mềm ứng dụng tự thực hiện các hoạt động mã hóa và giải mã. Ngược lại, Transport Layer Security (TLS) sẽ mã hóa liền mạch dữ liệu đang truyền khi ứng dụng thiết lập một kết nối an toàn với máy chủ từ xa (ví dụ: dùng HTTPS) và nhà cung cấp dịch vụ đám mây đưa ra dịch vụ để mã hóa minh bạch dữ liệu ở trạng thái nghỉ.
Giao diện lập trình ứng dụng (API) – đóng vai trò kết nối 2 máy tính qua mạng, ví dụ như khi một ứng dụng di động tìm nạp thông tin thời tiết hôm nay ở nơi nào đó từ hệ thống dự báo thời tiết tập trung
Bằng chứng khóa bí mật của ứng dụng – một lớp bảo mật bổ sung cho các lệnh gọi API đến Meta, theo đó nhà phát triển sẽ tạo tham số (bằng chứng khóa bí mật của ứng dụng) chứng minh rằng họ sở hữu khóa bí mật của ứng dụng. Bằng chứng khóa bí mật của ứng dụng là sản phẩm của hàm băm (còn gọi là hàm một chiều) dựa trên khóa bí mật của ứng dụng và mã truy cập. Việc đặt cấu hình để ứng dụng yêu cầu bằng chứng khóa bí mật của ứng dụng trong quá trình gọi API Đồ thị sẽ làm giảm mối nguy hại có thể xảy ra do mã truy cập của người dùng bị xâm phạm, vì không ai có thể sử dụng những mã truy cập đó nếu không xuất trình thêm thông số bằng chứng khóa bí mật của ứng dụng.
Giải pháp phụ trợ dạng dịch vụ (BaaS) – một mô hình điện toán đám mây cung cấp bộ tính năng phía máy chủ cho nhà phát triển ứng dụng để họ có thể tập trung vào việc xây dựng giao diện trải nghiệm (tức là phần ứng dụng mà người dùng tương tác). Các giải pháp BaaS không chỉ tương tự PaaS mà còn có những dịch vụ như xác thực người dùng và thông báo đẩy trên thiết bị di động. Sau đây là ví dụ về một số sản phẩm BaaS phổ biến: AWS Amplify, Azure Mobile Apps, Firebase và MongoDB Switch.
Văn bản mật mã – đồng nghĩa với dữ liệu mã hóa và là dữ liệu được chuyển đổi thông qua thuật toán mã hóa thành dạng không đọc được. Ngược lại với văn bản mật mã là văn bản thuần túy.
Phía máy khách – mọi người thường tương tác với các dịch vụ có thể truy cập vào Internet bằng cách mở trang web trong trình duyệt hoặc chạy ứng dụng di động trên điện thoại hay máy tính bảng. Trình duyệt hoặc ứng dụng di động được gọi là máy khách cục bộ hoặc phía máy khách. Máy khách thực hiện yêu cầu của máy tính từ xa (máy chủ) thông qua Internet.
Điện toán đám mây – một mô hình quản lý máy chủ, mạng và bộ nhớ để tổ chức không cần phải lo lắng về môi trường vật lý (tức là trung tâm dữ liệu có đầy đủ giá đỡ máy chủ và cáp mạng). Thay vào đó, tổ chức có thể cung cấp những tài sản này theo yêu cầu và trả tiền cho dịch vụ họ dùng.
Cấu hình đám mây – tập hợp các lựa chọn điện toán đám mây mà tổ chức thiết lập liên quan đến việc họ dùng một nhà cung cấp dịch vụ đám mây để chạy phần mềm nào đó. Ví dụ về cấu hình đám mây bao gồm loại kết nối mạng được phép hoặc bị chặn, nơi ghi và thời gian lưu giữ tệp nhật ký, nhóm người dùng có quyền thực hiện thay đổi đối với cấu hình đám mây.
Biện pháp kiểm soát thay thế – biện pháp kiểm soát bảo mật nằm ngoài bộ yêu cầu cơ bản nhưng nhằm cung cấp khả năng bảo vệ tương đương trước rủi ro.
Cơ sở dữ liệu – phần mềm dùng để lưu trữ, đọc, cập nhật và xóa loại dữ liệu tùy ý. Cơ sở dữ liệu có thể chạy trên máy khách và máy chủ. Những tổ chức tích hợp với nền tảng của Meta thường sẽ lưu trữ dữ liệu họ tìm nạp từ API Đồ thị trong cơ sở dữ liệu chạy phía máy chủ.
Giải mã – quy trình chuyển đổi dữ liệu mã hóa về định dạng gốc. Nói cách khác, quy trình giải mã sẽ biến văn bản mật mã thành văn bản thuần túy.
Mã hóa – quy trình chuyển đổi dữ liệu thành định dạng không dùng được đối với bất kỳ ai không thể giải mã. Nói cách khác, quy trình mã hóa sẽ biến văn bản thuần túy thành văn bản mật mã.
Mã hóa ở trạng thái nghỉ – phương thức bảo vệ dữ liệu bằng tính năng mã hóa khi dữ liệu đó được ghi vào bộ nhớ liên tục (ví dụ: ổ đĩa). Phương thức này sẽ bổ sung một lớp bảo vệ nhằm ngăn ngừa hành vi truy cập trái phép vì người có thể đọc tệp thô trên thiết bị lưu trữ sẽ nhìn thấy nhưng không thể giải mã văn bản mật mã, trừ khi họ cũng truy cập được vào khóa giải mã.
Mã hóa khi truyền – phương thức bảo vệ dữ liệu bằng tính năng mã hóa khi truyền qua mạng. Phương thức này sẽ ngăn ngừa hành vi nghe trộm theo đường dẫn mạng vì người có thể đọc gói tin qua mạng sẽ nhìn thấy nhưng không thể giải mã văn bản mật mã, trừ khi họ cũng truy cập được vào khóa giải mã.
Phần mềm hết hạn sử dụng (EOL) – khi tổ chức chọn ngừng hỗ trợ (ví dụ: tạo bản vá để giải quyết lỗ hổng bảo mật) cho một sản phẩm phần mềm thì phần mềm đó được xem là EOL. Vì không còn được duy trì nên bất kỳ phần mềm EOL nào như vậy sẽ gặp rủi ro cao khi chạy.
Google Cloud Platform (GCP) – bộ dịch vụ điện toán đám mây của Google. API Đồ thị – phương thức chính để các ứng dụng đọc và ghi vào đồ thị mạng xã hội của Meta. Mọi Meta SDK và sản phẩm của Meta đều tương tác với API Đồ thị theo cách nào đó.
Hàm băm – hàm mã hóa lấy dữ liệu bất kỳ làm thông tin đầu vào và xuất thành một mã ngắn không thể hoàn nguyên về định dạng gốc. Trong lĩnh vực mã hóa, hàm băm dùng để bảo vệ dữ liệu như mật khẩu – thay vì lưu trữ mật khẩu của người dùng dưới dạng văn bản thuần túy có thể bị đánh cắp, trước tiên mật khẩu sẽ trải qua quy trình chuyển đổi bằng hàm băm rồi mới được lưu trữ. Sau đó, để xác nhận rằng người dùng đã nhập đúng mật khẩu, hệ thống sẽ sử dụng chính hàm băm này để chuyển đổi thông tin đầu vào và so sánh mã băm thu được với giá trị lưu trữ. Đây còn gọi là hàm một chiều vì mã băm đầu ra không thể hoàn nguyên về định dạng gốc.
Môi trường lưu trữ – tập hợp các máy chủ từ xa, mạng và thiết bị lưu trữ mà tổ chức đang chạy trong trung tâm dữ liệu của riêng họ hoặc trung tâm dữ liệu cho thuê cùng với các khách hàng khác. Đây là cơ chế sắp xếp ít gặp trong kỷ nguyên hiện đại kể từ khi dịch vụ điện toán đám mây ngày càng phổ biến.
Dịch vụ cung cấp danh tính (IdP) – một dịch vụ đám mây dùng để quản lý tập trung danh tính kỹ thuật số và xác thực người dùng. Các tổ chức dùng IdP thường đặt cấu hình ứng dụng đám mây dựa trên IdP để xác thực người dùng. Sau đó, tổ chức có thể quản lý người dùng bằng cách tạo, cấp quyền truy cập vào những ứng dụng nhất định và vô hiệu hóa tài khoản người dùng ở cùng một nơi là IdP thay vì phải làm như vậy nhiều lần trong từng ứng dụng đám mây.
Quản lý danh tính và quyền truy cập (IAM) – một nhóm các công cụ và quy trình dùng để quản lý tài khoản cũng như cấp quyền truy cập vào hệ thống.
Cơ sở hạ tầng dạng dịch vụ (IaaS) – một phương pháp điện toán đám mây hỗ trợ khách hàng đặt cấu hình các dịch vụ điện toán, lưu trữ và kết nối mạng mà không phải chịu trách nhiệm về chính những tài sản vật lý (ví dụ: quản lý trung tâm dữ liệu có đầy đủ máy chủ, thiết bị mạng và mảng lưu trữ). So với Paas, IaaS mang lại cho tổ chức thêm nhiều quyền kiểm soát về cấu hình của các tài sản đám mây mà họ sở hữu. Đổi lại, việc quản lý những tài sản đó sẽ phức tạp hơn. Sau đây là ví dụ về một số sản phẩm IaaS phổ biến: AWS EC2, Microsoft Azure IaaS và Google Compute Engine.
Thư viện – các thành tố nền tảng có sẵn cho phần mềm, thường đến từ công ty hoặc nhà phát triển bên ngoài, dùng để xử lý những tác vụ nhất định trong ứng dụng hay hệ thống của nhà phát triển khác. Thư viện tinh giản việc phát triển ứng dụng vì nhà phát triển không phải tốn công sáng tạo lại khi đã có thư viện cung cấp chức năng cụ thể. Tuy nhiên, thư viện có thể chứa lỗ hổng bảo mật hoặc bao gồm các thư viện khác gặp phải vấn đề như vậy. Do đó, nhà phát triển cần nắm rõ mình đang dùng thư viện nào cho ứng dụng và cập nhật thư viện này theo thời gian.
Ứng dụng di động – ứng dụng mà người nào đó cài đặt trên điện thoại hoặc máy tính bảng sau khi tải về từ cửa hàng ứng dụng di động (ví dụ: App Store dành cho iOS hoặc Cửa hàng Google Play). Ứng dụng di động thường liên lạc qua Internet với REST API của tổ chức và cũng có thể sẽ giao tiếp với các bên khác (ví dụ: với API Đồ thị qua Facebook SDK dành cho Android).
Xác thực đa yếu tố (MFA) – một phương pháp xác thực yêu cầu nhiều yếu tố để cấp quyền truy cập vào ứng dụng hoặc hệ thống. Ngược lại với phương pháp xác thực 1 yếu tố chỉ dựa vào mật khẩu để xác thực người dùng, MFA thường sẽ yêu cầu mật khẩu kèm theo một hoặc nhiều yếu tố sau đây: mã được gửi qua email hoặc SMS, mã từ ứng dụng xác thực, quy trình quét sinh trắc học hoặc khóa bảo mật. MFA khiến người chưa được cấp phép khó xâm nhập tài khoản hơn (ví dụ: dùng địa chỉ email mà họ biết được và mật khẩu phổ biến để liên tục cố đăng nhập vào tài khoản cho đến khi thành công) nhằm ngăn ngừa hành vi chiếm đoạt tài khoản.
Phần mềm gốc – những ứng dụng được tải xuống và cài đặt trên laptop hoặc thiết bị di động (ví dụ: ứng dụng Facebook dành cho iOS). Ngược lại, ứng dụng chạy trong trình duyệt được gọi là ứng dụng web (ví dụ: mở Facebook bằng trình duyệt Chrome).
Xâm phạm mạng – nếu kẻ xấu có thể truy cập trái phép vào mạng nội bộ của tổ chức do cấu hình sai hoặc lỗ hổng bảo mật trong mạng thì đó gọi là hành vi xâm phạm mạng. Một biện pháp giúp ngăn ngừa hành vi xâm phạm mạng là chạy quy trình quét mạng để xác định những cấu hình sai và lỗ hổng bảo mật trong mạng kết nối Internet. Hãy xem thêm thuật ngữ "xâm phạm ứng dụng".
Quét mạng – quy trình quản lý rủi ro dùng phần mềm để: (1) xác định những máy chủ đang hoạt động trên mạng sẽ phản hồi với nội dung liên lạc từ xa rồi (2) xem có bất kỳ máy chủ nào trong số đó đang chạy phiên bản phần mềm cũ được cho là dễ bị tấn công bởi một hoặc nhiều phương pháp lợi dụng lỗ hổng bảo mật hay không. Ví dụ: tổ chức có thể dùng tính năng quét mạng định kỳ để đảm bảo rằng không có cổng nào vô tình mở trong phạm vi mạng của họ.
Công cụ quản lý gói Node (NPM) – một công cụ mà nhà phát triển JavaScript dùng để đẩy nhanh quy trình làm việc bằng cách đưa những gói được tạo sẵn vào ứng dụng hoặc hệ thống của họ. NPM cung cấp tính năng kiểm tra nhóm các gói mà ứng dụng đang dùng và xác định những gói có lỗ hổng bảo mật đã biết.
Vùng lưu trữ đối tượng – một loại bộ nhớ liên tục trên đám mây, có chức năng hỗ trợ tổ chức dễ dàng lưu trữ tệp vào bộ nhớ liên tục (bao gồm cả tệp có dung lượng rất lớn) mà không phải lo lắng về việc mở rộng tài sản vật lý (ví dụ: mảng lưu trữ) hoặc cách sao lưu để tránh bị mất những tệp này trong trường hợp xảy ra thiên tai như hỏa hoạn hay lũ lụt.
Hệ điều hành – phần mềm chạy trên máy tính/thiết bị di động, có chức năng tạo điều kiện để các ứng dụng chạy cũng như dùng bộ xử lý, bộ nhớ, dung lượng lưu trữ và nguồn lực mạng của máy tính/thiết bị di động đó. Ví dụ: Windows của Microsoft, macOS hoặc iOS của Apple, Linux.
Thành viên tổ chức – người có vai trò và trách nhiệm trong tổ chức, ví dụ: nhân viên, nhà thầu, nhân viên không chính thức, thực tập sinh hoặc tình nguyện viên.
Thiết bị trong tổ chức – máy tính hoặc thiết bị di động mà thành viên tổ chức dùng để làm việc cho tổ chức.
Điều khoản nền tảng 6.a.i – điểm (i) khoản (a) điều (6) trong Điều khoản nền tảng của Meta, mô tả các nghĩa vụ của nhà phát triển trên nền tảng liên quan đến bảo mật dữ liệu.
Gói – đồng nghĩa với thư viện
Bản vá – bản cập nhật của phần mềm, có nhiệm vụ giải quyết lỗ hổng bảo mật, khắc phục lỗi hoặc thêm chức năng mới. Mọi loại phần mềm đều có bản vá, bao gồm cả Hệ điều hành, vùng chứa, thư viện và SDK.
Kiểm thử thâm nhập – một cuộc tấn công mô phỏng nhắm đến ứng dụng hoặc hệ thống, qua đó người kiểm thử cố gắng tìm lỗ hổng bảo mật trong mã hoặc cấu hình có thể bị lợi dụng bởi người chưa được cấp phép. Người kiểm thử thâm nhập sẽ dùng các công cụ tương tự như tội phạm công nghệ cao để tiến hành do thám, quét tìm điểm yếu tiềm ẩn và kiểm thử những lỗ hổng bảo mật có thể tạo điều kiện cho hành vi truy cập trái phép. Cuối quy trình kiểm thử thâm nhập, người kiểm thử sẽ soạn một báo cáo mô tả thông tin phát hiện được cùng với mức độ nghiêm trọng của từng vấn đề. Ngoài ra, tổ chức duy trì phần mềm sẽ chịu trách nhiệm tạo bản khắc phục để giải quyết lỗ hổng bảo mật.
Văn bản thuần túy – đồng nghĩa với dữ liệu không mã hóa và là dữ liệu chưa được bảo vệ bằng tính năng mã hóa. Nền tảng dạng dịch vụ (PaaS) – một phương pháp điện toán đám mây hỗ trợ khách hàng triển khai ứng dụng vào nền tảng do nhà cung cấp dịch vụ đám mây quản lý. Khách hàng dễ quản lý PaaS hơn so với IaaS vì trung tâm lưu trữ đám mây không chỉ quản lý tài sản vật lý (tức là máy chủ, thiết bị lưu trữ và thiết bị mạng) mà còn cả hệ điều hành cũng như vùng chứa ứng dụng nơi ứng dụng của khách hàng chạy. Sau đây là ví dụ về một số sản phẩm PaaS phổ biến: AWS Elastic Beanstalk, Google App Engine, Force.com
Cổng – khi máy khách kết nối với máy chủ qua Internet, địa chỉ đích đến có 2 phần: (1) địa chỉ Giao thức Internet (IP) của máy chủ và (2) mã số cổng trên máy chủ đó mà một ứng dụng cụ thể sẽ phản hồi. Các giao thức thường gặp sẽ dùng những cổng riêng (ví dụ: HTTPS sử dụng 443) nhưng nếu muốn, nhà phát triển có thể dùng cổng tùy chỉnh cho việc liên lạc qua mạng.
REST API – một loại giao diện được áp dụng rộng rãi để xây dựng các dịch vụ có thể truy cập vào web, qua đó máy khách và máy chủ liên lạc với nhau bằng giao thức HTTP. Nhà phát triển trên nền tảng của Meta có thể lưu trữ REST API ở miền phụ (chẳng hạn như api.example.com) nơi ứng dụng di động của họ gửi và nhận Dữ liệu trên nền tảng.
Secure Shell (SSH) – một giao thức liên lạc hỗ trợ quản trị viên đăng nhập từ xa vào các máy chủ và chạy chương trình trên những máy chủ đó. Khác với các giao thức trước đây (chẳng hạn như Telnet), SSH được xem là an toàn do có biện pháp bảo vệ nội dung liên lạc giữa máy khách và máy chủ khỏi hành vi nghe trộm. SSH còn được gọi là Secure Socket Shell.
Secure Sockets Layer (SSL) – một phiên bản mã hóa khi truyền đã lỗi thời và không an toàn. Phiên bản bảo mật hiện đại có tên là Transport Layer Security (TLS).
Máy chủ – một máy tính cung cấp dịch vụ từ xa qua mạng. Trình duyệt và ứng dụng di động kết nối với máy chủ qua Internet.
Điện toán phi máy chủ – một mô hình điện toán đám mây, theo đó trung tâm lưu trữ đám mây quản lý cơ sở hạ tầng vật lý, hệ điều hành máy chủ và vùng chứa. Nhà phát triển chỉ chịu trách nhiệm về mã tùy chỉnh và các thư viện liên quan cùng với cấu hình đám mây.
Phía máy chủ – dữ liệu hoặc phép tính ở phía bên kia của kết nối mạng (tức là trên máy chủ). Ngược lại, dữ liệu hoặc phép tính trên thiết bị cục bộ như laptop hay thiết bị di động được gọi là phía máy khách.
Đăng nhập một lần (SSO) – một cơ chế sắp xếp mà trong đó, các ứng dụng dựa vào thư mục người dùng tập trung (tức là IdP) để xác thực người dùng. Ngoài việc tạo điều kiện để tổ chức quản lý tập trung tài khoản người dùng và quyền truy cập ứng dụng, SSO còn hữu ích với người dùng khi chỉ yêu cầu họ có một tập thông tin đăng nhập thay vì phải duy trì nhiều thông tin đăng nhập (ví dụ: tên người dùng và mật khẩu) cho từng ứng dụng khác nhau.
Bộ công cụ phát triển phần mềm (SDK) – một thành tố nền tảng về mã mà nhà phát triển có thể dùng để tinh giản quy trình làm việc cho nhu cầu nhất định. Ví dụ: Meta tạo cũng như duy trì các SDK giúp tinh giản quy trình làm việc của nhà phát triển iOS và Android với API Đồ thị. Tương tự như khi sử dụng thư viện, những nhà phát triển dùng SDK trong ứng dụng của họ cần phải cập nhật SDK theo thời gian.
Phần mềm dạng dịch vụ (SaaS) – hỗ trợ khách hàng dùng các ứng dụng dựa trên đám mây thông qua Internet. Khác với PaaS hoặc IaaS, khách hàng của ứng dụng SaaS không triển khai mã tùy chỉnh cũng như không có trách nhiệm đặt cấu hình, nâng cấp hay vá ứng dụng SaaS vì tất cả những việc này đều là trách nhiệm của nhà cung cấp phần mềm SaaS. Sau đây là ví dụ về một số sản phẩm SaaS phổ biến: Dopbox, MailChip, Salesforce, Slack.
Phân tích tĩnh – hãy xem thuật ngữ "Thử nghiệm tĩnh về khả năng bảo mật ứng dụng"
Thử nghiệm tĩnh về khả năng bảo mật ứng dụng (SAST) – một phương pháp tìm lỗ hổng bảo mật trong phần mềm bằng cách chạy công cụ chuyên biệt nhắm đến mã nguồn. Công cụ SAST sẽ xác định lỗ hổng bảo mật tiềm ẩn, chẳng hạn như những lỗ hổng bảo mật được nêu trong dự án OWASP Top 10. Sau đó, nhà phát triển sẽ chịu trách nhiệm xem xét thông tin phát hiện được, phân biệt lỗi thật và lỗi giả rồi khắc phục lỗ hổng bảo mật trong phần mềm đó. SAST có thể hữu ích do hỗ trợ nhà phát triển tìm thấy lỗ hổng bảo mật trước khi hoạt động sản xuất bị ảnh hưởng bởi những vấn đề này. Tuy nhiên, khác với kiểm thử thâm nhập, công cụ SAST sẽ không phát hiện ra lỗ hổng bảo mật liên quan đến cấu hình sản xuất của ứng dụng.
Mã hóa minh bạch dữ liệu – một phương thức mã hóa ở trạng thái nghỉ, thường áp dụng cho bộ nhớ cơ sở dữ liệu (tức là chính nội dung cơ sở dữ liệu và tệp nhật ký trong đó). Theo cơ chế sắp xếp này, phần mềm cơ sở dữ liệu sẽ quản lý khóa mã hóa và xử lý minh bạch hoạt động mã hóa (khi ghi) và hoạt động giải mã (khi đọc).
Transport Layer Security (TLS) – một giao thức mã hóa khi truyền dùng tính năng mã hóa để bảo vệ dữ liệu được truyền qua mạng khỏi những kẻ nghe trộm theo đường dẫn mạng. TLS là phiên bản bảo mật hiện đại của công nghệ lỗi thời trước đây mang tên SSL.
Xác thực 2 yếu tố (2FAC) – đồng nghĩa với Xác thực đa yếu tố. Kho lưu trữ – một hệ thống bí mật chuyên quản lý dữ liệu nhạy cảm, chẳng hạn như khóa mã hóa, mã truy cập và thông tin đăng nhập khác. Kho lưu trữ hỗ trợ kiểm soát chặt chẽ những ai truy cập được vào thông tin bí mật có trong đó, cũng như các dịch vụ bổ sung như lưu giữ nhật ký kiểm tra.
Máy ảo (VM) – rất giống với Vùng chứa ứng dụng, máy ảo sẽ chạy trong một trung tâm lưu trữ có tên là phần mềm giám sát máy ảo, còn Vùng chứa ứng dụng sẽ chạy trong công cụ vùng chứa ứng dụng. Điểm khác biệt cốt yếu là VM có hình ảnh Hệ điều hành, còn Vùng chứa ứng dụng thì không. Cả VM và Vùng chứa ứng dụng đều có (các) ứng dụng cũng như những yếu tố phụ thuộc (chẳng hạn như thư viện).
Đám mây riêng ảo (VPC) – thuật ngữ của AWS dùng để chỉ một tập hợp các nguồn lực đám mây tương tự mạng truyền thống tại trung tâm dữ liệu trong kỷ nguyên trước khi có đám mây.
Lỗ hổng bảo mật – một khiếm khuyết trong hệ thống hoặc ứng dụng có thể bị lợi dụng, ví dụ như khi người không có quyền đọc vẫn đọc được dữ liệu
Chương trình Công bố lỗ hổng bảo mật (VDP) – một hình thức mà qua đó, tổ chức có thể thu thập báo cáo về lỗ hổng bảo mật từ các nhà nghiên cứu (đôi khi được gọi là tin tặc mũ trắng) nhằm phát hiện và khắc phục lỗ hổng bảo mật trước khi kẻ xấu lợi dụng. Để đạt hiệu quả, VDP cần tập hợp các nhà nghiên cứu đang tích cực tìm lỗ hổng bảo mật, các nhà phân tích trong tổ chức chuyên xem xét và phân loại thông tin công bố sắp tới, cùng với các kỹ sư am hiểu về an ninh mạng có thể tạo và triển khai những bản khắc phục lỗ hổng bảo mật.
Quét lỗ hổng bảo mật – một biện pháp dùng phần mềm để tìm lỗ hổng bảo mật trong máy chủ, mạng và ứng dụng. So với kiểm thử thâm nhập, biện pháp quét lỗ hổng bảo mật tốn ít chi phí triển khai hơn nên có thể triển khai nhiều lần (ví dụ: hàng tháng hoặc hàng quý). Tuy nhiên, thông thường, quy trình kiểm thử thâm nhập sẽ tìm thấy lỗ hổng bảo mật bị bỏ sót khi quét lỗ hổng bảo mật vì những người kiểm thử thâm nhập lành nghề có kỹ năng và bản năng phân tích mà các biện pháp tự động cứng nhắc khó bắt chước được. Hãy xem thêm thuật ngữ "quét mạng".
Ứng dụng web – những chương trình chạy trong trình duyệt và chứa các nguồn lực như tài liệu HTML, mã JavaScript, video và tệp phương tiện khác cũng như CSS định kiểu. Ngược lại với việc cài đặt ứng dụng di động trên điện thoại di động sau khi tải về từ cửa hàng ứng dụng, mọi người chỉ cần tìm nạp ứng dụng web trên máy chủ từ xa bằng trình duyệt của họ (ví dụ: www.facebook.com) mà không cần thực hiện bước cài đặt.