Máy tính không máy phục vụ đã thay đổi như thế nào các đội phát triển xây dựng và triển khai ứng dụng, trừu tượng hóa lớp cơ sở hạ tầng để các kỹ sư có thể tập trung vào logic và tốc độ thị trường. tuy nhiên, mô hình này cũng đã giới thiệu một bề mặt mới, với ADIs hoạt động như là giao diện chính giữa khách hàng và các chức năng đám mây như AWS Lambda, Azure hàm số, hoặc Google Cloud sky jaws. tổ chức các điểm kết thúc này không còn là một yêu cầu cốt lõi cho ứng dụng cấp độ sản xuất. Bài này mở rộng trên các thực hiện tốt nhất để bảo vệ máy phục vụ AWI, bao gồm các mức độ liên lạc, kiểm soát sự kết nhập và bảo mật ngày hôm nay, và hỗ trợ hợp pháp lý để thực hiện các công cụ bảo mật.

Hiểu được mô hình bảo mật không máy phục vụ

Trong cơ sở hạ tầng truyền thống, bảo mật dựa vào vành đai mạng: tường lửa, máy chủ và máy chủ cứng. Không có máy chủ nào nghịch lại mô hình đó. Không có máy chủ bền bỉ để làm cứng lại; thay vào đó, mỗi chức năng trong việc cầu khẩn là giả lập, và chức năng của nhà cung cấp mây quản lý môi trường chạy thời gian. Mô hình trách nhiệm chia sẻ có nghĩa là bạn bảo vệ mã, dữ liệu, và tính nhân dạng của bạn. Trong khi nhà cung cấp bảo vệ các máy chủ. Các nhà cung cấp phải trở thành vành đai mới. Mỗi yêu cầu phải được xem như có khả năng độc hại, và chức năng phải xác thực riêng. Cần phải thẩm tra bối cảnh này để biết cách tiếp cận cá nhân sâu sắc hơn, thông tin và xác thực thông tin cấu hình cấu trúc, và trao đổi độ toàn diện.

Mối đe dọa đến các hệ thống ATI không có máy phục vụ

Trước khi lặn vào phòng thủ, nhận ra các véc tơ tấn công phổ biến nhất nhắm vào các điểm không có máy chủ là rất quan trọng:

  • [FLT: 0] Các cuộc tấn công – xLLS, NoSp, hoặc LDAP tiêm thông qua các đầu vào không có động được chuyển qua các chức năng.
  • Xác thực ) – yếu hoặc thiếu hiệu lực, quản lý chìa khóa kém, hoặc các vật chứng truy cập bị hạn chế không đúng.
  • phơi nắng dữ liệu ) – ADIs trở lại đầy đủ các vật thể khi chỉ có dữ liệu bộ phận, rò rỉ các lĩnh vực nhạy cảm.
  • Dịch vụ [DoS] ) – Burst tấn công mà chức năng xả ra các giới hạn hoặc kích hoạt giá rét bắt đầu.
  • Sự phân phối ) – vai trò quá dễ dãi của MIM, xô công cộng, hoặc việc ghi nhật ký vô hiệu ) — phơi bày cơ sở hạ tầng của bạn một cách quá mức.

Mỗi mối đe dọa này có thể giảm thiểu với thiết kế có chủ đích và quá mạnh mẽ kết hợp với đường ống của các bạn.

Những thực hành tốt nhất để bảo vệ điểm cuối

1. Xác thực và xác thực mạnh mẽ

Mỗi yêu cầu chức năng không máy phục vụ nên được xác thực và ủy quyền. Hãy dùng giao thức công nghiệp như ) với ) ) mở D để đảm bảo rằng chúng đã hết hạn hoặc bị thay đổi dịch vụ. Để sử dụng các biến số bảo mật trong môi trường bên trong, hoặc bên trong có dấu hiệu bảo mật.

Đi xa hơn khả năng xác thực cơ bản với ] [ABA: 0] [điều khiển truy cập dựa trên nền tảng nền tảng (RBAC] [FBT: 1] [FLT: 1] hoặc thậm chí ]] kiểm tra lại vai trò và tài liệu có thể truy cập [FLT:] trước khi trở về. Dịch vụ như AWGni, AWT, Ath, và Aasemity đã quản lý nhận dạng các lớp không có khuôn khổ máy phục vụ.

2. Bắt buộc liên lạc an toàn

