Block Spoofed Emails

Mitigation Strategy #19 – Block Spoofed Emails

1. Overview

Artikel ini berisi mengenai salah satu permasalahan pada keamanan informasi, yaitu email spoofing. Penjelasan yang ada pada artikel ini mencakup deskripsi, permasalahan yang dapat muncul karena email spoofing, dan strategi mitigasi untuk mencegah kebocoran keamanan informasi dengan melakukan block spoofed emails.

Email spoofing dapat mengganggu keamanan suatu sistem, karena dapat menyebabkan hilangnya kerahasiaan informasi-informasi sensitif. Kerahasiaan (confidentiality) adalah salah satu dari tiga atribut utama keamanan informasi.

Gambar 1Gambar 1 Tiga atribut utama keamanan informasi

Pengeblokan spoofed email termasuk dalam “Top 35 Mitigations Strategy for Targeted Cyber Intrusions” yang dirilis oleh Department of Defence dari pemerintah Australia [1].

2. Deskripsi Spoofed Emails – Apa itu email spoofing?

Pernahkah Anda menerima suatu email yang tampak berasal dari administrator suatu sistem, pihak bank, atau pemerintah

Email spoofing dapat muncul dalam berbagai bentuk, namun memiliki hasil yang sama, yaitu seseorang menerima email yang tampak berasal dari suatu sumber, padahal email ini dikirimkan oleh sumber yang berbeda [2]. Email spoofing sering digunakan untuk menipu user untuk mengeluarkan pernyataan yang sensitif, misal password.

Email spoofing dapat didefinisikan sebagai pemalsuan atau modifikasi header dari suatu email sehingga email yang diterima oleh seorang user tampak seperti dikirimkan oleh suatu sumber yang bukan sumber asli email [3]. Email spoofing dapat digunakan oleh distributor spam untuk membuat user penerima email lebih terbuka dan merespon spam yang dikirimkan.

Contoh bentuk spoofed email yang dapat mempengaruhi keamanan :

–          Email yang tampak berasal dari administrator suatu sistem, yang meminta supaya user mengubah password ke string tertentu, dengan ancaman memblokir akun user

–          Email yang tampak berasal dari pihak dengan otoritas yang meminta user mengirimkan file berisi informasi penting, seperti password dan lain-lain

Pada Gambar 2, dapat diamati spoofed email yang dikirimkan seolah-olah dari pihak administrator untuk mengubah password user ke string tertentu.

Gambar_02_spoofed_emailGambar 2 Spoofed email example.

3. Mengapa, Bagaimana melakukan Email Spoofing?

Standar protokol yang digunakan untuk melakukan proses transmisi email melalui IP adalah Simple Mail Transfer Protocol (SMTP). Spoofed emails dapat dibuat karena SMTP tidak memiliki proses autentikasi yang baik. Siapapun dapat melakukan koneksi ke SMTP suatu situs dan memberikan perintah untuk mengirimkan spoofed email. Untuk melakukan email spoofing, pengirim memberikan perintah ke header email yang dapat mengubah informasi yang ada pada email, seperti identitas pengirim, isi email, dan lain-lain.

BlockSpoofedEmail_Gambar_03_SMTP

Gambar 3 SMTP

4. Overview Block Spoofed Emails as Mitigations Strategy

Dalam melakukan pengeblokan spoofed emails, dapat digunakan dua metode, yaitu Sender Policy Framework (SPF) dan DomainKeys Identified Mail (DKIM). SPF menunjukkan mail server mana yang memiliki otoritas untuk mengirimkan email [4]. Server email penerima akan melakukan pengecekan apakah email yang diterima didapatkan dari server email yang memiliki otoritas. Pengecekan ini akan memverifikasi bahwa email datang dari server yang memiliki otoritas.

Berbeda dengan SPF, DKIM bekerja dengan cara menambahkan informasi tertentu ke dalam email sehingga email sulit dipalsukan. DKIM menambahkan suatu digital signature, sehingga penerima dapat melakukan pengecekan apakah signature yang diberikan pada email sesuai.

5. Sender Policy Framework (SPF)

Pada bagian berikut akan dibahas mengenai Sender Policy Framework (SPF) sebagai salah satu teknik untuk mengeblok spoofed emails [5].

5.1 Apa itu SPF?

SPF adalah suatu sistem validasi email yang dibuat untuk mendeteksi dan mengeblok spoofed emails. SPF melakukan deteksi dan pengeblokan email dengan cara verifikasi server email pengirim sebelum meneruskan email ke penerima.

