Teknologi

Cara menjaga alur CI/CD Anda tetap aman dengan tenaga kerja jarak jauh

Oleh: Derek Handova, Penulis Teknis Senior di Synopsys Software Integrity Group

Dengan semakin banyak pengembang perangkat lunak yang bekerja dari jarak jauh setiap hari, organisasi pengembangan harus memastikan bahwa pengembang tersebut dapat tetap produktif sambil juga bekerja dengan aman. Awalnya, Anda mungkin berpikir yang perlu Anda lakukan hanyalah meletakkan pipa CI/CD Anda, pelacak masalah Jira, alat kolaborasi Confluence, dan sistem terkait lainnya di VPN. Koneksi end-to-end yang terenkripsi akan membungkus semuanya dengan ketat, lalu voila, selesai! Pada kenyataannya, hal-hal tidak begitu dipotong dan dikeringkan.

Peningkatan aktivitas jarak jauh pengembang yang tiba-tiba dan berkelanjutan dapat membuat VPN perusahaan merangkak. Bagian dari solusinya adalah memikirkan kembali bagaimana Anda menerapkan sumber daya online Anda. Tetapi Anda harus membuat beberapa keputusan tentang sifat sumber daya tersebut.

“Untuk aplikasi yang diklasifikasikan sebagai berisiko rendah dan yang tidak menangani data yang dicakup oleh peraturan apa pun, organisasi dapat memutuskan untuk memiliki instance Confluence dan Jira mereka di cloud,” kata Meera Rao, konsultan utama senior di Synopsys. “Namun, begitu sebuah aplikasi diklasifikasikan sebagai bisnis atau misi kritis – mereka yang menangani data yang sangat terbatas – Anda perlu memastikan alat dipasang di dalam VPN / firewall yang tepat untuk pengembang.”

Pengembang dan rekanannya

Tentu saja, pengembang bukan satu-satunya yang bekerja dari rumah akhir-akhir ini. Orang-orang yang perlu berinteraksi dengan mereka untuk melakukan pekerjaan mereka juga online. Saat Anda merestrukturisasi akses ke sistem yang menyentuh lingkungan pengembangan, Anda harus mempertimbangkan rekanan ini dan bagaimana mereka menggunakan sistem ini.

“Dalam beberapa keadaan, sulit untuk mengamankan alat jika mereka dihosting di luar VPN,” kata Fawad Ahmad, manajer TI di Synopsys. “Dalam kasus kami, Jira dan Confluence tidak hanya digunakan oleh pengembang tetapi beberapa kelompok non-pengembang lainnya seperti pengembangan produk, dukungan pelanggan, rekayasa aplikasi, dan kantor manajemen proyek (PMO). Kami memutuskan untuk menyediakan Jira dan Confluence melalui teknologi DirectAccess Microsoft, yang akan membantu meringankan beban pada VPN dan membuat hidup pengguna lebih mudah saat bekerja jarak jauh.”

Klien DirectAccess diamankan dengan sertifikat yang dikeluarkan oleh infrastruktur kunci publik internal pribadi organisasi (PKI). Pada dasarnya, ini berfungsi sebagai jenis otentikasi multifaktor (MFA) untuk perangkat penghubung.

Baik Anda seorang pengembang, salah satu rekan mereka, atau pihak lain yang terlibat, bekerja online selalu menjadi tindakan penyeimbang akses versus keamanan. Tetapi ketika datang ke komunitas yang berpusat pada pengembang, teknologi tidak bisa menjadi satu-satunya solusi. Solusi tersebut harus diperiksa dan dirancang untuk kasus penggunaan tertentu.

“Ini bukan tentang memiliki banyak alat untuk berada di lingkungan yang aman; ini tentang mengadaptasi alat pilihan Anda dan mengintegrasikannya ke dalam ekosistem, orang, budaya, dan proses Anda, “kata Alexios Fakos, konsultan pelaksana di Synopsys. “Menurut pengalaman saya, keamanan adalah trade-off; Ini tentang menemukan keseimbangan yang tepat antara penerimaan / selera risiko, kegunaan, dan waktu / uang. Hasilnya biasanya adalah solusi ‘aman’ yang dapat diterima.”

Lingkungan CI/CD

Sama seperti organisasi pengembangan membuat trade-off antara keamanan dan akses untuk Jira dan Confluence, mereka mungkin perlu melakukan hal yang sama untuk lingkungan CI / CD dalam infrastruktur VPN mereka. Semua lingkungan CI/CD tidak diciptakan sama. Dan keamanan mereka mungkin tergantung pada alat mana yang melekat padanya.

“Berdasarkan klasifikasi risiko aplikasi Anda, Anda mungkin harus membangun beberapa lingkungan yang berbeda untuk CI / CD,” kata Rao, “dan juga memiliki lapisan keamanan yang berbeda yang diterapkan untuk mengamankan pipa CI / CD Anda.”

