Cải thiện bảo mật ứng dụng của bạn trên Azure

Logo Microsoft Azure trên máy tính.
Hình ảnh: PhotoGranary/Adobe Stock

Khi điện toán đám mây lần đầu tiên trở nên phổ biến, nó được coi là một cách để giảm cả ma sát và chi phí. Việc tạo ra một máy ảo trên đám mây sẽ nhanh hơn và rẻ hơn nhiều so với việc đợi máy chủ vật lý được phê duyệt, đặt hàng, giao và thiết lập.

NHÌN THẤY: Sử dụng mẫu chính sách quản lý quyền truy cập này từ TechRepublic Premium để xây dựng các chính sách bảo mật xung quanh quyền truy cập của người dùng.

Giờ đây, điện toán đám mây mạnh mẽ và đủ mạnh để chạy các khối lượng công việc quan trọng — miễn là bạn biết cách thiết kế các ứng dụng để mở rộng quy mô, đặt cấu hình các dịch vụ đám mây để hỗ trợ chúng và xử lý các lỗi không thể tránh khỏi trong bất kỳ hệ thống phức tạp nào.

Chuyển đến:

Tránh các lỗi bảo mật khi xây dựng ứng dụng trên Azure

Nếu bạn đang xây dựng ứng dụng trên Azure, thì Microsoft có Khung kiến ​​trúc tối ưu để giúp bạn thiết kế và chạy ứng dụng của mình nhằm đạt được độ tin cậy, bảo mật, hiệu quả hoạt động và hoạt động hiệu quả. Nó thậm chí còn cung cấp một bài kiểm tra để giúp bạn đánh giá xem bạn đã hiểu hết mọi thứ chưa.

Ngày càng có nhiều công cụ và dịch vụ giúp làm cho các ứng dụng bạn chạy trên Azure trở nên đáng tin cậy và an toàn hơn. Các công cụ này bao gồm từ dịch vụ Azure Chaos Studio, giúp bạn kiểm tra cách ứng dụng của bạn sẽ đối phó với lỗi, đến dự án OneFuzz mã nguồn mở, sẽ tìm kiếm các lỗi trong mã của bạn.

Nếu bạn sử dụng bộ chứa, cấu hình mặc định cho bộ chứa .NET 8 Linux hiện là “không cần root” và chỉ cần một dòng mã để ứng dụng của bạn chạy với tư cách người dùng chuẩn thay vì người dùng có quyền truy cập root. Điều này nhằm đảm bảo những kẻ tấn công không thể sửa đổi tệp hoặc cài đặt và chạy mã của riêng chúng nếu chúng có thể truy cập vào ứng dụng của bạn.

Khóa ứng dụng của bạn

Ngoài việc tránh các lỗi bảo mật khi bạn viết ứng dụng, bạn cần đảm bảo rằng bạn chỉ cấp quyền truy cập cho đúng người.

Bạn có thể áp dụng khóa cho bất kỳ tài nguyên Azure nào hoặc thậm chí toàn bộ đăng ký Azure, đảm bảo rằng chúng không thể bị xóa hoặc thậm chí sửa đổi. Nhưng vì các khóa ảnh hưởng đến mặt phẳng điều khiển Azure chứ không phải mặt phẳng dữ liệu Azure nên cơ sở dữ liệu bị khóa chống sửa đổi vẫn có thể tạo, cập nhật và xóa dữ liệu, vì vậy ứng dụng của bạn sẽ tiếp tục hoạt động bình thường.

Đối với các ứng dụng cũ hơn không có các tùy chọn chi tiết để quản lý cách sử dụng thông tin đăng nhập, Azure Active Directory có một tùy chọn mới để giúp bạn bảo mật các thông tin đăng nhập đó. Bằng cách này, kẻ tấn công không thể thực hiện các thay đổi có thể cho phép chúng kiểm soát ứng dụng doanh nghiệp quan trọng và lấy thông tin xác thực để di chuyển qua mạng của bạn và tấn công các hệ thống khác.

Khoảng 70% tất cả các vụ vi phạm dữ liệu bắt đầu bằng một cuộc tấn công vào các ứng dụng web, vì vậy bạn cần đảm bảo rằng những kẻ tấn công không thể sử dụng chúng làm bàn đạp cho các tài nguyên khác.

NHÌN THẤY: Khám phá cách BYOD và các ứng dụng cá nhân có thể dẫn đến vi phạm dữ liệu.

Tính năng khóa thuộc tính phiên bản ứng dụng mới bao gồm ký thông tin xác thực bằng SAML và OpenID Connect, nghĩa là bạn có thể cung cấp đăng nhập một lần cho phép người dùng đăng nhập bằng Azure AD và có quyền truy cập vào nhiều ứng dụng.

