1. Xác định dữ liệu và quyền truy cập
NIST SSDF khuyến nghị tích hợp thực hành phát triển an toàn vào vòng đời phần mềm. Các thực hành này có thể được điều chỉnh theo nhu cầu kinh doanh, mức chấp nhận rủi ro và nguồn lực của tổ chức, thay vì áp dụng như một danh sách đánh dấu cố định. [1]
Gợi ý: lập bảng ghi rõ từng loại dữ liệu được thu thập, nơi lưu, thời gian giữ và những vai trò cần sử dụng. Đánh dấu dữ liệu có thể gây thiệt hại nếu bị xem, sửa hoặc xóa trái phép. Với trường dữ liệu không phục vụ chức năng cụ thể, cân nhắc không thu thập để giảm khối lượng phải bảo vệ.
2. Bảo vệ tài khoản và kiểm tra quyền trên máy chủ
OWASP nêu rủi ro API cho phép truy cập đối tượng qua mã định danh mà không kiểm tra quyền tương ứng. Xác thực sai, thiếu kiểm soát quyền đối với thuộc tính dữ liệu và chức năng quản trị cũng là những nhóm rủi ro trong danh mục API Security Top 10 năm 2023. [2]
Gợi ý: cấp tài khoản riêng cho người quản trị, rà soát quyền khi nhân sự đổi vai trò và dùng xác thực bổ sung nếu hệ thống hỗ trợ. Mỗi yêu cầu đọc, sửa hoặc xóa cần được máy chủ đối chiếu với người dùng, vai trò và bản ghi đích. Ẩn một nút trên giao diện không thể thay cho kiểm tra quyền tại API.
3. Bảo vệ dữ liệu khi truyền và xử lý đầu vào
Gợi ý: cấu hình HTTPS cho các trang và API, đồng thời rà soát thuộc tính bảo vệ cookie phiên. Kiểm tra dữ liệu tại máy chủ theo kiểu, miền giá trị, kích thước và ngữ cảnh sử dụng; không mặc định dữ liệu do trình duyệt gửi lên là hợp lệ. Với tệp tải lên, cần xác định loại tệp được nhận, nơi lưu và quyền truy cập sau khi lưu.
Gợi ý: dùng truy vấn tham số hóa khi làm việc với cơ sở dữ liệu và mã hóa nội dung hiển thị theo đúng ngữ cảnh đầu ra. Ví dụ: một trường tên khách hàng có thể xuất hiện trên trang web, trong email hoặc tệp xuất dữ liệu; mỗi nơi cần cách xử lý phù hợp, không dùng chung một thao tác thay ký tự cho mọi trường hợp.
4. Kiểm soát cấu hình, phụ thuộc và mức sử dụng
Theo OWASP, cấu hình sai, thiếu danh mục phiên bản API và tiêu thụ tài nguyên không giới hạn đều có thể tạo rủi ro. Yêu cầu API có thể dùng băng thông, bộ nhớ, dung lượng lưu trữ hoặc dịch vụ tính phí theo lượt; một luồng nghiệp vụ cũng có thể bị khai thác bằng cách tự động hóa quá mức. [2]
Gợi ý: không đưa mật khẩu hay khóa API vào mã nguồn và nhật ký; kiểm kê điểm cuối, dịch vụ tích hợp cùng thư viện đang sử dụng. Theo dõi thông báo lỗ hổng, kiểm thử trước khi cập nhật và có kế hoạch thay thành phần không còn được duy trì. Đặt hạn mức phù hợp cho đăng nhập, gửi biểu mẫu và thao tác tốn tài nguyên, rồi theo dõi cả lỗi lẫn chi phí bất thường.
5. Chuẩn bị theo dõi và khôi phục
NIST xem việc so sánh kết quả hiện tại với các thực hành SSDF là một cách nhận diện khoảng trống và lập ưu tiên cải tiến. Cách tiếp cận này hữu ích sau khi phát hành, khi cách sử dụng sản phẩm, hệ thống tích hợp và những rủi ro cần xử lý có thể thay đổi. [1]
Gợi ý: ghi sự kiện đăng nhập, thay đổi quyền và thao tác quản trị đủ để điều tra, nhưng tránh lưu bí mật hoặc dữ liệu cá nhân không cần thiết. Chỉ định người nhận cảnh báo và người quyết định cô lập chức năng khi có sự cố. Xác định dữ liệu cần sao lưu, nơi lưu tách biệt và lịch thử khôi phục; bản sao lưu chưa được thử không nên mặc nhiên coi là phương án phục hồi.