Tetapi di luar VPN, ada pertimbangan lain untuk mengamankan alur kerja pengembangan online. Jika pengembang bekerja dengan aset cloud, keamanan mungkin lebih mudah sampai tingkat tertentu. Bergantung pada strategi perusahaan, Anda dapat menggunakan lingkungan CI/CD cloud di Azure, AWS, GPC, atau platform lain yang tidak memerlukan VPN, menurut Fakos. Dia menyebut ini sebagai “lingkungan nomaden digital.”

Melampaui VPN

Bekerja di lingkungan CI/CD yang terhubung ke repositori kode, layanan cloud, Kubernetes, atau kontainer lainnya dapat menjadi rumit. Ini mungkin memerlukan solusi keamanan di luar VPN. Alat lain yang membantu menjaga keamanan di lingkungan CI/CD di luar VPN termasuk autentikasi dua faktor (2FA), akses menyeluruh, dan TLS/SSL.

“Karena ada beberapa alat yang tidak mendukung akses menyeluruh, memiliki otentikasi dua faktor adalah cara terbaik untuk mengamankan aset Anda yang paling berharga di organisasi Anda,” kata Rao. “Ada beberapa alat dan teknologi yang digunakan untuk membangun pipa CI / CD fungsional yang berfungsi. Untuk seorang insinyur otomasi, menjadi tantangan untuk melacak semua alat yang tidak mendukung sistem masuk tunggal, mengelola akses secara individual, dan mencabut akses ketika seseorang keluar dari proyek atau meninggalkan perusahaan. Mengamankan dan mengunci pipa CI/CD adalah cara terbaik untuk menghindari kehilangan atau kerusakan reputasi organisasi.”

Pemantauan, ancaman eksternal, analisis risiko, dan pemodelan ancaman

Pengembang sering kali fokus pada pengkodean dan, tergantung pada kecepatan siklus rilis mereka, terus-menerus memeriksa kode. Mereka cenderung memberikan prioritas yang lebih rendah untuk tugas-tugas yang mereka tidak percaya adalah inti dari misi itu – bahkan ketika menyangkut keamanan. Inisiatif keamanan perangkat lunak Anda perlu mengantisipasi dan menyelesaikan masalah ini. Agar pengembang tidak melewatkan langkah-langkah keamanan, Anda harus mencatat dan mengaudit semua tindakan pengembang dan terus memantau log tersebut, menurut Rao.

Tentu saja, personel di lingkungan CI / CD hanyalah satu titik kelemahan internal yang potensial. Organisasi pembangunan juga perlu mewaspadai ancaman eksternal. Masalah utama termasuk rekayasa sosial dan kompromi email bisnis. Tetapi Anda perlu tahu di mana peretas menemukan informasi yang memungkinkan mereka memberikan peluang sukses pada serangan mereka, karena mereka tidak akan berhenti untuk mengakses basis kode Anda.

“Penyerang mencari lingkungan CI / CD karena mereka memiliki kode sumber, perpustakaan Anda, rahasia, akses ke lingkungan cloud Anda, laporan cacat di dasbor Anda, dan kunci untuk lingkungan cloud Anda,” kata Rao. “Penyerang dapat dengan mudah menelusuri pekerjaan yang Anda posting untuk mendapatkan akses ke semua aset yang tercantum di atas. Memiliki kontrol akses yang tepat ke pipeline, mengelola rahasia, logging, dan audit adalah kunci untuk menjaga pipeline Anda tetap aman dan jauh dari tangan penyerang.”

Cari tahu apa yang tidak Anda ketahui

Mungkin ancaman terbesar terhadap lingkungan CI / CD adalah yang tidak Anda ketahui yang tidak Anda ketahui. Jika Anda diperingatkan, Anda bisa dipersenjatai terlebih dahulu. Dan saat penyebaran CI/CD melangkah lebih jauh, Anda harus merencanakan kemungkinan untuk menjaga lingkungan CI/CD Anda tetap aman dan efektif untuk pengembang jarak jauh.

“Lingkungan CI/CD memungkinkan penyebaran yang lebih cepat ke produksi tetapi juga menimbulkan ancaman besar bagi organisasi Anda jika tidak diamankan dengan benar,” kata Rao. “Perlakukan itu sebagai aset lain dalam organisasi Anda. Lakukan analisis risiko dan model ancaman untuk memahami semua aset yang terlibat, permukaan serangan yang berbeda, dan semua orang yang memiliki akses ke lingkungan. Membangun model ancaman secara efektif membekali Anda dengan pengetahuan untuk mengatasi kelemahan dengan menambahkan kontrol keamanan tambahan ke alur CI/CD Anda.”

LEAVE A RESPONSE

Your email address will not be published. Required fields are marked *