Nó cũng mã hóa các mã thông báo được tạo bằng khóa chung, vì vậy các ứng dụng muốn sử dụng các mã thông báo đó phải có đúng khóa riêng tư trước khi có thể sử dụng các mã thông báo đó cho người dùng hiện đang đăng nhập. Điều đó khiến việc đánh cắp và phát lại mã thông báo trở nên khó khăn hơn có được quyền truy cập.

Các ứng dụng hiện đại thường sẽ có sẵn các loại bảo vệ đó. Nếu bạn đang chạy một ứng dụng cũ không được xây dựng để bảo vệ các luồng đăng nhập này, thì bạn có thể sử dụng Azure AD để ngăn thông tin đăng nhập được sử dụng để ký mã thông báo, mã hóa mã thông báo hoặc xác minh mã thông báo khỏi bị thay đổi. Vì vậy, ngay cả khi kẻ tấn công có quyền truy cập vào ứng dụng, chúng cũng không thể chặn và chiếm quyền quản trị viên hợp pháp.

Bạn cũng có thể muốn xem các quyền mà người dùng có đối với các ứng dụng mà họ cài đặt hoặc đăng ký trên đối tượng thuê Azure AD của bạn và những gì bất kỳ ai có quyền truy cập khách sẽ thấy.

Kiểm tra mạng của bạn

Nếu ứng dụng đám mây của bạn gặp sự cố, đôi khi đó là sự cố mạng và đôi khi đó là cách bạn đã định cấu hình các tùy chọn mạng.

Azure Virtual Network Manager là một công cụ mới để nhóm các tài nguyên mạng, định cấu hình kết nối và bảo mật cho các tài nguyên đó và tự động triển khai các cấu hình đó cho các nhóm mạng phù hợp. Đồng thời, nó cho phép các ngoại lệ đối với các tài nguyên cần thứ gì đó như lưu lượng truy cập Secure Shell gửi đến mà bạn thường chặn.

Bạn có thể sử dụng điều này để tạo các cấu trúc liên kết mạng phổ biến như một trung tâm và nói kết nối nhiều mạng ảo với mạng ảo trung tâm có chứa Tường lửa Azure hoặc kết nối ExpressRoute của bạn. Trình quản lý mạng ảo Azure cũng tự động thêm các mạng ảo mới cần kết nối với tài nguyên đó hoặc (sắp tới) một lưới cho phép các mạng ảo của bạn giao tiếp với nhau.

Azure Network Watcher đã có sẵn nhiều công cụ để giúp bạn giám sát mạng của mình và theo dõi các sự cố có thể ảnh hưởng đến máy ảo hoặc mạng ảo của bạn. Nó có thể vẽ một bản đồ cấu trúc liên kết trực tiếp bao gồm nhiều đăng ký Azure, khu vực và nhóm tài nguyên cũng như giám sát kết nối, mất gói và độ trễ cho máy ảo trong đám mây và trên cơ sở hạ tầng của riêng bạn.

Tuy nhiên, có nhiều công cụ để tìm các vấn đề cụ thể có nghĩa là bạn phải biết mình đang tìm gì. Công cụ khắc phục sự cố kết nối mới trong Network Watcher chạy các công cụ đó và báo cáo lại về các bước nhảy mạng, độ trễ, mức sử dụng bộ nhớ và CPU cũng như liệu nó có thể tạo kết nối hay không và nếu không, đó có phải là do DNS, quy tắc định tuyến mạng, bảo mật mạng hay không quy tắc hoặc cấu hình tường lửa.

Bạn cũng có thể sử dụng Network Watcher để chạy các công cụ khác như phiên chụp gói hoặc Azure Traffic Analytics, giúp bạn hình dung luồng mạng trong ứng dụng của mình. Azure Traffic Analytics thậm chí có thể ánh xạ cấu trúc liên kết của mạng, vì vậy bạn có thể xem tài nguyên nào nằm trong mạng con nào và mỗi mạng con là một phần của mạng ảo nào.

Nếu bạn sử dụng các nhóm bảo mật mạng của Network Watcher, bạn có thể sử dụng Phân tích lưu lượng truy cập để hiểu nhật ký luồng, theo dõi lưu lượng truy cập vào và ra để tìm kiếm các điểm nóng lưu lượng truy cập hoặc chỉ xem lưu lượng truy cập mạng của bạn đến từ đâu trên thế giới và liệu điều đó có khớp không những gì bạn mong đợi.

Bạn cũng có thể sử dụng tính năng này để kiểm tra xem bạn có đang sử dụng liên kết riêng tư thay vì kết nối IP công khai để tiếp cận các tài nguyên nhạy cảm như Azure Key Vault hay không — một lỗi rất dễ mắc phải nếu bạn sử dụng máy chủ DNS công cộng thay vì máy chủ Azure DNS. Có được cấu hình mạng phù hợp là một phần quan trọng trong việc giữ an toàn cho ứng dụng của bạn trên đám mây.

Chia sẻ cho bạn bè cùng đọc