Laporkan Masalah

PERANCANGAN SISTEM BACKEND UNTUK LAB VIRTUAL PENTESTING BERBASIS KUBERNETES MENGGUNAKAN NODE.JS

MOCHAMMAD SHANDY FERDIANSYACH, Anni Karimatul Fauziyyah, S.Kom., M.Eng.

2024 | Tugas Akhir | D4 TEKNOLOGI JARINGAN

Dalam menghadapi tuntutan yang semakin meningkat terhadap keamanan siber, dibutuhkan solusi yang dapat memberikan pengujian penetrasi secara efisien dan skalabel. Salah satu tantangan utama dalam pembuatan lab virtual pentesting adalah membangun dan mengelola infrastruktur yang mampu menangani berbagai layanan dan skenario pengujian dengan cepat dan efektif. Saat ini, lab virtual pentesting masih menggunakan metode konvensional dengan virtual machine (VM) yang memerlukan pengelolaan yang kompleks. Lab virtual pentesting yang dibangun pada penelitian ini menggunakan API Node.js sebagai backend yang memiliki fitur untuk melakukan autodeployment dan autodelete layanan pada Kubernetes. Fitur-fitur tersebut terintegrasi dengan Kubernetes untuk menyediakan layanan lab virtual pentesting yang otomatis dan efisien. Penggunaan Node.js sebagai Application Programming Interface memungkinkan pengelolaan layanan-layanan tersebut dengan mudah melalui permintaan HTTP. Kubernetes digunakan sebagai infrastruktur untuk lab virtual pentesting karena kemampuannya dalam otomatisasi dan orkestrasi kontainer. Dengan Kubernetes, lab ini dapat membuat, menyalin, dan menghapus lingkungan pengujian yang terisolasi dengan mudah, serta mengelola siklus hidup layanan-layanan tersebut. Hal ini memungkinkan pengguna untuk fokus pada pengujian tanpa harus terlalu banyak memikirkan tentang konfigurasi infrastruktur yang rumit. Penggunaan Kubernetes sebagai infrastruktur untuk lab virtual pentesting juga memungkinkan fleksibilitas dalam penyebaran dan pengelolaan layanan-layanan yang dibutuhkan untuk pengujian pentesting.

In response to the increasing demands for cybersecurity, there is a need for solutions that provide efficient and scalable Penetration Testing. One of the main challenges in building a virtual pentesting lab is to create and manage infrastructure capable of handling various testing services and scenarios quickly and effectively. Currently, virtual pentesting labs still rely on conventional methods using virtual machines (VMs), which require complex management. The virtual pentesting lab developed in this study utilizes Node.js API as the backend, featuring autodeployment and autodeletion of services on Kubernetes. These features are integrated with Kubernetes to provide an automated and efficient virtual pentesting lab service. Using Node.js as the API base enables easy management of these services via HTTP requests. Kubernetes is chosen as the infrastructure for the virtual pentesting lab due to its automation and container orchestration capabilities. With Kubernetes, the lab can easily create, duplicate, and remove isolated testing environments, as well as manage the lifecycle of these services. This allows users to focus on testing without worrying too much about complex infrastructure configurations. Utilizing Kubernetes as the infrastructure for the virtual pentesting lab also enables flexibility in deploying and managing the required services for Penetration Testing.

Kata Kunci : Cybersecurity, Virtual Lab Pentesting, Virtual machine (VM), Kubernetes, Node.js, Application Programming Interface (API) and Backend.

  1. D4-2024-464274-abstract.pdf  
  2. D4-2024-464274-bibliography.pdf  
  3. D4-2024-464274-tableofcontent.pdf  
  4. D4-2024-464274-title.pdf