Ngăn ‘Bí mật’ đám mây của bạn khỏi bị phơi bày trước công chúng: Giải pháp plugin IDE

Tôi chắc rằng bạn sẽ đồng ý rằng, trong thế giới kỹ thuật số ngày nay, phần lớn các ứng dụng chúng tôi đang làm việc yêu cầu một số loại thông tin xác thực – để kết nối với cơ sở dữ liệu bằng tên người dùng / mật khẩu, để truy cập các chương trình máy tính thông qua mã thông báo được ủy quyền hoặc khóa API để gọi các dịch vụ để xác thực.

Thông tin xác thực, hoặc đôi khi chỉ được gọi là ‘Bí mật’, là những phần thông tin bí mật cấp hệ thống hoặc người dùng phải được bảo vệ cẩn thận và chỉ những người dùng hợp pháp mới có thể truy cập được. Tất cả chúng ta đều biết tầm quan trọng của việc bảo mật những tài sản này để ngăn chặn việc sử dụng sai và vi phạm tài khoản.

Kiểm tra thực tế: Bạn có thường xuyên nỗ lực chủ động để bảo vệ những tài sản này không? Hiếm khi, tôi muốn nói.

Trong số những sai lầm tồi tệ nhất mà một nhà phát triển có thể mắc phải khi nói đến bảo mật ứng dụng là vô tình công khai thông tin bí mật trên Internet. Đáng ngạc nhiên là các bí mật và thông tin đăng nhập vô tình bị rò rỉ thường xuyên hơn bạn có thể mong đợi và có những công cụ thông minh quét các kho lưu trữ công khai để tìm kiếm các bí mật đã cam kết.

Với sứ mệnh trao quyền cho các nhà phát triển kiểm soát tính toàn vẹn của mã của họ, SonarLint, một tiện ích mở rộng IDE mã nguồn mở và miễn phí từ SonarSource, gần đây đã công bố một tính năng mới cho phần mềm của mình nhằm giúp các nhà phát triển xác định và ngăn chặn rò rỉ thông tin xác thực cấp hệ thống hoặc người dùng AWS trước khi chúng được cam kết vào kho lưu trữ và bị rò rỉ từ nguồn cục bộ của người dùng mã hoặc tệp.

Điều này nghe có thú vị với bạn không? Tiếp tục đọc để tìm hiểu thêm.

Đầu tiên – tại sao bạn nên quan tâm

Hãy dành một chút thời gian để nhìn lại một chút và xem tại sao tính năng SonarLint mới này lại quan trọng và hữu ích đối với bất kỳ nhà phát triển nào.

Ở một nơi nào đó trong cuộc đời, bạn có thể đã sử dụng thẻ tín dụng để mua hàng trực tuyến và ngay lập tức nhận được cuộc gọi từ công ty phát hành thẻ tín dụng hỏi bạn có định tiếp tục mua hàng hay không. Nếu bạn đã làm, không có vấn đề, tất cả tốt. Nếu không, hoạt động gian lận chỉ bị bắt trước khi giao dịch hoàn tất – tiết kiệm cho bạn và công ty phát hành thẻ tín dụng của bạn sự phức tạp của tài khoản bị xâm phạm sau thực tế.

Điều tương tự cũng áp dụng cho việc phát triển mã.

Có thể có kết nối định kỳ tới cơ sở dữ liệu dựa trên đám mây như một phần của quá trình phát triển và phân phối mã hoặc bạn có thể cần thông tin đăng nhập để truy cập API của công ty bên thứ ba.

Trong quá trình đó, có khả năng bạn tạm thời mã hóa thông tin đăng nhập để dễ sử dụng, hoặc một đồng nghiệp có thể đã thêm thông tin bí mật để kiểm tra cục bộ nhanh, và sau đó vô tình chuyển các tệp đó vào kho lưu trữ công cộng. Và … những thay đổi tạm thời đó giờ là vĩnh viễn …. Rất tiếc! Ngay cả khi xóa mã sau thực tế, vẫn có khả năng ai đó đã tạo bản sao bí mật của bạn trước khi xóa.

Điều tiếp theo bạn biết, ai đó đã xâm phạm tài khoản, hoặc tệ hơn, lỗi bảo mật nhỏ này đã cung cấp cho ai đó một điểm tổ chức nhỏ cho một vi phạm cơ sở hạ tầng lớn hơn.

Những vi phạm kiểu này phổ biến hơn và có khả năng gây thảm họa hơn bạn có thể nhận ra. Đã có một số bài báo trong năm qua nêu bật các sự cố trong đó người dùng độc hại đã đánh cắp các khóa API được nhúng trong các kho mã nguồn công khai như GitHub và BitBucket. StackOverflow, Uber và gần đây hơn Shopify là ví dụ về các sự cố bảo mật cấp cao trong đó các bí mật nằm trong các tệp hiển thị công khai đã tạo ra sự tàn phá. Hãy tưởng tượng những thiệt hại mà nó có thể gây ra đối với danh tiếng thương hiệu.

