Skip to content
INOVATIF, PROFESIONAL, DAN BERKEPRIBADIAN
facebook
youtube
instagram
Pusat Pengelolaan Digitalisasi Penjaminan Mutu Universitas Medan Area
Call Support 0823-6994-9970
Email Support [email protected]
Location Jl. Kolam No. 1 Medan Estate
  • BERANDA
  • TENTANG
    • PROFIL
    • VISI DAN MISI
    • STRUKTUR ORGANISASI
  • BERITA KEGIATAN
  • KERJASAMA
  • LAYANAN & INFORMASI
    • APLIKASI
      • PERPUSTAKAAN UMA
      • ACADEMIC ONLINE CAMPUS (AOC)
      • REPOSITORI UMA
      • TRACER STUDY (ALUMNI)
      • JURNAL
      • E-LEARNING UMA
      • DIREKTORI MAHASISWA
    • ARSIP
      • PERUBAHAN DATA MAHASISWA DI PDDIKTI
      • Buku Pedoman Universitas Medan Area
      • KURIKULUM
        • Kurikulum Teknik
        • Kurikulum Pertanian
        • Kurikulum Ekonomi dan Bisnis
        • Kurikulum Hukum
        • Kurikulum Isipol
        • Kurikulum Psikologi
        • Kurikulum Saintek
        • Kurikulum Agama Islam
      • Kalender Akademik Universitas Medan Area
      • Artikel
    • Helpdesk P2DIK
  • id
    • en
    • id

Mengenal Secure Coding: Cara Menghindari Bug dan Vulnerability

Home > Artikel > Mengenal Secure Coding: Cara Menghindari Bug dan Vulnerability

Mengenal Secure Coding: Cara Menghindari Bug dan Vulnerability

Posted on 25 Maret 202526 Maret 2025 by Anisa Rahma Nasution
0

Pengertian Secure Coding : Cara Menghindari Bug dan Vulnerability

Secure coding adalah serangkaian praktik dan prinsip dalam pengembangan perangkat lunak yang bertujuan untuk menulis kode yang aman dan bebas dari celah keamanan (vulnerability). Secure coding bertujuan untuk mencegah eksploitasi keamanan yang dapat menyebabkan pencurian data, pengambilalihan sistem, atau gangguan layanan.

Mengapa Secure Coding Penting?

Secure coding sangat penting karena:

  1. Mengurangi Risiko Serangan – Mencegah berbagai ancaman keamanan seperti SQL Injection, Cross-Site Scripting (XSS), Buffer Overflow, Remote Code Execution (RCE), dan lainnya.

  2. Menjaga Keamanan Data – Mencegah kebocoran data sensitif seperti informasi pribadi pengguna, kredensial, dan data transaksi.

  3. Menghemat Biaya Perbaikan – Memperbaiki bug keamanan setelah aplikasi diluncurkan lebih mahal dibandingkan mencegahnya sejak awal.

  4. Mematuhi Regulasi Keamanan – Banyak regulasi seperti GDPR, ISO 27001, PCI DSS, yang mengharuskan organisasi menerapkan standar keamanan dalam pengembangan perangkat lunak.

  5. Meningkatkan Kepercayaan Pengguna – Aplikasi yang aman akan meningkatkan kepercayaan pengguna terhadap produk dan layanan.

Prinsip Dasar Secure Coding

Untuk mencapai keamanan dalam pengembangan perangkat lunak, terdapat beberapa prinsip utama yang harus diterapkan:

1. Validasi Input

  • Semua input yang diterima dari pengguna harus diperiksa dan divalidasi untuk mencegah serangan seperti SQL Injection, XSS, dan Command Injection.

  • Gunakan whitelisting (hanya menerima data yang diizinkan) daripada blacklisting (memblokir karakter tertentu).

  • Hindari menerima input langsung tanpa sanitasi, terutama dalam interaksi dengan database atau sistem operasi.

2. Pengelolaan Kredensial yang Aman

  • Jangan pernah menyimpan password dalam kode sumber (hardcoded credentials).

  • Gunakan environment variables atau layanan manajemen rahasia seperti AWS Secrets Manager atau Vault by HashiCorp.

  • Simpan password dengan algoritma hashing yang kuat seperti bcrypt, Argon2, atau PBKDF2.