SPF memungkinkan pengguna untuk menspesifikasikan server yang diperbolehkan untuk mengirim email pada domain mereka, dan dapat memberikan informasi untuk dicek oleh penerima. Pemilik domain dapat menghindari penggunaan domain mereka untuk spoofing dengan membuat SPF record, yang berisi daftar domain atau IP address valid yang memiliki otoritas mengirim email untuk domain mereka.

Dari pihak penerima email, server penerima yang memiliki fasilitas pengecekan SPF dapat melakukan validasi keabsahan pengirim dengan mengecek SPF record yang sudah dibuat oleh domain pengirim email.

Prosedur sejenis SPF juga digunakan oleh server email Microsoft Exchange dengan nama “Sender ID”.

5.2 SPF Implementation

Seperti dibahas pada bagian sebelumnya, SPF diimplementasi dalam dua bagian, yaitu bagian checking (penerima) dan publishing (pengirim).

  1. SPF Checking

SPF Checking diimplementasikan untuk mengecek validitas email yang masuk. Pengecekan yang dilakukan adalah apakah email dikirimkan oleh sumber dengan otoritas.

2.   SPF Publishing

SPF Publishing memungkinkan publikasi email server yang memiliki otoritas untuk mengirimkan email.

5.3 SPF Checking Steps

  1. Pasang SPF software yang compatible dengan server email yang digunakan, misal SpamAssassin dari Apache
  2. Daftar software yang memanfaatkan SPF dapat diamati pada [6]
  3. Ada dua metoda yang dapat dipilih dalam menangani spoofed email. Metoda pertama adalah “hard-fail”, yaitu spoofed email tidak diteruskan dan diblok di gateway. Metoda kedua adalah “soft-fail”, yaitu meneruskan spoofed email ke penerima dengan menambahkan flag.
  4. Atur dan uji SPF software yang dipasang, apakah compatible
  5. Monitoring log SPF untuk mendeteksi email legitimate yang dianggap spoofed (false negative).

5.4 SPF Publishing Steps

  1. Tentukan outgoing mail server yang digunakan
  2. Pastikan HELO/EHLO mengirimkan hostname yang valid. HELO/EHLO adalah mekanisme identifikasi sederhana yang mengandalkan DNS hostname di proses SMTP. Pastikan proses identifikasi dengan HELO menggunakan hostname yang valid
  3. Buat SPF Record dengan syntax seperti pada contoh:

agency.gov.au. IN TXT v=spf1 a mx a: domain1.gov.au a: domain2.gov.au ipaddress1 ipaddress2 -all

  4.   Dengan keterangan:

  • agency.gov.au. nama domain
  • v=spf1 mendefinisikan versi SPF yang digunakan
  • a dan mx mendefinisikan email server yang memiliki otoritas
  • a: domain1.gov.au a: domain2.gov.au ipaddress1 ipaddress2 adalah daftar yang dapat mengirimkan email
  • -all  menspesifikasikan metoda penanganan “hard-fail”

5.   Jika domain memang dibuat tanpa fasilitas pengiriman email, syntax dapat langsung berupa:

agency.gov.au. IN TXT v=spf1 -all

 6.   Untuk memilih metoda “soft-fail”, dapat dilakukan dengan mengganti –all menjadi ~all

 7.   Berikan informasi pada user mengenai penggunaan SPF dan cara penanganan (soft atau hard-fail). User juga dapat memberikan laporan mengenai kesalahan-kesalahan yang terjadi di lapangan.

 8.   Pengetesan dan deployment SPF

 9.   Monitoring log SPF

Untuk contoh mail server yang memanfaatkan SPF dapat diamati pada Gambar 4 dan Gambar 5. Gambar 4 dan Gambar 5 menunjukkan tampilan cpanel dari suatu domain yang menggunakan mail server Atmail. Untuk SPF checking, domain ini menggunakan SpamAssassin seperti tampak pada Gambar 4. SpamAssassin dalam melakukan filtering spoofed email menggunakan metode SPF [6]. Sedangkan pada Gambar 5, dapat diamati fasilitas SPF Publishing yang disediakan pada domain. Administrator dapat memasukkan SPF record seperti yang ditunjukkan pada step-step sebelumnya.

BlockSpoofedEmail_Gambar_04_Spamassassin

Gambar 4 SpamAssassin

BlockSpoofedEmail_Gambar_05_SPF

Gambar 5 Fasilitas SPF Publishing pada suatu domain

5.5 Kekurangan SPF

SPF dapat dengan baik melakukan pengeblokan terhadap spoofed email dari external. Namun, SPF tidak dapat melakukan pengeblokan terhadap spoofed email yang berasal dari dalam (cross-user forgery), yaitu saat seorang user dalam suatu domain membuat spoofed email menggunakan address user lain dalam domain tersebut.