Lỗi do con người sẽ tiếp tục xảy ra, nhưng bằng cách thực hiện các kiểm tra phù hợp vào đúng thời điểm, lỗi có thể được ngăn chặn xảy ra ngay từ đầu. Trường hợp trước đây minh họa cách mà việc phơi bày ‘bí mật’ được phát hiện tại điểm giới thiệu liên quan, ví dụ như trong quá trình lập trình hoặc ngay trước khi cam kết mã của bạn, có thể đã giải quyết được rất nhiều rắc rối.

Nơi tốt nhất để phát hiện và giải quyết những vấn đề này trong quy trình phát triển của bạn là ở giai đoạn đầu của nó, tức là trong IDE, môi trường phát triển Tích hợp của bạn. Có rất nhiều công ty lớn đã học được bài học này một cách khó khăn.

Quy tắc nâng cao phát hiện bí mật AWS trong IDE

Với việc bổ sung gần đây các quy tắc mới để phát hiện bí mật đám mây, SonarLint bảo vệ thông tin xác thực AWS và thông tin xác thực Amazon Marketplace Web Service (MWS) khỏi bị rò rỉ công khai. Kiểm tra các quy tắc bảo vệ mã thông báo xác thực MWS, Khóa truy cập AWS, ID khóa và mã thông báo Phiên.

SonarLint bảo vệ thông tin đăng nhập của bạn chống lại sự rò rỉ công khai bằng cách hoạt động như tuyến phòng thủ đầu tiên của bạn. Bằng cách gắn cờ các vấn đề tại điểm giới thiệu (tức là chuyển phát hiện vấn đề sang trái), bạn có thể thực hiện hành động ngay lập tức và ngăn chặn sự cố rò rỉ ngay từ đầu.

Bí mật về đám mây

Điều này rất quan trọng vì các tài khoản bị xâm phạm không chỉ có thể có các phân nhánh cấp độ tài nguyên hoặc cá nhân, chẳng hạn như khả năng bị hack tài khoản, mà còn có các hậu quả bất lợi đối với tính bảo mật của khách hàng của bạn. Ví dụ: mã thông báo MWS bị xâm phạm có thể được sử dụng để truy cập bất hợp pháp vào cơ sở dữ liệu chứa thông tin khách hàng như số thẻ tín dụng, email, địa chỉ giao hàng và hồ sơ bán hàng của người bán.

Với SonarLint được cài đặt trong IDE của bạn, các quy tắc phát hiện ‘Bí mật’ này sẽ cho phép bạn nắm bắt sự hiện diện của các thông tin xác thực như vậy ở điểm nhập đầu tiên, tức là trong mã nguồn hoặc trong các tệp ngôn ngữ bất khả tri (ví dụ: xml, yaml, json) trước khi họ cam kết repo.

Bên cạnh việc xác định các vấn đề như vậy, SonarLint cũng có thể cung cấp hướng dẫn rõ ràng về cách giải quyết chúng. Sau đó, bạn có toàn quyền linh hoạt để thực hiện hành động và giải quyết mã bị gắn cờ; đưa bạn đến gần hơn với việc cung cấp mã an toàn.

Bắt đầu với IDE của bạn

Tính năng này hiện được hỗ trợ trong các IDE phổ biến như VS Code, IntelliJ IDEA, PyCharm, CLion, WebStorm, PHPStorm và Rider, với Visual Studio, Eclipse, v.v.

Để bắt đầu bảo mật cơ sở mã của bạn, bạn có thể tải xuống SonarLint cho VS Code hoặc SonarLint cho IDE JetBrains của bạn. Hoặc nếu bạn đã sử dụng SonarLint trong IDE của mình, bạn có thể chỉ cần cập nhật plugin lên phiên bản mới nhất để kích hoạt tính năng này.

Bước tiếp theo, công ty cũng có kế hoạch mở rộng chức năng phát hiện ‘Bí mật’ cho các nhà cung cấp đám mây công cộng khác. Trong tương lai, bạn có thể mong đợi SonarLint hỗ trợ nhiều nhà cung cấp đám mây hơn, các sản phẩm SaaS và nhà cung cấp cơ sở dữ liệu.

Các nhà phát triển sử dụng các giải pháp SonarSource khác – SonarQube hoặc SonarCloud để cung cấp mã chất lượng và an toàn có thể mở rộng trải nghiệm bảo mật mã cho IDE của họ. Bằng cách cài đặt SonarLint miễn phí, họ không chỉ có thể hưởng lợi ngay lập tức từ các tính năng mạnh mẽ như phát hiện bí mật mà còn cải thiện chất lượng mã tổng thể và bảo mật cho cơ sở mã của họ bằng cách chia sẻ các quy tắc và cài đặt phân tích từ SonarQube hoặc SonarCloud sang SonarLint để liên kết toàn bộ nhóm phát triển về một định nghĩa duy nhất về sức khỏe của mã.

Content Protection by DMCA.com
GenVerge | Trang thông tin dành cho tín đồ công nghệ Việt Nam
Logo
Đăng ký
Liên hệ Admin để kích hoạt tài khoản Cộng Tác Viên
Quên mật khẩu