3. Gunakan Enkripsi untuk Data Sensitif

  • Semua data sensitif seperti informasi pengguna, kartu kredit, dan token otentikasi harus dienkripsi sebelum disimpan atau dikirim melalui jaringan.

  • Gunakan enkripsi yang kuat seperti AES-256 untuk penyimpanan dan TLS 1.2 atau lebih baru untuk komunikasi jaringan.

4. Mencegah SQL Injection

  • Gunakan prepared statements dan parameterized queries untuk mencegah SQL Injection.

  • Jangan pernah membangun kueri SQL dengan string concatenation yang menerima input dari pengguna.

  • Gunakan Object-Relational Mapping (ORM) untuk mengelola interaksi dengan database dengan lebih aman.

Contoh Kode Rentan terhadap SQL Injection:

query = “SELECT * FROM users WHERE username = ‘” + username + “‘ AND password = ‘” + password + “‘;”
cursor.execute(query) # Rentan terhadap SQL Injection
Kode Aman Menggunakan Parameterized Query:
query = “SELECT * FROM users WHERE username = %s AND password = %s;”
cursor.execute(query, (username, password)) # Aman dari SQL Injection

5. Prinsip Least Privilege

  • Setiap komponen aplikasi, pengguna, atau proses harus memiliki hak akses minimum yang diperlukan untuk menjalankan tugasnya.

  • Jangan menjalankan aplikasi dengan hak administrator kecuali benar-benar diperlukan.

  • Gunakan Role-Based Access Control (RBAC) atau Attribute-Based Access Control (ABAC) untuk membatasi akses berdasarkan peran pengguna.

6. Penanganan Kesalahan dengan Aman

  • Jangan menampilkan informasi sensitif dalam pesan error.

  • Gunakan mekanisme logging yang aman untuk menyimpan error tanpa mengeksposnya kepada pengguna akhir.

  • Terapkan mekanisme error handling yang tepat untuk mencegah aplikasi crash akibat eksploitasi error.

Contoh Kode Rentan terhadap Information Disclosure:

try:
result = 10 / user_input
except Exception as e:
print(“Error terjadi: ” + str(e)) # Bisa mengekspos informasi internal

Kode Aman dengan Logging yang Benar:

import logging
logging.basicConfig(filename=’app.log’, level=logging.ERROR)

try:
result = 10 / user_input
except Exception as e:
logging.error(“Kesalahan terjadi”, exc_info=True)
print(“Terjadi kesalahan, silakan coba lagi.”) # Tidak mengungkap detail error

7. Perbarui Software dan Dependencies Secara Berkala

  • Selalu gunakan versi terbaru dari library dan framework yang digunakan dalam proyek.

  • Gunakan alat otomatis seperti Dependabot (GitHub), Snyk, atau OWASP Dependency-Check untuk memantau keamanan dependencies.

  • Hindari menggunakan library yang sudah tidak didukung atau tidak memiliki pembaruan keamanan.

Teknik dan Alat untuk Secure Coding

Untuk membantu menerapkan secure coding, ada beberapa teknik dan alat yang bisa digunakan:

Teknik Deskripsi
Static Code Analysis (SAST) Menganalisis kode sumber untuk mendeteksi potensi bug keamanan sebelum dijalankan. Contoh alat: SonarQube, Checkmarx, Fortify.
Dynamic Application Security Testing (DAST) Menguji keamanan aplikasi saat sedang berjalan. Contoh alat: OWASP ZAP, Burp Suite.
Dependency Scanning Memeriksa library yang digunakan untuk mengetahui apakah ada vulnerability yang diketahui. Contoh alat: Snyk, Dependabot, OWASP Dependency-Check.
Threat Modeling Menganalisis kemungkinan ancaman dan merancang strategi mitigasi sebelum kode ditulis.
Penetration Testing Simulasi serangan untuk mengidentifikasi kelemahan dalam sistem. Contoh alat: Metasploit, Kali Linux.

Secure coding adalah pendekatan dalam pengembangan perangkat lunak yang bertujuan untuk mengurangi risiko keamanan dengan menerapkan prinsip dan teknik tertentu. Dengan memahami dan menerapkan validasi input, enkripsi data, manajemen kredensial yang aman, penggunaan least privilege, serta pembaruan software secara berkala, pengembang dapat menciptakan aplikasi yang lebih aman dan andal.

Mengamankan kode sejak awal bukan hanya melindungi sistem dari serangan, tetapi juga menghemat biaya dan meningkatkan kepercayaan pengguna terhadap aplikasi yang dibuat.

 

Post Views: 504

p2dpm_uma

Jalan Kolam Nomor 1 Medan Estate

