Daftar Isi
Aplikasi berbasis cloud, yang terdiri dari berbagai komponen independen yang dikenal sebagai microservices, dibuat menggunakan pendekatan pengembangan perangkat lunak tangkas yang disebut DevSecOps, yang menekankan kolaborasi dan keamanan di seluruh proses.
Salah satu aspek penting dalam pengembangan aplikasi cloud-native adalah penggunaan Continuous Integration/Continuous Delivery (CI/CD).CI/CD) pipelineS. Ini pipelineHal ini memungkinkan pengembang untuk mengintegrasikan perubahan kode baru secara mulus dan terus memberikan pembaruan pada aplikasi. Namun, studi terbaru telah menyoroti pentingnya mempertimbangkan seluruh siklus hidup pengembangan perangkat lunak (SDLC), yang dikenal sebagai rantai pasokan perangkat lunak (SSC), terkait dengan keamanan.
Dalam lanskap pengembangan perangkat lunak dan keamanan yang terus berkembang, tetap selangkah lebih maju dari potensi ancaman sangatlah penting. Itulah mengapa Institut Nasional StandardInstitut Teknologi Informasi (NIST) telah mengambil langkah signifikan dengan menerbitkan NIST SP 800-204D, menggabungkan software supply chain security (SSCS) mengukur ke dalam CI/CD pipelineDokumen ini dibangun berdasarkan kerangka kerja Secure Software Development Framework (SSDF), yang juga dirilis oleh NIST.
Bagi organisasi yang ingin meningkatkan postur keamanan rantai pasokan mereka, sumber daya baru ini dari NIST Ini merupakan aset yang tepat waktu dan berharga. Dalam beberapa tahun terakhir, kita telah menyaksikan banyak upaya canggih untuk membahayakan rantai pasokan perangkat lunak, yang menekankan kebutuhan mendesak akan peningkatan langkah-langkah keamanan. Sebanyak 82% CIO telah menyatakan kekhawatiran tentang kerentanan rantai pasokan perangkat lunak mereka terhadap potensi serangan.
Jika Anda khawatir tentang keamanan rantai pasokan Anda, penting untuk diingat bahwa banyak organisasi memiliki kekhawatiran yang sama dan mencari cara untuk mengurangi risiko dan memperkuat rantai pasokan perangkat lunak mereka. Mari kita telusuri lebih dalam strategi dan pertimbangan untuk mengintegrasikannya. SSCS mengintegrasikan langkah-langkah ini ke dalam operasional DevOps sehari-hari Anda.
Pertama dan terpenting, sangat penting untuk mendefinisikan serangan rantai pasokan dan hal-hal spesifik yang terkait. Software Supply Chain Security Ancaman yang muncul selama tahap sumber.
SSCS ke CI/CD Pipelines: Inti dari DevSecOps
Integrasi Berkelanjutan dan Penerapan Berkelanjutan (CI/CD) Pipelinetelah merevolusi proses pengembangan perangkat lunak, bertindak sebagai tulang punggung paradigma tangkas DevSecOps. Ini pipelineSistem ini rumit dan menangani kode dari berbagai sumber, termasuk repositori internal pihak pertama dan repositori pihak ketiga, baik sumber terbuka maupun komersial.
Proses pembangunan di dalam hal ini pipelineProses build merupakan tarian kompleks dari dependensi yang didorong oleh logika aplikasi, yang menghasilkan build dari banyak artefak kode sumber individual. Setelah artefak ini dibuat, artefak tersebut disimpan dalam repositori build khusus, menjalani pengujian ketat sebelum dikemas. Paket-paket ini disimpan dalam repositori tertentu, dipindai untuk kerentanan, dan akhirnya diterapkan di lingkungan pengujian atau produksi. Platform seperti alur kerja GitHub Actions, GitLab Runners, dan Buildcloud telah mendukung alur kerja ini.
Untuk keamanan SSC dalam alur kerja ini, menghasilkan data asal usul yang ekstensif sangatlah penting. Data ini memastikan ketertelusuran dan akuntabilitas di seluruh proses. pipeline, bertindak sebagai mercusuar transparansi. Sangat penting untuk membahas praktik keamanan SSC internal untuk perangkat lunak pihak pertama dan praktik keamanan yang berkaitan dengan modul perangkat lunak pihak ketiga. Tujuan utamanya ada dua:
- Terapkan langkah-langkah defensif untuk mencegah gangguan terhadap proses produksi perangkat lunak dan menghalangi masuknya pembaruan perangkat lunak berbahaya.
- Menjunjung tinggi integritas CI/CD pipeline artefak dan aktivitas dengan mendefinisikan peran dan wewenang untuk semua aktor yang terlibat di dalamnya pipeline.
Infrastruktur DevOps: Fondasi dari CI/CD
Alat dan teknologi yang mendukung operasi DevOps adalah kuda kerja tak terlihat dari Integrasi Berkelanjutan. Konfigurasi dan pemeliharaannya sangat penting untuk keamanan dan integritas keseluruhan sistem. CI/CD proses. Audit dan pembaruan rutin terhadap alat-alat ini mutlak diperlukan untuk memastikan kerentanan ditangani secara proaktif.
Pemindai kerentanan otomatis telah muncul sebagai sekutu yang sangat berharga dalam upaya ini. Dengan terus memantau alat dan konfigurasi DevOps, mereka dapat mengidentifikasi potensi kerentanan atau kesalahan konfigurasi secara real-time. Pendekatan proaktif ini memberikan wawasan tentang kesehatan keamanan keseluruhan lingkungan DevOps, memungkinkan perbaikan tepat waktu.
Selain itu, pemilihan plugin dalam rangkaian alat DevOps dapat berdampak signifikan pada keamanan. Meskipun plugin meningkatkan fungsionalitas, plugin juga dapat menimbulkan kerentanan jika tidak diperiksa dengan benar. Sangat penting untuk menilai plugin berdasarkan reputasi, rekam jejak keamanan, dan dukungan komunitasnya. Tinjauan dan pembaruan rutin terhadap plugin ini dapat semakin memperkuat keamanan sistem.
Keamanan di CI/CD Pipelines: Suatu hal yang tidak dapat ditawar
Setiap tahap dari CI/CD pipeline, mulai dari pembuatan kode hingga penanganan kode commitOperasi tarik-dorong dan tarik-tarik membutuhkan langkah-langkah keamanan yang ketat. Kode yang aman. commitmembentuk dasar dari hal-hal ini pipelinePenerapan tinjauan kode, deteksi kode berbahaya, dan kepatuhan terhadap pedoman keamanan dapat secara signifikan mengurangi kerentanan.
Operasi tarik-dorong, yang melibatkan perubahan kode, harus diperkuat dengan mekanisme otentikasi yang aman, seperti otentikasi multi-faktor (MFA), untuk mencegah akses yang tidak sah. Proses pembangunan di dalam pipelineProses build sebaiknya dilakukan di lingkungan yang terisolasi dan aman. Menggunakan agen build yang aman, memperbarui alat build dan dependensi secara teratur, serta memastikan integritas proses build merupakan langkah-langkah penting ke arah ini.
Selain itu, integritas pengesahan dan bukti dalam sistem pembaruan perangkat lunak sangat penting. Memverifikasi keaslian dan integritas pembaruan perangkat lunak memastikan bahwa pembaruan tersebut tetap tidak diubah selama proses penyebaran.
Build Attestations: Penjaga CI/CD Proses
Attestasi adalah pahlawan tanpa tanda jasa dalam mengamankan rantai pasokan perangkat lunak. Kumpulan metadata terautentikasi ini, yang dihasilkan oleh proses tertentu, dapat diverifikasi oleh konsumen, memberikan lapisan kepercayaan dan transparansi. Seiring organisasi memprioritaskan pengamanan rantai pasokan perangkat lunak mereka, pengumpulan metadata yang terkait dengan proses pembuatan dan penciptaan aplikasi menjadi sangat penting.
Metadata seputar proses pembuatan perangkat lunak menawarkan wawasan tentang alat, versi, konfigurasi, dan dependensi yang digunakan, bertindak sebagai cetak biru untuk proses pembuatan. Demikian pula, metadata tentang pembuatan aplikasi memberikan gambaran sekilas tentang kerangka kerja pengembangan, pustaka, dan dependensi pihak ketiga yang digunakan. Pengumpulan data komprehensif ini menawarkan visibilitas yang tak tertandingi ke dalam asal usul dan integritas basis kode.
Dengan memanfaatkan pengesahan dan mengumpulkan metadata secara cermat, organisasi dapat meningkatkan kinerja mereka secara signifikan. software supply chain securityPendekatan ini tidak hanya memberikan transparansi dan kemampuan verifikasi, tetapi juga meletakkan dasar untuk pemantauan, audit, dan analisis keamanan yang efektif sepanjang siklus pengembangan perangkat lunak.
Kesimpulan dan langkah selanjutnya
Analisis terkini mengenai kerentanan dan serangan perangkat lunak telah menyoroti kekhawatiran mendesak bagi perusahaan yang mengembangkan perangkat lunak di bawah paradigma DevSecOps yang gesit dan memanfaatkan Integrasi Berkelanjutan/Pengiriman Berkelanjutan (Continuous Integration/Continuous Delivery).CI/CD) pipelineBaik organisasi pemerintah maupun swasta kini memfokuskan perhatian pada kegiatan yang mencakup keseluruhan SDLCsecara kolektif disebut sebagai rantai pasokan perangkat lunak (Software Supply Chain/SSC).
Integritas setiap operasi di dalam SSC sangat penting bagi keamanan keseluruhannya. Ancaman terhadap integritas ini dapat muncul dari pelaku jahat yang mengeksploitasi kerentanan atau dari kelalaian dan kurangnya uji tuntas selama proses tersebut. SDLCMenyadari pentingnya masalah ini, berbagai inisiatif seperti Executive Order (EO) 14028, Secure Software Development Framework (SSDF) dari NIST, dan berbagai forum industri telah membahas keamanan SSC, dengan tujuan untuk memperkuat keamanan semua perangkat lunak yang digunakan.
Peningkatan fokus ini menggarisbawahi perlunya langkah-langkah nyata untuk mengintegrasikan jaminan keamanan SSC ke dalam CI/CD pipelinedengan lancar. Integrasi semacam itu sangat penting bagi organisasi untuk secara efektif menangani keamanan SSC saat mereka mengembangkan dan menerapkan aplikasi cloud-native. Membangun infrastruktur keamanan SSC yang tangguh membutuhkan penggabungan berbagai artefak, termasuk daftar material perangkat lunak (software bill of materials).SBOM) dan kerangka kerja untuk pengesahan komponen perangkat lunak. Karena spesifikasi dan persyaratan ini terus berkembang melalui upaya kolaboratif di forum pemerintah dan industri, spesifikasi dan persyaratan ini tetap menjadi kunci dalam membentuk masa depan keamanan SSC.
Siap menjelajahi seluk-beluk integrasi SSCS Ingin menerapkan langkah-langkah ke dalam DevOps? Unduh makalah komprehensif Xygeni hari ini. Pelajari wawasan mendalam, praktik terbaik, dan strategi yang dapat ditindaklanjuti untuk memperkuat proses DevOps Anda. Bekali tim Anda dengan pengetahuan untuk merangkulnya. SSCS mengukur secara menyeluruh dan menjadi yang terdepan dalam software supply chain securityJangan sampai ketinggalan—Unduh Sekarang.




