HOTLINE

(0275) 2974 127

CHAT WA 24/7
0859-60000-390 (Sales)
0852-8969-9009 (Support)
Blog

Apa Itu Shift-Left Security? Pengertian dan Penerapannya

Keamanan menjadi salah satu aspek penting dalam pengembangan aplikasi dan software. Kerentanan yang tidak ditemukan sejak awal dapat terbawa ke tahap pengujian, deployment, bahkan sampai aplikasi digunakan oleh pengguna. Karena itu, pendekatan keamanan modern tidak hanya menempatkan pemeriksaan keamanan menjelang software dirilis, tetapi berusaha memasukkannya sejak tahap awal pengembangan.

Pendekatan tersebut dikenal sebagai Shift-Left Security.

Apa Itu Shift-Left Security?

Shift-Left Security adalah pendekatan yang menggeser aktivitas keamanan ke tahap lebih awal dalam software development life cycle (SDLC). Artinya, keamanan tidak hanya diperiksa setelah aplikasi selesai dibuat, tetapi mulai dipertimbangkan sejak tahap perencanaan, desain, penulisan kode, pengujian, hingga proses deployment.

NIST, melalui publikasi resmi NIST SP 800-218 (Secure Software Development Framework/SSDF), menggunakan istilah shifting left untuk menggambarkan pentingnya memasukkan praktik keamanan lebih awal dalam SDLC. SSDF sendiri merupakan kumpulan praktik pengembangan software aman berbasis empat kategori utama Prepare the Organization (PO), Protect the Software (PS), Produce Well-Secured Software (PW), dan Respond to Vulnerabilities (RV) yang dapat diintegrasikan ke dalam berbagai model SDLC, baik waterfall, agile, maupun DevOps.

Dengan pendekatan ini, developer dan tim keamanan dapat menemukan potensi masalah ketika software masih dalam proses pengembangan. Misalnya, risiko akibat kode yang tidak aman, dependensi yang memiliki kerentanan, konfigurasi yang kurang tepat, atau desain aplikasi yang memiliki kelemahan keamanan dapat diperiksa sebelum aplikasi digunakan secara luas.

Mengapa Disebut “Shift-Left”?

Istilah shift-left berasal dari gambaran sederhana mengenai tahapan pengembangan software yang biasanya ditampilkan dari kiri ke kanan.

Secara umum, proses tersebut dapat digambarkan seperti:

Perencanaan → Desain → Coding → Testing → Deployment → Operasional

Dalam pendekatan tradisional, pemeriksaan keamanan sering kali lebih banyak dilakukan mendekati tahap akhir, misalnya ketika aplikasi sudah memasuki pengujian atau sebelum dirilis.

Shift-Left Security berusaha memindahkan sebagian aktivitas keamanan ke sebelah kiri, yaitu ke tahap yang lebih awal:

Perencanaan → Security → Desain → Security → Coding → Security Testing → Deployment

Dengan demikian, keamanan menjadi bagian dari proses pengembangan, bukan pemeriksaan yang hanya dilakukan menjelang aplikasi dirilis.

OWASP, melalui proyek DevSecOps Guideline, mendefinisikan shift-left security sebagai strategi menyematkan keamanan ke dalam proses pengembangan sejak tahap perancangan (inception), sehingga keamanan menjadi tanggung jawab semua pihak yang terlibat — bukan hanya tim keamanan. Pendekatan ini berkaitan erat dengan penerapan DevSecOps, yaitu memasukkan keamanan ke dalam proses pengembangan dan operasional software.

Shift-Left Security Bukan Berarti Keamanan Hanya Dilakukan di Awal

Hal penting yang perlu dipahami adalah bahwa shift-left bukan berarti pemeriksaan keamanan hanya dilakukan pada awal pengembangan.

Sebaliknya, keamanan perlu diterapkan secara berkelanjutan di berbagai tahap SDLC. Pemeriksaan pada tahap awal membantu mencegah dan menemukan masalah lebih cepat, sedangkan pengujian pada tahap berikutnya tetap diperlukan untuk menemukan masalah yang mungkin baru terlihat ketika aplikasi dijalankan atau berinteraksi dengan lingkungan tertentu.