#PRESTASIDOSENUMA Selamat & Sukses Kepada 23 Dosen #PRESTASIDOSENUMA
Selamat & Sukses Kepada 23 Dosen Universitas Medan Area atas Penandatanganan Kontrak Program Penelitian & Pengabdian Kepada Masyarakat DPPM KEMDIKTISAINTEK Tahun Anggaran 2026
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #ptsterbaik #UMAkampusJuara #KampusUnggul
Get @reshare_app • @umabestari #REKORMURI Rektor U Get @reshare_app • @umabestari #REKORMURI
Rektor Universitas Medan Area Menjadi Salah Satu Pemateri Dalam Pemecahan Rekor MURI dalam Seminar 10 Pohon Ilmu dan Peserta Terbanyak yang di selenggarakan oleh Kantor LLDIKTI Wilayah I Sumut
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #PTSterbaik
#UMAkampusJuara #KampusUnggul
Get @reshare_app • @umabestari #KUNJUNGAN Kunjunga Get @reshare_app • @umabestari #KUNJUNGAN
Kunjungan Dr. dr. Delyuzar, M.Ked.(PA), Sp.PA(K), Ketua Umum Pengurus Wilayah (PW) Asosiasi Masjid Kampus
Indonesia (AMKI) Sumatera Utara ke Universitas Medan Area Dalam rangka melihat Pelaksanaan Pemotongan Hewan Qurban.
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #PTSterbaik
#UMAkampusJuara #KampusUnggul
Selamat Hari Raya Idul Adha 1447 H Selamat Hari Raya Idul Adha 1447 H
Yuk, buruan daftar sekarang! Yuk, buruan daftar sekarang!
Get @reshare_app • @umabestari #SOSIALISASI Dinas Get @reshare_app • @umabestari #SOSIALISASI
Dinas Pariwisata Medan dan Universitas Medan Area  berkolaborasi melaksanakan Sosialisasi Kompetisi Desain Logo HUT Kota Medan ke-436 Tahun 2026.
#PMBUMA2026 Yuk.. Join di Kampus Unggul Universi #PMBUMA2026 

Yuk.. Join di Kampus Unggul Universitas Medan Area. Dapatkan Beragam Fasilitas Pendidikan dan Beasiswa Hingga 100%. . 

Informasi dan Pendaftaran Mahasiswa Baru : 

➖➖➖➖➖➖➖
 https://pmb.uma.ac.id 
➖➖➖➖➖➖➖ 

Call Center UMA : 
☎️0811 6013 888 

#ptssehat #ptsterbaik #UMAkampusJuara
Get @reshare_app • @umabestari #JADWALUTSUMA Selam Get @reshare_app • @umabestari #JADWALUTSUMA
Selamat Melaksanakan Ujian Tengah Semester (UTS) Semester Genap Tahun Akademik 2025/2026 yang dilaksanakan tanggal 11 Mei s.d. 25 Mei 2026
.
Informasi dan Pendaftaran Mahasiswa Baru :
➖➖➖➖➖➖➖
https://pmb.uma.ac.id
➖➖➖➖➖➖➖

Call Center UMA :
☎️0811 6013 888

#ptssehat #ptsterbaik #UMAkampusJuara #KampusUnggul
Follow on Instagram

Lokasi P2DPM

url url url url url url url url url url url url

Kategori

  • Berita Terbaru
  • Pengumuman
  • Berita Kegiatan
  • Artikel

POSTINGAN TERPOPULER

  • Memahami Perbedaan Waktu: AM/PM, Zona Waktu, dan Sistem Jam
  • Cara Melihat IP Address di Semua Jenis Perangkat dan Jenis-Jenisnya
  • Dasar-Dasar Desain Grafis: Prinsip yang Harus Diketahui Pemula
  • Manfaat Pengelolaan Sumber Daya Alam Berkelanjutan Untuk Kehidupan
  • Pengertian Gelombang Longitudinal dan Contohnya dalam Kehidupan Sehari-Hari
KAMPUS 1
Jalan Kolam Nomor 1 Medan Estate / Jalan Gedung PBSI, Medan 20223
(061) 7360168, Call Canter : 0811-6013-888
[email protected]
KAMPUS 2
Jalan Sei Serayu Nomor 70 A / Jalan Setia Budi Nomor 79 B, Medan 20122
(061) 42402994, HP : 0811 607 259
[email protected]
© 2026 P2A2I - Universitas Medan Area