6. Pengguna SPF

Pada bagian ini akan diberikan daftar pengguna SPF [6]. Software anti spam seperti SpamAssassin v3.0.0 dan ASSP menggunakan SPF. Selain itu, banyak Mail Transfer Agent (MTA) yang memanfaatkan SPF sebagai mitigasi, yaitu Courier, CommuniGate Pro, Wildcat, mdaemon, dan Microsoft Exchange. Selain itu, beberapa MTA juga memiliki plug-in yang dapat mendukung penggunaan SPF, seperti Postfix, Sendmail, Exim, qmail, dan Qpsmtpd.

7. DomainKeys Identified Mail (DKIM)

Berbeda dengan SPF, DomainKeys Identified Mail adalah metode autentikasi email berbasis cryptographic signing [7]. DKIM dibuat dari merger antara Yahoo! DomainKeys dan Identified Internet Mail (IIM) milik Cisco.

DKIM dilakukan dengan cara organisasi pengirim email membubuhkan tanda tangan digital (digital signature) yang berhubungan dengan domain name dari organisasi tersebut. Pembubuhan tanda tangan digital dapat dilakukan oleh organisasi pengirim sendiri maupun pihak ketiga yang diberi otoritas. Biasanya, pembubuhan tanda tangan dilakukan oleh Mail Transfer Agent (MTA) atau MSA dari organisasi.

Sama dengan pada SPF, DKIM dilakukan dengan menggunakan suatu DNS record yaitu DKIM-Signature: header field. Mekanisme penggunaan DKIM [8] dapat diamati pada Gambar 6 berikut. Pada Gambar 6, dapat diamati arsitektur sistem DKIM. DKIM menggunakan asymmetric encryption, yaitu menggunakan sepasang public key dan private key.

BlockSpoofedEmail_Gambar_06_DKIMArchitecture

Gambar 6 Arsitektur Sistem DKIM

Mekanisme DKIM dapat dibagi menjadi dua bagian utama, yaitu proses Signing dan proses Verifying. Pada proses Signing dengan SDID (Signing Domain Identifier), digunakan private key yang dimiliki oleh pihak pemberi tanda tangan. Proses Signing dilakukan di dalam Administration Management Domain (ADMD) pengirim. Proses verifying dilakukan di dalam ADMD delivery dengan menggunakan informasi pada data public key. Jika pasangan kunci sesuai (signature verifying pass), dilakukan proses assessment pada signature berdasarkan reputasi pemberi tanda tangan. Informasi ini akan diberikan pada engine filtering DKIM. Jika verifying gagal atau tidak ada signature pada email. akan dilakukan pengecekan apakah memang tidak diperlukan tanda tangan, atau email yang diterima merupakan spoofed-email.

Sama seperti SPF yang merupakan metoda dengan dua sisi pengguna, DKIM juga membutuhkan peran baik dari pengirim maupun penerima email. Pada pihak pengirim, proses dilakukan biasanya di Outbound MTA . Proses pembubuhan tanda tangan digital tentu membutuhkan suatu software yang dapat:

  • Memperoleh private key yang bersangkutan
  • Melakukan perhitungan (hashing, pembuatan signature, pembuatan key)
  • Membubuhkan signature (message header field DKIM-Signature: ).

Pihak penerima email juga memerlukan perangkat yang dapat:

  • Memperoleh public key yang bersangkutan
  • Melakukan perhitungan (hashing, verifikasi signature)
  • Memberikan hasil verifikasi ke filtering engine.

Pada Gambar 7, ditunjukkan fasilitas DKIM yang disediakan pada suatu domain.

BlockSpoofedEmail_Gambar_07_DKIM

Gambar 7 Fasilitas DKIM pada suatu domain

8. Pengguna DKIM

Pada tabel berikut dapat diamati beberapa organisasi dan software yang menggunakan DKIM. Untuk lebih lengkap dapat dilihat pada [9]. Keterangan pada Tabel 1, MTA adalah Mail Transfer Agent, Filter adalah Email Filtering Engine, dan Send adalah Email Sending Engine. Dari Tabel 1, dapat diamati bahwa DKIM banyak digunakan, baik sebagai Mail Transfer Agent, Email Filtering Engine, maupun Email Sending Engine.

 Tabel 1 List Pengguna DKIM

Organisasi

Package

Role

ALT-N

mdaemon

MTA

Apache

SpamAssassin

Filter

IceWarp Software

IceWarp Server 9

MTA

Port25

Power MTA

MTA

Postfix

Postfix using dkim-milter

MTA

Sendmail

