Skip to main content

HANDS-ON LAB & TUTORIAL

Python untuk Cyber Security: Membuat Tools Sederhana

Belajar python cyber security paling mudah dimulai dari tools kecil yang menyelesaikan satu masalah nyata. Di artikel ini Anda membuat tiga tools defensif dengan pustaka standar Python: pemeriksa integritas file, penghitung login SSH yang gagal, dan pengecek port di komputer sendiri. Semua contoh aman dijalankan di perangkat atau lab milik Anda.

Belajar python cyber security paling mudah dimulai dari tools kecil yang menyelesaikan satu masalah nyata. Di artikel ini Anda membuat tiga tools defensif dengan pustaka standar Python: pemeriksa integritas file, penghitung login SSH yang gagal, dan pengecek port di komputer sendiri. Semua contoh aman dijalankan di perangkat atau lab milik Anda.

Mengapa Python Cyber Security Menjadi Pilihan Banyak Praktisi?

Python punya sintaks yang mudah dibaca dan pustaka standar yang sudah mencakup soket jaringan (socket), hashing (hashlib), ekspresi reguler (re), dan pembuat angka acak yang aman untuk keperluan keamanan (secrets). Artinya Anda bisa mengotomatiskan pekerjaan rutin tanpa memasang paket tambahan. Di tim keamanan, skrip kecil lazim dipakai untuk mengolah log, memeriksa konfigurasi, memverifikasi file, dan menyambungkan keluaran satu tools ke tools lain.

Dalam praktik python cyber security, kemampuan scripting tidak wajib untuk masuk ke bidang ini, tetapi membuat Anda jauh lebih efisien. Pembahasan lengkapnya ada di artikel kami tentang apakah belajar cyber security harus bisa coding.

Persiapan: Python dan Virtual Environment

Pasang Python 3.11 atau lebih baru, karena tools pertama memakai fungsi hashlib.file_digest yang ditambahkan pada versi 3.11. Lalu buat virtual environment agar paket proyek tidak bercampur dengan sistem, seperti yang dijelaskan di tutorial resmi Python tentang venv:

python -m venv .venv

# Windows
.venv\Scripts\activate

# Linux atau macOS
source .venv/bin/activate

Ketiga contoh di bawah hanya memakai pustaka standar, jadi tidak ada yang perlu dipasang dengan pip.

Tiga Tools Python Cyber Security yang Bisa Anda Buat

1. Pemeriksa integritas file

Saat mengunduh installer atau menyimpan file penting, Anda perlu tahu apakah isinya berubah. Cara paling sederhana adalah menghitung hash SHA-256 lalu membandingkannya dengan checksum yang dipublikasikan penyedianya, atau dengan hash yang Anda simpan sebelumnya.

import hashlib
import sys


def sha256_file(path):
    with open(path, "rb") as f:
        return hashlib.file_digest(f, "sha256").hexdigest()


if __name__ == "__main__":
    for path in sys.argv[1:]:
        print(sha256_file(path), path)

Simpan sebagai cek_hash.py, lalu jalankan python cek_hash.py berkas.iso. Ingat bahwa SHA-256 cocok untuk memeriksa integritas, bukan untuk menyimpan password: dokumentasi hashlib sendiri menyebut hash umum seperti SHA-256 tidak cocok untuk hashing password. Perbedaan konsepnya dibahas di perbedaan hashing dan enkripsi.

2. Penghitung percobaan login SSH yang gagal

Server yang terbuka ke internet hampir pasti menerima tebakan password otomatis. Skrip berikut membaca log milik server Anda dan menghitung alamat IP dengan kegagalan login terbanyak. Pada Debian dan Ubuntu, log ini biasanya ada di /var/log/auth.log.

import re
import sys
from collections import Counter

POLA = re.compile(r"Failed password for (?:invalid user )?(\S+) from (\S+)")


def hitung_gagal(path_log):
    hitungan = Counter()
    with open(path_log, encoding="utf-8", errors="replace") as log:
        for baris in log:
            cocok = POLA.search(baris)
            if cocok:
                hitungan[cocok.group(2)] += 1
    return hitungan


if __name__ == "__main__":
    for ip, total in hitung_gagal(sys.argv[1]).most_common(10):
        print(f"{total:5d}  {ip}")

Hasilnya memberi gambaran sumber percobaan login terbanyak. Tindak lanjut yang masuk akal adalah mematikan login password dan memakai kunci SSH, serta memasang pemblokir otomatis.

3. Pengecek port terbuka di komputer sendiri

Setiap port yang terbuka adalah layanan yang harus Anda pertanggungjawabkan. Fungsi socket.create_connection mencoba terhubung ke pasangan host dan port dengan batas waktu, lalu melempar kesalahan jika gagal.

import socket


def terbuka(host, port, batas_waktu=1.0):
    try:
        with socket.create_connection((host, port), timeout=batas_waktu):
            return True
    except OSError:
        return False


for port in (22, 80, 443, 3306):
    status = "terbuka" if terbuka("127.0.0.1", port) else "tertutup"
    print(port, status)

Bandingkan hasilnya dengan daftar port yang memang Anda harapkan. Port yang tidak Anda kenal patut diselidiki. Untuk pemindaian yang lebih lengkap, gunakan Nmap seperti di tutorial Nmap untuk pemula.

Cara mengembangkan dan menulis skrip yang aman

