Phishing Simulation with GoPhish

Phishing Simulation with GoPhish

Pendahuluan

Phishing adalah serangan yang dilakukan dengan cara mempengaruhi seseorang untuk memberikan informasi pribadi atau rahasia. Serangan ini biasanya dilakukan dengan cara mengirimkan email palsu yang menyerupai email resmi dari perusahaan atau organisasi tertentu. Dalam serangan phishing, penyerang akan mencoba untuk memperoleh informasi sensitif seperti username, password, hingga informasi kartu kredit.

Sebagai organisasi yang sadar akan keamanan informasi, penting bagi kita untuk melakukan simulasi phishing secara berkala. Dengan melakukan simulasi phishing, kita dapat mengukur tingkat keberhasilan user kita dalam mengidentifikasi serangan phishing dan mengambil tindakan yang tepat. Serangan phishing yang berhasil dapat menyebabkan kerugian finansial dan reputasi bagi organisasi.

Baca: Serangan Phishing dan Pencegahannya

GoPhish adalah salah satu tools open-source yang dapat digunakan untuk melakukan simulasi phishing. Dengan GoPhish, kita dapat membuat email phishing yang menyerupai email resmi dari perusahaan atau organisasi tertentu. kita juga dapat mengukur tingkat keberhasilan serangan phishing dan mengidentifikasi karyawan yang rentan terhadap serangan phishing dan dapat meminimalisirkan risiko serangan phishing pada karyawan dan organisasi kita.

Persiapan

Sebelum melakukan simulasi phishing dengan GoPhish, kita perlu melakukan beberapa persiapan sebagai berikut:

0. Preparation

  • Server (VPS as GoPhish Server and Landing Page)
  • Domain (Domain for Landing Page to catch user input, better typosquatting or unregistered tld)
  • TLS Certificate (SSL Certificate for Landing Page)
  • SMTP Sender (Email Sender for Phishing Email)

1. Install GoPhish

  • Download GoPhish melalui https://github.com/gophish/gophish/releases/ disini saya menggunakan GoPhish versi 0.12.1
  • Extract GoPhish pada server yang telah disiapkan dan di directory yang diinginkan
  • Tambahkan permission executable dan jalankan file gophsih

secara default password GoPhish tergenerate secara random sehingga perlu dicek pada log output ketika menjalankan GoPhish

Username Password GoPhish

Untuk mengakses console GoPhish saya lebih suka menggunakan localhost:3333 pada browser sehingga console tidak terekspose ke internet. Untuk mengakses console dapat menggunakan SSH Tunneling untuk mengakses GoPhish melalui web browser mesin kita

ssh -L 3333:localhost:3333 user@server

2. Konfigurasi GoPhish

  • Masukkan Sending Profile
Sending Profile GoPhish

Sending Profile adalah konfigurasi SMTP server yang digunakan untuk mengirim email phishing. Kita dapat menggunakan SMTP server internal atau eksternal untuk mengirim email phishing, di sini saya menggunakan Google Suite sebagai SMTP server namun saya menggunakan delayer untuk pengiriman sehingga konfigurasi IP Port sesuai dengan delayer yang saya gunakan

  • Masukan Landing Page

Landing Page adalah halaman web yang digunakan untuk menangkap informasi sensitif dari korban. Saya menggunakan landing page yang mirip dengan login Microsoft 365 karena target saya adalah organisasi yang menggunakan Microsoft 365 sebagai day-to-day operation.

Landing Page Configuration
  • Masukan Email Template

Email Template adalah email yang dikirimkan dan digunakan untuk mempengaruhi korban untuk melakukan sebuah action (Call to Action), umumnya email phishing menyerupai email resmi dari perusahaan atau sebuah sistem otomatis. Saya menggunakan email phishing yang menyerupai email resmi dari Microsoft 365 untuk menarik perhatian korban dengan menginformasikan bahwa perlu dilakukan update sistem dan meminta korban untuk login ke landing page.

Email Template Gophish
  • Masukan User dan Group

User dan Group adalah target dari simulasi phishing yang akan dilakukan. Kita dapat menambahkan user dan group secara manual atau mengimpor user dan group dari file CSV, untuk simulasi phishing saya menambahkan user dari hasil export user dari Microsoft 365 karena memang phishing ini adalah kegiatan yang legal dan diizinkan oleh perusahaan

User and Groups GoPhish

3. Konfigurasi Server

  • Setup SSL/TLS Certificate

Di sini saya menggunakan Let’s Encrypt untuk mendapatkan SSL/TLS Certificate untuk landing page yang digunakan dalam simulasi phishing. Kita dapat menggunakan Certbot untuk mendapatkan SSL/TLS Certificate dari Let’s Encrypt.

  • Setup nginx sebagai reverse proxy

Karena kita tidak ingin GoPhish terekspose ke internet, kita dapat menggunakan nginx sebagai reverse proxy untuk meneruskan request dari internet ke GoPhish. Kita juga dapat menggunakan nginx untuk mengatur SSL/TLS Certificate yang telah kita dapatkan dari Let’s Encrypt.

$ cat /etc/nginx/sites-available/default
server {
        listen 443 ssl;
        listen [::]:443 ssl;

        server_name domain.id;

        ssl_certificate     /etc/letsencrypt/live/domain.id/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/domain.id/privkey.pem;

        location / {
          proxy_pass http://127.0.0.1/;
        }
}
  • Setup delayer (Optional)

