Palo Alto Networks đã tổ chức Hội nghị thượng đỉnh Code to Cloud Cybersecurity hàng năm vào thứ Năm, tập trung vào đám mây, DevOps và bảo mật. Các chuyên gia đã thảo luận về các xu hướng, cơ hội và thách thức với mã hóa và đám mây.
Gần đây, Đơn vị 42 của Palo Alto Networks đã đưa ra một báo cáo về mối đe dọa đám mây cho thấy nhóm bảo mật trung bình mất sáu ngày để giải quyết cảnh báo bảo mật. Khảo sát về tình trạng bảo mật trên nền tảng đám mây cho thấy 90% các tổ chức không thể phát hiện, ngăn chặn và giải quyết các mối đe dọa trên mạng trong vòng một giờ. Đơn vị 42 gần đây cũng đã công bố nghiên cứu về mối đe dọa API mới, cho thấy 14,9% cuộc tấn công vào cuối năm 2022 nhắm vào các hoạt động triển khai được lưu trữ trên đám mây.
Trong số các diễn giả tại sự kiện có Ory Segal, giám đốc công nghệ tại Palo Alto Networks Prisma Cloud, người đã tham gia một hội thảo về cách bảo mật đám mây có thể được điều chỉnh phù hợp với chu kỳ phát triển tích cực mà các nhà phát triển làm việc.
Trước sự kiện này, anh ấy đã nói chuyện với TechRepublic về việc bảo vệ quy trình phát triển phần mềm và các nền tảng ứng dụng dựa trên đám mây (CNAPP). (Hình A)
Hình A
Chuyển đến:
CNAPP như một nền tảng
TR: Điều gì tạo nên một CNAPP (nền tảng bảo vệ ứng dụng dựa trên đám mây) bây giờ? Điều gì nằm trong biểu ngữ đó và làm cách nào để bạn gỡ rối các cách tiếp cận khác nhau khi nói đến bảo mật DevOps, khi nói đến… [reducing] các lỗ hổng trong các ứng dụng được đưa lên đám mây hoặc được viết cho môi trường đám mây?
Lời bài hát có nghĩa là: Các công ty khác nhau đạt đến điểm mà họ có thể được coi là CNAPP dựa trên hành trình của họ. Một số bắt đầu từ bảo mật vùng chứa, chẳng hạn như Twistlock (được Palo Alto Networks mua lại) hoặc bảo mật Aqua. Một số đến… từ quản lý tư thế bảo mật đám mây. Vì vậy, nó thực sự phụ thuộc vào người bạn hỏi. Nhưng tôi thích quan điểm của Gartner: Trọng tâm là bảo mật gốc toàn diện trên đám mây, vì vậy không phải là về “bảo mật đám mây”, “bảo mật khối lượng công việc” hay “bảo mật mã”. Đó là về việc cung cấp một nền tảng cho phép bạn áp dụng các loại biện pháp kiểm soát bảo mật phù hợp trong suốt vòng đời phát triển, từ thời điểm bạn bắt đầu viết mã cho đến thời điểm bạn được triển khai và giám sát khối lượng công việc. Và dưới mùa thu đó, rất nhiều loại sản phẩm khác nhau, không phải tất cả chúng đều được coi là một phần của CNAPP.
TR: Một số ví dụ điển hình về CNAPP trong chuỗi hoặc chu kỳ phát triển là gì? CNAPP có phải là thuật ngữ chung cho bất kỳ DevSecOps nào không?
Lời bài hát có nghĩa là: Vì vậy, rõ ràng, quét các mẫu cơ sở hạ tầng dưới dạng mã khi bạn phát triển phần mềm để đảm bảo rằng bạn không nhúng bất kỳ loại rủi ro hoặc cấu hình sai nào vào bên trái; thực hiện phân tích thành phần phần mềm để tránh hoặc ngăn ngừa rủi ro [of bad code or vulnerabilities] từ việc triển khai. Ngay cả khi thực hiện phân tích tĩnh, thứ mà ngày nay chúng tôi đang khám phá nhưng chưa cung cấp, nhưng tôi nghĩ SAST (kiểm tra bảo mật ứng dụng tĩnh), DAST (kiểm tra bảo mật ứng dụng động) và IAST (kiểm tra bảo mật ứng dụng tương tác), tất cả đều là bảo mật ứng dụng thử nghiệm nói chung, là một phần của điều đó.
XEM: Gắn bó với vở kịch truyền thống là một sai lầm đối với bảo mật đám mây (TechRepublic)
TR: Và xa hơn về bên phải nhiều hơn về phía sản xuất?
Segal: Và sau đó, khi bạn xây dựng sản phẩm, quét và bảo mật các thành phần lạ, đi kèm với quá trình triển khai lên đám mây, giám sát và bảo vệ khối lượng công việc khi chúng chạy. Và điều đó bao gồm bảo vệ thời gian chạy, WAF (tường lửa ứng dụng web), [application programming interface] bảo mật và những thứ thực sự liên quan nhiều hơn đến các trung tâm điều hành bảo mật, giám sát khối lượng công việc.
Bảo vệ đường ống phát triển phần mềm
TR: Với tất cả các ứng dụng này thuộc CNAPP, có lĩnh vực nào chưa được giải quyết đầy đủ bằng hầu hết các giải pháp hiện có không?
Lời bài hát có nghĩa là: Vâng, trên hết, và một điều mà chúng tôi hiện đang khám phá do chúng tôi mua lại Cider Security — và điều mà chúng tôi không quan tâm nhất hoặc chưa nghĩ đến — là tính bảo mật của CI/CD (tích hợp liên tục/liên tục development), mà trong các môi trường phát triển hiện đại, chính chúng tạo thành các ứng dụng rất tinh vi và phức tạp.
TR: Nhưng không phải đường dẫn CI/CD chỉ là các hạt trong vòng cổ sao? Nói một cách cụ thể, sự khác biệt giữa quy trình CI/CD và các quy trình chuyển mã lên đám mây DevOps theo từng bước là gì?
Lời bài hát có nghĩa là: Đó không phải là ứng dụng mà bạn đang xây dựng cho khách hàng của mình, mà là ứng dụng mà bạn đang sử dụng để xây dựng phần mềm của riêng mình; chẳng hạn như các thư viện của bên thứ ba mà bạn đang đưa vào hoặc nếu chúng tôi đang sử dụng Jenkins hoặc CircleCI để xây dựng mã và tạo các tạo phẩm, thì chúng tôi có bảo mật cả những điểm đó không? Bởi vì tôi có thể viết và triển khai ứng dụng gốc trên đám mây an toàn nhất, nhưng nếu ai đó bằng cách nào đó có thể can thiệp vào chính quy trình — với quy trình xây dựng và triển khai của tôi — thì tất cả bảo mật mà tôi đang nhúng vào mã của riêng mình đều không đáng giá.
TR: Bởi vì ai đó có thể đầu độc đường ống.
Lời bài hát có nghĩa là: Chúng có thể nhúng phần mềm độc hại, như chúng ta đã thấy xảy ra với SolarWinds vào năm 2020 và đã thấy nhiều lần gần đây. Và vì vậy, đây là thứ mà chúng tôi hiện cũng đang xem xét là một phần của CNAPP, mặc dù bạn sẽ không thường thấy nó được mô tả theo cách đó.
Cách đám mây công cộng tạo lỗ hổng cho CI/CD
TR: Cơ sở mã nguồn mở, dựa trên đám mây và công việc kết hợp ảnh hưởng đến CI/CD như thế nào?
Lời bài hát có nghĩa là: Cách chúng tôi sử dụng để xây dựng phần mềm — và tôi không nói về ngôn ngữ và khuôn khổ, tôi chỉ nói đơn giản về chính quy trình xây dựng — chúng tôi sẽ chạy quản lý mã nguồn cục bộ, trên máy chủ, thậm chí không phải trung tâm dữ liệu, mà là cơ sở hạ tầng CNTT của chính chúng ta. Chúng tôi sẽ kéo và đẩy mã cục bộ, xây dựng rồi ghi mã đó vào đĩa CD và gửi cho khách hàng của mình. Ngày nay, hầu hết các tổ chức mà chúng tôi hợp tác đều sử dụng một số loại kho lưu trữ GIT, hoàn toàn trên internet công cộng và sử dụng ngày càng nhiều dịch vụ để thực hiện việc xây dựng. Ví dụ: Jenkins, GitLab, CircleCI, hầu hết trong số đó được sử dụng dưới dạng nền tảng xây dựng dưới dạng dịch vụ.
TR: Vì vậy, không cục bộ theo bất kỳ nghĩa nào và không được bảo vệ trong một vành đai?
Segal: Về bản chất, toàn bộ quy trình công việc được lưu trữ trên internet công cộng ở một mức độ nào đó. Ngoài ra, các nhà phát triển thường sử dụng máy tính xách tay của riêng họ để phát triển, thường truy cập kho GIT của họ thông qua trình duyệt. Và nếu họ tình cờ nhận và trả lời email lừa đảo hoặc cuộc tấn công kỹ thuật xã hội khác, họ sẽ dễ bị kẻ gian thao túng và đánh cắp, chẳng hạn như mã thông báo phiên từ trình duyệt, sau đó sẽ cấp cho kẻ tấn công quyền truy cập trực tiếp vào GitHub kho. Từ đó, chúng có thể bắt đầu đầu độc quá trình phát triển. Vì vậy, từ quan điểm không tin tưởng, chúng tôi đang phơi bày những điểm nhạy cảm nhất trong cách chúng tôi phát triển phần mềm ngày nay, vì vậy nó không được kiểm soát tốt. Vì vậy, không, không có chu vi nữa.
Bảo vệ chuỗi cung ứng
TR: Về mặt bảo vệ chuỗi cung ứng, quay trở lại các sản phẩm khác được thiết kế để đảm bảo vệ sinh cho đường ống CI/CD, tôi biết về các sản phẩm, một số mã nguồn mở hiện có, như in-toto, đảm bảo chữ ký cho mọi bước trong quy trình quá trình phát triển, vì vậy không có điểm nào là vô hình và dễ bị tổn thương.
Lời bài hát có nghĩa là: Tôi đã xem xét dự án đó. Gần đây, cách đây vài tháng, chúng tôi đã mua lại một công ty ở Israel, một công ty khởi nghiệp có tên là Cider, công ty thực sự đi tiên phong trong lĩnh vực này. Và như một phần của việc mua lại đó, chúng tôi đang tạo một mô-đun bảo mật mới áp dụng các rào cản bảo mật cho đường ống CI/CD.
TR: Điều này làm gì cho các đội bảo mật?
Lời bài hát có nghĩa là: Đối với một người làm bảo mật, nó “bật đèn lên”, chiếu sáng các quy trình phát triển, bởi vì ngày nay các nhóm ứng dụng bảo mật CNTT hoàn toàn lạc lõng khi nói đến quy trình CI/CD này, do thực tế là chúng tôi đã chuyển từ một mô hình thác nước sang mô hình vận chuyển và điều đó có nghĩa là phần lớn khách hàng của chúng tôi đang gửi mã nhiều lần trong ngày — hoặc nhiều lần trong tuần. Có rất nhiều áp lực cạnh tranh đối với các nhóm để phát triển và thúc đẩy ngày càng nhiều thứ mới mỗi tuần, vì vậy các nhà phát triển cực kỳ bận rộn với chức năng viết mã. Thậm chí mong đợi họ sử dụng phân tích mã tĩnh là một chút ngoài kia. Trong mô hình này, các nhóm bảo mật ứng dụng hoặc bảo mật CNTT không thể là điểm nghẽn. Họ không thể là người chặn; họ phải được coi là hỗ trợ.
TR: Và điều đó có ý nghĩa gì trong thực tế?
Segal: Điều đó có nghĩa là họ không thể dừng các quy trình để quét từng mã đang được đẩy. Và họ chắc chắn không có bất kỳ khả năng hiển thị nào về bản chất của đường ống CI/CD hoặc vị trí mà các nhà phát triển đang đẩy mã tới, hoặc thành phần tạo tác và phần phụ thuộc là gì hoặc liệu có rủi ro hay không, chẳng hạn như liệu bản dựng-như-a- plugin dịch vụ có quyền truy cập vào mã.
TR: Theo ‘hiện vật’, ý bạn là nhị phân?
Lời bài hát có nghĩa là: Nó có thể là tệp nhị phân, hình ảnh vùng chứa, mã chức năng không có máy chủ và thậm chí cả hình ảnh EC2 (nền tảng điện toán đám mây của Amazon). Nó bao gồm tất cả các gói của bên thứ ba, thường được đóng gói dưới dạng hình ảnh hoặc chức năng sẵn sàng để đẩy lên đám mây.
Palo Alto Networks Prisma Cloud để tăng cường bảo mật CI/CD
TR: Vì vậy, bạn sắp ra mắt sản phẩm Palo Alto Prisma Cloud dành riêng cho việc bảo mật CI/CD.
Segal: Có, chúng tôi đang lên kế hoạch bổ sung mô-đun bảo mật CI/CD vào nền tảng Đám mây Prisma để giúp bảo mật chuỗi cung ứng phần mềm. Bạn bắt đầu bằng cách tích hợp tài khoản đám mây, kho lưu trữ mã, quy trình xây dựng của mình. Và sau đó chúng tôi bắt đầu quét mọi thứ. Chúng tôi sẽ quét mã của bạn ở bên trái. Chúng tôi sẽ quét các thành phần tạo tác có liên quan đó — chẳng hạn như hình ảnh vùng chứa — khi chúng được tạo và chúng tôi sẽ áp dụng biện pháp bảo vệ thời gian chạy ở bên phải. Và toàn bộ điều này được quản lý và vận hành bởi nhóm Bảo mật đám mây, chịu trách nhiệm về quy trình từ đầu đến cuối cho mọi thứ cho đến khi bạn đẩy nó lên đám mây. Đó là đảm bảo rằng tài khoản đám mây được an toàn, đảm bảo rằng bạn không có bất kỳ tài sản nào có rủi ro được triển khai lên đám mây.
XEM: Tại sao bảo mật đám mây có “rừng cho cây” vấn đề (TechRepublic)
TR: Rõ ràng, dịch chuyển sang trái là điều tối quan trọng bởi vì một khi bạn đã triển khai các cơ sở mã bị lỗi hoặc dễ bị tổn thương lên đám mây, bạn đã tạo ra một hydra, phải không?
Lời bài hát có nghĩa là: Ví dụ: một dòng mã trong tệp bạn viết sẽ đi vào kho lưu trữ có thể tạo nhiều hình ảnh bộ chứa được triển khai thành nhiều, nhiều cụm khác nhau trên nhiều tài khoản đám mây. Và vì vậy, nếu bạn chơi kiểu tấn công chuột chũi đó và tấn công vấn đề ở bên phải, bạn sẽ phải đi sửa và vá hàng nghìn trường hợp của cùng một vấn đề.
Cách Palo Alto Networks tránh được ‘sự cố hydra’
TR: Nếu bạn đợi cho đến khi nó xuất hiện, bạn đang giải quyết không phải một vấn đề mà là hàng nghìn vấn đề.
Nó trở thành một vấn đề phổ biến. Làm thế nào để bạn khắc phục điều đó?
Lời bài hát có nghĩa là: Hãy nghĩ về nó theo cách này: Bạn mắc lỗi mã của chức năng giỏ hàng trong ứng dụng của mình, hiện được triển khai tới 5.000 vùng chứa đang chạy dư thừa để hỗ trợ lưu lượng truy cập trên nhiều đám mây — Google Cloud, AWS, Azure, bất cứ thứ gì — ở nhiều vùng. Bây giờ, bạn nhận được cảnh báo quét từ phía thời gian chạy cho biết bạn có 5.000 phiên bản dễ bị tấn công. Nếu nền tảng của bạn đủ thông minh, bạn có thể ánh xạ nó trở lại dòng mã xấu đó và mã cụ thể do nhà phát triển cụ thể đó cam kết. Bạn có thể mở một yêu cầu cho nhà phát triển đó để khắc phục sự cố và giải quyết vấn đề trong hàng nghìn trường hợp đó. Ngoài ra, bạn sẽ muốn ưu tiên những vấn đề này: Giả sử bạn đang xem kết quả ở cấp độ mã và bạn thấy hàng nghìn vấn đề mà bạn phải khắc phục. Làm thế nào để bạn biết vấn đề nào là nghiêm trọng nhất? Nếu bây giờ bạn có thông tin từ môi trường trực tiếp, bạn có thể xác định mã dễ bị tổn thương đang được sử dụng trong môi trường quan trọng của nhiệm vụ sản xuất, so với sự cố chỉ xảy ra trong môi trường dàn dựng của bạn, sự cố này không nghiêm trọng và chắc chắn không phải là mối đe dọa sắp xảy ra. Đây là những thứ mà CNAPP cho phép bạn làm.
TR: Chà, điều đó rất quan trọng vì nó có khả năng tiết kiệm rất nhiều thời gian?
Lời bài hát có nghĩa là: Đúng vậy, bởi vì có hàng triệu phụ thuộc tiềm năng và thực sự bạn chỉ cần tập trung vào những phụ thuộc có liên quan. Có khả năng hiển thị thời gian chạy đó và không chỉ nhìn vào khía cạnh tĩnh, là điều có thể tạo ra sự khác biệt lớn. Ví dụ: trong Đám mây Prisma, tính năng Bảo vệ khối lượng công việc trên đám mây của chúng tôi sẽ đăng ký gói phần mềm nào thực sự được tải vào bộ nhớ trong các bộ chứa đang chạy. Và đây là vàng. Dữ liệu này chính xác là những gì bạn cần để biết cách ưu tiên những gì bạn muốn khắc phục trước.