Mọi giao thông ARI phải được mã hóa trong khi đi qua. Hãy dùng [FLTPS [TLS 1] [FLT: 1] độc quyền. Cấu hình cổng ADI hoặc bộ cân bằng nạp để từ chối yêu cầu HTTP. Để thêm bảo mật, thực hiện [FLT:] bộ điều khiển trên ứng dụng ứng dụng khách và bảo đảm các chức năng không máy phục vụ của bạn chỉ liên lạc với dịch vụ xuôi dòng ngang qua đường dẫn. Tránh khó khăn hay không hợp lệ hoá chứng nhận hợp lệ trong việc phát triển này: nguồn bảo mật mã này là thường.

Nếu hàm của bạn liên lạc với nhau (v. d., qua các xe buýt hoặc hàng đợi sự kiện), cũng mã hóa giao thông đó. Phần lớn các nhà cung cấp mây cho phép mã hóa theo mặc định cho việc gửi tin nhắn liên lạc, nhưng xác nhận rằng cấu hình sản phẩm của bạn khoá nó.

3. Tốc độ bị hạn chế và suy giảm

Giới hạn tốc độ bảo vệ các truy cập ADI từ người dùng bạo lực và tiến trình chạy trốn tình cờ. Ở cấp độ cổng ADI, xác định giới hạn cho các yêu cầu vỡ và trạng thái ổn định (v. d. 100 yêu cầu trên mỗi phút cho mỗi người dùng). Dùng tập tin xô hoặc các thuật toán cửa sổ có hiệu lực để cho phép các điểm ảnh hưởng thỉnh thoảng trên giao thông trong khi vẫn còn quay vòng tấn công.

Giới hạn khác nhau dựa trên trạng thái xác thực. Người dùng vô danh có thể nhận một bộ điều khiển 10 yêu cầu/ phút, trong khi xác thực người dùng nhận một giới hạn cao hơn. Hãy xem xét sử dụng phím [FLT: 0] trong Azu Azu A. A. Thao tác [FL: T] trong giới hạn [FL: FL] [FL: FL] [FL:] của máy phục vụ [FL] hoặc [FT: 2] để ngăn cản các tài nguyên không hoạt động của bạn tấn công.

Hãy nhớ đăng nhập và báo động khi có sự cố ga để bạn có thể phân biệt giữa những nút thắt chính đáng và những nỗ lực hiểm độc.

4 Kiểm tra và ô uế mọi kết nhập

Không bao giờ tin dữ liệu đến từ ứng dụng khách hay dịch vụ hậu phương. Hãy dùng thư viện hợp lệ hóa giản đồ (v. d., Joi, Pydantic, hay JSON Schema) ở đầu mỗi hàm. Từ chối bất kỳ dữ liệu nhập nào không khớp với hình dạng đã mong đợi. Đối với « g » hay « nomx », luôn luôn dùng các tuyên bố hoặc « ORM » để thoát khỏi đầu vào. Rất rõ ràng ký tự màu trắng cho phép ký tự cho phép chuỗi, và không bao giờ đánh giá mã nhập (không [FL: 0] hay [FL: 1].].

Ngoài ra, xác thực nội dung. Nếu điểm kết thúc mong đợi JSON, từ chối yêu cầu với hoặc không được hỗ trợ kiểu MIME. Để tải lên tập tin, kiểu MIME, kích cỡ tập tin và quét tìm phần mềm sai bằng dịch vụ đặc trưng như AWS GuardDuty hay máy quét virus thuộc phần ba.

Các biện pháp bảo mật khác

Tường lửa ứng dụng Web (WAFs)

Triển khai một máy tính WAF trước cổng ARI để tự động lọc các mẫu tấn công như tiêm BXS, chuyển đổi chữ sang chữ chéo (XSS), và các nhà cung cấp máy phát điện tên là WAF (AWS WAF, Azure WAF, Cloud il) kết hợp với các thiết lập tập hợp cân bằng và dịch vụ CDN. Cấu hình tập hợp quy tắc tự chọn cho điểm đặc trưng của ứng dụng như chặn yêu cầu với các yêu cầu JWT hoặc tham số truy vấn khả nghi.

Theo dõi và ghi lưu đầy đủ

Tầm nhìn không thể thương lượng để bảo mật. Bật bản ghi chi tiết cho các yêu cầu và chức năng của máy tính của máy tính xách tay. Hãy dùng dịch vụ như AWS CloudTrail, Azure, hoặc Google Cloud Loggggggm để bắt những người truy cập vào những gì, khi nào và từ đâu. Trung tâm hoá bản ghi trong công cụ SIEM (v. d., Spunk, IRK, scek, Datadog) và đặt cảnh báo:

  • Phản ứng đã lặp lại 40/403 (lực lượng thô tục không thể)
  • Tỷ lệ sai sót và thời gian thực hiện đột ngột
  • Truy cập từ địa lý hoặc phạm vi IP bất thường
  • Hàm trong crags mà vượt qua cổng ADI (địa chỉ URL gián tiếp)

Các bản ghi liên kết các lớp - Cửa hàng, chức năng, và lưu trữ dữ liệu để theo dõi chuỗi tấn công toàn diện.

Quản lý quan hệ phụ thuộc và đắp vá

Chức năng không máy phục vụ phụ thuộc vào thư viện phần thứ ba. Một phụ thuộc dễ bị tổn thương có thể gây hại cho toàn bộ ứng dụng. Hãy dùng [FLT: 0] phân tích phần mềm [SCA] [FLT:]] công cụ [v. d., Snyk, Trivy, Ulabot] trong ống dẫn CL/C để quét các tính năng đã biết. Pin phụ thuộc vào phiên bản riêng lẻ [FL:].