Setelah ketiganya berjalan, tambahkan fitur secara bertahap. Simpan hash dasar dalam file JSON lalu bandingkan pada pemeriksaan berikutnya untuk mendeteksi perubahan. Gunakan modul argparse agar tools menerima opsi yang jelas, dan modul logging agar hasilnya terekam. Jika Anda perlu membuat token atau password acak untuk lab, gunakan modul secrets, bukan random: dokumentasi Python menegaskan bahwa secrets dirancang untuk keperluan keamanan, sedangkan random untuk simulasi.

Tulis juga dengan kebiasaan aman sejak awal: validasi semua masukan, jangan menanam kredensial di dalam kode, dan hindari menjalankan perintah shell dengan teks yang berasal dari pengguna. Tools keamanan yang ceroboh bisa menjadi celah baru.

Batas Hukum dan Etika Saat Membuat Tools

Contoh di atas sengaja diarahkan ke alamat lokal 127.0.0.1 dan file milik Anda sendiri. Menjalankan skrip pemindai atau pengumpul data terhadap sistem orang lain tanpa izin tertulis dapat melanggar UU ITE, apa pun niat Anda. Latihlah tools di lab pribadi atau pada layanan yang secara eksplisit mengizinkan pengujian. Ringkasan aspek hukumnya ada di penjelasan UU ITE.

Pertanyaan yang Sering Diajukan

Apakah Python saja cukup untuk berkarier di cyber security?

Python adalah alat yang sangat berguna, tetapi bukan pengganti pemahaman jaringan, sistem operasi Linux, dan konsep keamanan. Anggap Python sebagai pengali: semakin kuat fondasi Anda, semakin besar manfaat skrip yang Anda tulis.

Versi Python berapa yang sebaiknya dipakai?

Python 3.11 atau yang lebih baru. Fungsi hashlib.file_digest di contoh pertama baru tersedia sejak versi 3.11, sedangkan dua contoh lainnya berjalan di versi 3 yang lebih lama.

Bolehkah saya mengembangkan tools ini menjadi pemindai jaringan?

Boleh, selama target adalah jaringan yang Anda miliki atau yang memberi izin tertulis. Tanpa izin, pemindaian dapat dianggap akses atau percobaan akses ilegal.

Kesimpulan

Dengan tiga skrip pendek, Anda sudah menyentuh tiga pekerjaan nyata di dunia keamanan: verifikasi integritas, analisis log, dan audit port. Teruskan latihan python cyber security ini satu per satu, misalnya dengan menyimpan hash dasar ke file atau mengirim ringkasan log lewat email. Jika Anda ingin belajar terarah dengan mentor dan lab praktik, lihat daftar kursus Linuxhackingid.

Every article is reviewed by the practice lead who ran the work before it is published.

All insights

MORE ARTICLES

newest first
HANDS-ON LAB & TUTORIAL
October 29, 20267 read

Perintah Dasar Linux untuk Pemula Cyber Security

Menguasai perintah dasar linux adalah modal pertama bagi siapa pun yang ingin berkarier di cyber security, karena sebagian besar server, tools audit, dan lab latihan dijalankan lewat terminal. Artikel ini merangkum perintah yang paling sering dipakai, dikelompokkan berdasarkan tugasnya, dengan contoh yang aman dicoba di komputer atau mesin virtual milik Anda.

Ditulis oleh Tim Riset & Instruktur Praktisi Linuxhackingid | Editor Keamanan Informasi & Ethical Hacking
HANDS-ON LAB & TUTORIAL
October 29, 20267 read

Cara Menjalankan DeepSeek-R1 Secara Lokal di PC atau Laptop

Menjalankan DeepSeek-R1 secara lokal, atau deepseek offline, berarti model bahasa bekerja di komputer Anda sendiri sehingga prompt tidak dikirim ke server pihak lain. Dengan Ollama prosesnya hanya beberapa perintah, tetapi yang umumnya berjalan di PC adalah model distilasi berukuran kecil, bukan DeepSeek-R1 penuh yang berukuran 671 miliar parameter. Artikel ini menjelaskan pilihan ukuran, langkah pemasangan, dan cara mengamankannya.

Ditulis oleh Tim Riset & Instruktur Praktisi Linuxhackingid | Editor Keamanan Informasi & Ethical Hacking
HANDS-ON LAB & TUTORIAL
October 29, 20267 read

Membangun Lab Cyber Security di Windows dengan WSL dan VirtualBox

Lab cyber security di komputer sendiri adalah tempat berlatih yang legal: Anda bebas mencoba tools dan memahami kerentanan tanpa menyentuh sistem orang lain. Di Windows, kombinasi WSL untuk lingkungan command-line Linux dan VirtualBox untuk mesin virtual yang terisolasi sudah cukup untuk memulai. Artikel ini menjelaskan rancangan lab, langkah pemasangan, dan aturan keselamatannya.

Ditulis oleh Tim Riset & Instruktur Praktisi Linuxhackingid | Editor Keamanan Informasi & Ethical Hacking

Get the next advisory first. No digest, no noise.

One email when something genuinely matters - or follow the community channels where we post first.

Join Telegram

NEXT STEP

Talk to an operator, not a sales desk.

A short scoping call, then scope, schedule and cost in writing within 2 working days.

METHODOLOGY & COMPLIANCE
ISO 27001PCI-DSSOJKUU PDP