Disini kita menambahkan delayer saat mengirim email phishing untuk menghindari email masuk ke spam folder, sehingga alur email yang akan dikirimkan adalah sebagai berikut:

Gophish Console → Delayer → SMTP Server → Victim Inbox

Baca: SMTP Relay Queue

  • Setup SMTP/Google Suite

Kita menggunakan external SMTP server untuk mengirim email phishing, di sini saya menggunakan Google Suite sebagai SMTP server. Lalu, kita perlu mengkonfigurasi Google Suite untuk mengizinkan aplikasi pihak ketiga untuk mengirim email melalui SMTP server Google Suite.

Login sebagai admin Google Suite -> Security -> API Controls -> Manage Third-Party App Access -> Enable less secure apps

Lalu kita perlu mengaktifkan multi-factor authentication (MFA) pada akun Google Suite yang digunakan dan membuat app password untuk GoPhish.

Tentunya jangan lupa mengkonfigurasikan SPF, DKIM, dan DMARC pada DNS record domain kita agar email phishing tidak masuk ke spam folder

Baca: Konfigurasi SPF DKIM dan DMARC

Setelah melakukan konfigurasi tersebut kita bisa menggunakan Google Suite sebagai SMTP server pada GoPhish atau menggunakan delayer dengan menjalankan script python sebelumnya: SMTP Relay Queue, jangan lupa konfigurasi username dan password SMTP Google suite pada script python tersebut

GoPhish Nginx Reverse Proxy

Pada konfigurasi SMTP saya menambahkan header X-Mailer karena secara default value dari header X-Mailer adalah GoPhish sehingga email phishing dapat masuk ke spam folder

Eksekusi Simulasi Phishing

4. Kirim Email Phishing

Setelah melakukan konfigurasi GoPhish, kita dapat mengirim email phishing ke target yang telah ditentukan. Kita dapat melihat statistik email phishing yang telah dikirim melalui console GoPhish dan mengukur tingkat keberhasilan serangan phishing.

Untuk melakukan pengiriman email phishing, kita dapat menggunakan fitur campaign pada GoPhish. Kita dapat membuat campaign baru, menambahkan email template, dan menentukan target yang telah dibuat sebelumnya. Setelah campaign selesai, kita dapat melihat statistik email phishing yang telah dikirim melalui console GoPhish.

Note: Jangan lupa jalankan delayer agar email segera dikirimkan

5. Analisa Hasil dan Mitigasi

GoPhish Dashboard

Setelah melakukan simulasi phishing, kita dapat menganalisa hasil dari simulasi phishing yang telah dilakukan. Kita dapat melihat statistik dari campaign yang telah dibuat seperti jumlah email yang berhasil dikirim, jumlah email yang dibuka, jumlah link yang diklik, dan jumlah informasi sensitif yang berhasil ditangkap.

Tentukan tingkat keberhasilan serangan phishing dan identifikasi karyawan yang rentan terhadap serangan phishing, seperti persentase karyawan yang mengklik link phishing, memasukkan informasi sensitif pada landing page, dan membuka email phishing.

Selain itu, Kita juga dapat mengambil tindakan lanjutan seperti memberikan pelatihan keamanan informasi kepada karyawan dan memperbarui kebijakan keamanan informasi yang ada pada organisasi

Kesimpulan

Kegiatan simulasi phishing dengan GoPhish dapat membantu organisasi untuk mengukur tingkat keberhasilan serangan phishing dan mengidentifikasi karyawan yang rentan terhadap serangan phishing.

Dengan melakukan simulasi phishing secara berkala 1 kali dalam satu tahun, organisasi dapat meningkatkan kesadaran keamanan informasi karyawan dan mengurangi risiko serangan phishing. Selain itu, karyawan dan organisasi juga dapat mengambil tindakan yang tepat ketika serangan phishing terjadi pada individu atau organisasi tersebut.

Tips and Tricks

  • Gunakan domain yang mirip dengan domain asli untuk landing page agar korban tidak curiga.
  • Konfigurasikan SPF, DKIM, dan DMARC pada DNS record domain kita agar email phishing tidak masuk ke spam folder.
  • Rubah header X-Mailer pada email phishing agar email phishing tidak masuk ke spam folder.
  • Gunakan email template yang menyerupai email resmi dari perusahaan korban atau sistem otomatis (expired password) yang ada pada perusahaan korban.
  • Gunakan SSL/TLS Certificate agar landing page terlihat lebih profesional dan aman.
  • Allow domain GoPhish pada email server korban agar email phishing dapat masuk ke inbox korban referensi: Allow Domain for Phishing Simulation

Baca: Simulasi Phishing dan ClickFix menggunakan GoPhish

See you in the next write up!

Jika kalian mendapatkan kesulitan dalam melakukan simulasi phishing dengan GoPhish, kalian dapat menanambahkan komentar pada halaman ini atau menghubungi saya melalui email atau social media yang ada di halaman About. Sangat dengan senang hati membantu kalian dalam melakukan simulasi phishing dengan GoPhish demi meningkatkan kesadaran keamanan informasi bersama.

Ingat: Phishing adalah kegiatan yang illegal, diatur oleh undang-undang dan dapat merugikan orang lain, pastikan kegiatan simulasi phishing dilakukan dengan izin dari pihak yang bersangkutan sehingga tidak merugikan pihak manapun.