NIST SSDF, misalnya, mencakup praktik untuk mempersiapkan organisasi (Prepare the Organization), melindungi software dan komponen yang digunakan (Protect the Software), menghasilkan software yang aman (Produce Well-Secured Software), serta merespons kerentanan yang ditemukan (Respond to Vulnerabilities).

Karena itu, Shift-Left Security lebih tepat dipahami sebagai perubahan cara menempatkan keamanan dalam proses pengembangan, bukan sekadar memindahkan satu jenis pengujian dari akhir ke awal.

Hubungan Shift-Left Security dengan SDLC

Software Development Life Cycle (SDLC) merupakan kerangka proses yang digunakan untuk mengembangkan dan memelihara software. Tahapannya dapat berbeda tergantung metode dan organisasi yang digunakan, tetapi umumnya mencakup aktivitas seperti perencanaan, desain, pengembangan, pengujian, deployment, dan pemeliharaan.

Masalahnya, hanya sedikit model SDLC yang secara eksplisit membahas keamanan software secara rinci. NIST menyebutkan bahwa praktik pengembangan software yang aman perlu ditambahkan ke setiap model SDLC agar keamanan menjadi bagian dari proses pengembangan.

Dalam konteks Shift-Left Security, aktivitas keamanan dapat dimasukkan ke berbagai tahap tersebut.

Contohnya:

  • Perencanaan: menentukan kebutuhan keamanan aplikasi.
  • Desain: mempertimbangkan potensi ancaman dan risiko keamanan.
  • Development: menerapkan secure coding dan pemeriksaan kode.
  • Testing: melakukan pengujian untuk menemukan kerentanan.
  • Deployment: memastikan konfigurasi dan proses rilis memenuhi persyaratan keamanan.
  • Maintenance: menangani kerentanan yang ditemukan setelah software digunakan.

Dengan cara ini, keamanan tidak menjadi tanggung jawab satu tim saja. Developer, tim keamanan, DevOps, dan pihak terkait lainnya dapat memiliki peran dalam menjaga keamanan software.

Shift-Left Security dan DevSecOps

Shift-Left Security juga memiliki hubungan erat dengan DevSecOps. DevSecOps menggabungkan praktik keamanan dengan proses DevOps sehingga keamanan dapat menjadi bagian dari alur pengembangan dan deployment.

OWASP menjelaskan bahwa pipeline DevOps menggunakan otomatisasi untuk mengintegrasikan berbagai aktivitas ke dalam langkah-langkah pipeline pengembangan dan rilis, termasuk penerapan CI/CD (Continuous Integration/Continuous Delivery atau Deployment).

Contohnya, pemeriksaan keamanan dapat diintegrasikan ke dalam CI/CD pipeline melalui beberapa jenis alat otomatis, seperti Static Application Security Testing (SAST) untuk memeriksa kode sumber, Software Composition Analysis (SCA) untuk memeriksa dependensi, serta Dynamic Application Security Testing (DAST) untuk menguji aplikasi saat berjalan. Ketika developer melakukan perubahan kode, sistem dapat menjalankan pemeriksaan-pemeriksaan tersebut secara otomatis sebelum perubahan diteruskan ke tahap berikutnya.

Pendekatan ini membantu membuat keamanan menjadi bagian dari workflow sehari-hari, bukan aktivitas terpisah yang baru dilakukan ketika aplikasi hampir selesai.

NIST, melalui proyek National Cybersecurity Center of Excellence (NCCoE), juga terus mengembangkan panduan dan proyek demonstrasi yang menunjukkan bagaimana praktik SSDF dapat diterapkan dalam lingkungan DevSecOps menggunakan teknologi pipeline modern.

Contoh Sederhana Penerapan Shift-Left Security

Sebagai contoh, sebuah tim sedang mengembangkan aplikasi web.

Dalam pendekatan yang lebih tradisional, tim mungkin menyelesaikan sebagian besar aplikasi terlebih dahulu, kemudian melakukan security testing menjelang proses deployment. Jika ditemukan kerentanan, developer harus kembali ke kode yang sudah cukup banyak dikembangkan untuk melakukan perbaikan.