dkim-milter

Filter

Strongmail

Strongmail

Multiple

messagesystems

Ecelerity

MTA

ColdSpark

SparkEngine

Send

Zrinity

XMS

MTA, Filter

Barracuda Networks, Inc

Barracuda Spam Firewall

Filter

EXIM

EXIM

MTA

Google

gmail.com, googlemail.com, google.com

MTA

9. Contoh Insiden

Ada beberapa contoh insiden yang disebabkan oleh spoofed emails. Pada artikel ini, akan diberikan dua buah contoh insiden spoofing email. Contoh insiden pertama terjadi pada tahun 2012, dimana Japan Bank for International Cooperation (JBIC) menjadi korban email spoofing [10]. Kasus email spoofing yang terjadi ini didahului oleh infeksi virus Trojan pada salah satu PC staff JBIC. Virus trojan ini mengakibatkan beberapa informasi yang ada pada sistem JBIC bocor, sehingga dapat digunakan untuk membuat spoofed emails semakin terlihat valid (legitimate). Setelah kebocoran data terjadi, terdata semakin banyak email spoofing yang dibuat dengan sender dari domain JBIC. JBIC mendeteksi adanya spoofed email dengan menggunakan free email seperti @yahoo dan @aol dan menggunakan nama-nama staff yang bekerja di JBIC. Selain itu, spoofed email yang terdeteksi menggunakan domain name @jbic.go.jp.

Contoh insiden kedua terjadi pada D&B Credibility Insights. Beberapa pengguna layanan yang diberikan pada D&B Credibility Insights menerima suatu email yang berisi mengenai customer complaint dan memiliki attachment [110]. Pada isi email, pengirim meminta supaya user mengunduh attachment yang ada. Spoofed email ini menggunakan address alert@dnb.com, padahal D&B tidak pernah mengirimkan email ini. Attachment yang ada pada isi email juga ternyata berisi Malware.

Penggunaan SPF akan bermanfaat untuk menghindari spoofed email dengan domain @jbic.go.jp dan @dnb.com, karena pada pihak client, dapat dilakukan pengecekan validitas pengirim, baik dengan IP address maupun domain name pengirim.

Selain itu, dapat juga digunakan DKIM sebagai proses autentikasi email. Dengan adanya DKIM, akan sulit melakukan spoofing email, karena dibutuhkan signature yang hanya dimiliki pihak dengan otoritas.

10. References

[1]     Strategies to Mitigate Targeted Cyber Intrusions – Mitigation Details, [Online], Available: http://www.asd.gov.au/infosec/top-mitigations/top35mitigation-details.htm. [Accessed: Oct. 26, 2013] [2]     Spoofed/Forged Email, [Online], Available: http://www.cert.org/tech_tips/email_spoofing.html. [Accessed: Oct. 26, 2013] [3]     email spoofing, [Online], Available: http://searchsecurity.techtarget.com/definition/email-spoofing. [Accessed: Oct. 27, 2013] [4]     Send better email: Configure SPF and DKIM for Google Apps, [Online], Available: http://www.techrepublic.com/blog/google-in-the-enterprise/send-better-email-configure-spf-and-dkim-for-google-apps/. [Accessed: Oct 27, 2013] [5]     Send better email: Configure SPF and DKIM for Google Apps, [Online], Available: http://www.techrepublic.com/blog/google-in-the-enterprise/send-better-email-configure-spf-and-dkim-for-google-apps/. [Accessed: Oct 27, 2013] [6]     Sender Policy Framework Implementations, [Online], Available: http://www.openspf.org/Implementations. [Accessed: Oct 27, 2013] [7]     C. Dave, “Trust in Email Begins with Authentication,” issued by Messaging Anti-Abuse Working Group (MAAWG), San Fransisco: 2008.

[8]     DomainKeys Identified Mail (DKIM) Service Overview, [Online], Available: http://www.dkim.org/specs/rfc5585.html. [Accessed: Oct 30, 2013] [9]     DKIM Software and Services Deployment Reports, [Online], Available: http://www.dkim.org/deploy/index.html. [Accessed: Oct 30, 2013] [10]     Warning: Spoofed E-mails Disguised as JBIC Staff, [Online], Available: http://www.jbic.go.jp/en/about/news/alert_mail/index.html. [Accessed: Oct 28, 2013] [11]     Did you get a Customer Complaint Email from D&B?, [Online], Available: http://blog.dandb.com/2013/02/19/customer-complaint-email-dnb/#wrap. [Accessed: Oct 28, 2013]

Contributor:

Renard Xaviero Adhi Pramono (23213031)

Mochammad Fadhli Zakiy (23213127)