Xem lại đều đặn và cập nhật hàm chạy giờ và ảnh cơ bản (không có máy phục vụ cơ bản). Hãy đặt cập nhật quan hệ phụ thuộc tự động bằng các thử để tránh thay đổi. Đối với các chức năng di truyền với quan hệ phụ thuộc chưa được sửa đổi, cô lập và áp dụng điều khiển trả lời thêm như là một thiết bị chuyển đổi WAF hoặc sự hợp lệ nhập chặt chẽ.

Bảo mật mạng và sự cô lập

Trong khi hàm không có máy chủ chạy trong môi trường đám mây đa chiều, bạn có thể thêm điều khiển mạng. Nơi chức năng xử lý dữ liệu nhạy (v. d., trả tiền thông tin, hồ sơ sức khỏe) vào [FLT: 0] V [FLT: 1], không có truy cập Internet công cộng. Gắn một cổng ADI để yêu cầu cân bằng cá nhân hoặc sử dụng (BLT:) [FLT:] [FT] [FLT:] hoặc [FL:] [FT]S:]

Dùng [FLT: 0] Danh sách trắng để chỉ điểm kết thúc hành chính hay điểm tương thích nội bộ. Cấu hình nhóm bảo mật và hệ thống ACLs để hạn chế giao thông tới cổng và IP cần thiết. Để các chức năng cần thiết truy cập Mạng (v. g., gọi mục thứ ba bên API), giao thông qua cổng NAT trong một mạng phụ có điều khiển.

Bảo mật đầy đủ trong ống dẫn CN/CD

Bảo mật phải được tự động hóa và tích hợp sớm trong phát triển. Giới thiệu một cổng bảo mật [FLT: 0] trong đường ống CN/CD của bạn mà thi hành những điều sau đây trước khi triển khai:

  • Kiểm tra an ninh tĩnh mạch (SAST) trên mã chức năng để phát hiện các mẫu bất an.
  • Quét quan hệ phụ thuộc với thất bại về điểm yếu nghiêm trọng.
  • Cơ cấu cấu cấu trúc như mã- IaC) scan (v. d., ), để cấu hình sai vai trò iM, thiếu mã hóa, hoặc phơi bày công chúng.
  • Các thử nghiệm hợp nhất và kết hợp có hiệu lực xác thực, cho phép và hợp lý hóa dữ liệu nhập.

Dùng môi trường ephemeral (các triển khai hoặc xem thử) để chạy các cuộc thử nghiệm an ninh chống lại các điểm kết thúc không có máy chủ trước khi nhập vào sản xuất. Hãy xem xét sử dụng công cụ thử nghiệm an ninh như [FLT: 0] [FLT: 1] hoặc ) ] wOR[FL:3] để mô phỏng các cuộc tấn công.

Kết luận

Máy tính không có máy phục vụ cung cấp tốc độ và khả năng xác thực đáng kinh ngạc, nhưng nó cần một tư duy an ninh hoạt động. Bằng cách xử lý APIs như là vành đai mới, thực hiện xác thực mạnh mẽ và xác thực quyền thực, thực thi mã hóa, kích hoạt giao thông độc hại, xác thực chặt chẽ đầu vào, và xếp tầng trong hệ thống WAFs, giám sát và điều khiển mạng, bạn có thể bảo vệ điểm cuối cùng của bạn chống lại phần lớn các cuộc tấn công hiện đại. Hãy chấp nhận sự an ninh liên tục trong quá trình phát triển xe đạp không phải là một mục kiểm tra cuối cùng. Người dùng và doanh nghiệp của bạn phụ thuộc vào nó.