Dalam pendekatan Shift-Left Security, beberapa pemeriksaan keamanan sudah dilakukan selama proses pengembangan.

Misalnya:

  1. Tim menentukan kebutuhan keamanan sejak tahap perencanaan.
  2. Developer mempertimbangkan risiko keamanan ketika merancang fitur.
  3. Kode diperiksa untuk menemukan pola yang berpotensi tidak aman.
  4. Dependensi software diperiksa untuk mengetahui adanya kerentanan yang sudah diketahui.
  5. Pengujian keamanan dijalankan sebagai bagian dari pipeline.
  6. Temuan yang dianggap penting diperbaiki sebelum perubahan diteruskan ke tahap berikutnya.

Pendekatan seperti ini tidak menghilangkan seluruh risiko keamanan. Namun, tujuannya adalah membuat keamanan menjadi proses yang dilakukan lebih awal, lebih rutin, dan lebih terintegrasi dengan aktivitas pengembangan.

Kesimpulan

Shift-Left Security adalah pendekatan untuk mengintegrasikan keamanan sedini mungkin dalam proses pengembangan software. Daripada menjadikan keamanan sebagai pemeriksaan terakhir sebelum aplikasi dirilis, pendekatan ini memasukkan pertimbangan dan pengujian keamanan sejak tahap perencanaan, desain, coding, testing, hingga deployment.

NIST melalui SSDF (NIST SP 800-218) menekankan pentingnya praktik pengembangan software yang aman untuk membantu mengurangi kerentanan dan menangani akar penyebab masalah keamanan. Sementara itu, OWASP mengaitkan penerapan shift-left dengan otomatisasi dan integrasi keamanan dalam pipeline DevSecOps.

Ingin mempelajari lebih banyak seputar web development, cloud computing, keamanan siber, server, hingga berbagai tren teknologi terbaru? Kunjungi blog Hosteko untuk mendapatkan artikel yang informatif, mudah dipahami, dan selalu diperbarui mengikuti perkembangan dunia digital.

Jangan lewatkan berbagai panduan, tips, serta tutorial yang dapat membantu Anda mengembangkan website, meningkatkan performa bisnis online, dan memperluas wawasan di bidang teknologi. Temukan artikel menarik lainnya hanya di Hosteko Blog dan terus ikuti informasi terbaru untuk mendukung perjalanan digital Anda.

5/5 - (5 votes)
Mulki A. A

Recent Posts

Mengenal Service Discovery: Teknologi yang Membuat Microservices Lebih Fleksibel

Dalam aplikasi modern, terutama yang menggunakan microservices, sebuah aplikasi biasanya tidak hanya terdiri dari satu…

43 minutes ago

Apa Itu SSL/TLS? Jangan Anggap Website Aman Tanpa Memahami Ini

Ketika mengakses sebuah website, terutama website yang digunakan untuk login, transaksi, atau mengirimkan data pribadi,…

4 hours ago

Mengenal Region pada Cloud Computing: Faktor Penting yang Sering Diabaikan

Region pada Cloud computing memungkinkan perusahaan dan pengguna menjalankan aplikasi, menyimpan data, serta menggunakan berbagai…

2 days ago

Windows Belum Aktif: Apakah Berbahaya? Ini Penjelasannya

Windows Belum Aktif: Apakah Berbahaya dan Apa yang Perlu Dilakukan? Ketika Windows menampilkan pesan "Activate…

2 days ago

Prompt Chaining: Teknik AI Bikin Tugas Rumit Jadi Lebih Mudah

Perkembangan Artificial Intelligence (AI) membuat penggunaan model bahasa seperti Large Language Model (LLM) semakin luas.…

2 days ago

Risiko Aktivasi Windows Pakai Crack atau Activator, Ini Bahayanya

Ketika Windows belum aktif, sebagian pengguna mungkin mencari cara untuk mengaktifkannya tanpa membeli lisensi. Salah…

2 days ago