mirror of
https://github.com/ditatompel/insights.git
synced 2025-01-08 03:12:06 +07:00
Compare commits
5 commits
dd7184f75b
...
a1c7d902ff
Author | SHA1 | Date | |
---|---|---|---|
|
a1c7d902ff | ||
e00ef20f97 | |||
cc665d4f3e | |||
f20101a67c | |||
0ec6578581 |
7 changed files with 218 additions and 84 deletions
|
@ -1,6 +1,13 @@
|
|||
---
|
||||
title: "{{ replace .Name "-" " " | title }}"
|
||||
description:
|
||||
# Description will appear in the meta tags and below the title in the blog list
|
||||
description:
|
||||
# Summary is used in the RSS description tag
|
||||
summary:
|
||||
# Keywords meta tags. If not specified, tags field will be used
|
||||
keywords:
|
||||
- example
|
||||
- example 2
|
||||
date: {{ .Date }}
|
||||
lastmod:
|
||||
draft: true
|
||||
|
@ -28,9 +35,4 @@ authors:
|
|||
# - ditatompel
|
||||
---
|
||||
|
||||
Summary.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
Content.
|
||||
|
|
|
@ -1,7 +1,13 @@
|
|||
---
|
||||
title: "{{ replace .Name "-" " " | title }}"
|
||||
# linkTitle:
|
||||
description:
|
||||
description:
|
||||
# Summary is used in the RSS description tag
|
||||
summary:
|
||||
# Keywords meta tags. If not specified, tags field will be used
|
||||
keywords:
|
||||
- example
|
||||
- example 2
|
||||
date: {{ .Date }}
|
||||
lastmod:
|
||||
draft: true
|
||||
|
@ -32,9 +38,4 @@ authors:
|
|||
# - ditatompel
|
||||
---
|
||||
|
||||
Summary.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
Content.
|
||||
|
|
|
@ -1,7 +1,13 @@
|
|||
---
|
||||
title: "{{ replace .Name "-" " " | title }}"
|
||||
description:
|
||||
# linkTitle:
|
||||
description:
|
||||
# Summary is used in the RSS description tag
|
||||
summary:
|
||||
# Keywords meta tags. If not specified, tags field will be used
|
||||
keywords:
|
||||
- example
|
||||
- example 2
|
||||
date: {{ .Date }}
|
||||
lastmod:
|
||||
draft: true
|
||||
|
@ -31,9 +37,4 @@ authors:
|
|||
# - ditatompel
|
||||
---
|
||||
|
||||
Summary.
|
||||
|
||||
<!--more-->
|
||||
---
|
||||
|
||||
Content.
|
||||
|
|
|
@ -1,15 +1,15 @@
|
|||
---
|
||||
title: "Coretan Tentang Email & Privasi"
|
||||
description: "Bagaimana sistem email bekerja, informasi apa yang bisa didapat dari pesan email, & cara menjaga privasi saat melakukan pertukaran informasi melalui email."
|
||||
description: "Bagaimana sistem email bekerja, informasi apa yang bisa didapat dari pesan email, dan cara menjaga privasi saat melakukan pertukaran informasi melalui email."
|
||||
summary: "Bagaimana sistem email bekerja, informasi apa yang bisa didapat dari pesan email, dan cara menjaga privasi saat melakukan pertukaran informasi melalui email."
|
||||
date: 2012-07-28T19:02:22+07:00
|
||||
lastmod:
|
||||
draft: false
|
||||
noindex: false
|
||||
featured: false
|
||||
pinned: false
|
||||
# comments: false
|
||||
series:
|
||||
# -
|
||||
# -
|
||||
categories:
|
||||
- Privasi
|
||||
- TIL
|
||||
|
@ -17,42 +17,35 @@ tags:
|
|||
- Email
|
||||
- SMTP
|
||||
images:
|
||||
# -
|
||||
# menu:
|
||||
# main:
|
||||
# weight: 100
|
||||
# params:
|
||||
# icon:
|
||||
# vendor: bs
|
||||
# name: book
|
||||
# color: '#e24d0e'
|
||||
authors:
|
||||
- ditatompel
|
||||
---
|
||||
|
||||
Kali ini kita akan mencoba untuk membahas bagaimana sistem email bekerja email, informasi apa yang bisa kita dapat dari pesan email, dan paling tidak bagaimana menjaga privasi pada saat melakukan pertukaran informasi melalui email.
|
||||
|
||||
<!--more-->
|
||||
|
||||
Sebelum kita lanjutkan mengenai privasi email, akan lebih baik jika kita memahami terlebih dahulu bagaimana sistem email bekerja dan hal-hal apa saja yang yang berkaitan dengan privasi email.
|
||||
|
||||
## Bagaimana sistem email bekerja?
|
||||
|
||||
Cara yang paling umum mengirim email adalah menggunakan mail server ISP atau perusahaan. Ketika kita mengklik tombol "**Send**", perangkat lunak email kita akan melakukan koneksi **SMTP** ke mail server kita. Mail server kita akan mencoba untuk menyampaikan pesan ke mail server ISP yang dituju, kemudian pesan akan dikirimkan ke kotak surat (**Inbox**) penerima pada mail server ISP yang dituju. Pesan yang disimpan di sana dapat dibaca oleh penerima email menggunakan **POP3** atau **IMAP**.
|
||||
|
||||
## Bagaimana pesan email dibajak?
|
||||
|
||||
Paling tidak dalam perjalanan-nya pesan email disimpan di dua server : 1 di mail server ISP pengirim dan 1 lagi di server mail ISP penerima. Saat email kita ditujukan kepada bank, perusahaan, rekan bisnis, dll, isi pesan pada email dapat menarik perhatian staff TI yang melakukan pemantauan mail server.
|
||||
|
||||
Dan kita tahu bahwa tidak ada yang dapat mencegah oknum staf TI yang memiliki akses ke server email, membuka dan membaca pesan itu. Dan tentu saja orang lain yang sebenarnya tidak berwenang seperti *attacker* yang telah memiliki akses ke mail server tersebut juga dapat melihat dan membaca isi pesan yang kita kirimkan. Cara lain untuk mendapatkan isi dari sebuah email adalah melalui *sniffing* lalu lintas jaringan.
|
||||
Dan kita tahu bahwa tidak ada yang dapat mencegah oknum staf TI yang memiliki akses ke server email, membuka dan membaca pesan itu. Dan tentu saja orang lain yang sebenarnya tidak berwenang seperti _attacker_ yang telah memiliki akses ke mail server tersebut juga dapat melihat dan membaca isi pesan yang kita kirimkan. Cara lain untuk mendapatkan isi dari sebuah email adalah melalui _sniffing_ lalu lintas jaringan.
|
||||
|
||||
## Privasi Pada Header Email
|
||||
Ketika menganalisis pesan email kita bisa mendapatkan banyak informasi tentang pengirimnya. Alamat IP komputer, lokasi geografis, zona waktu, bahasa yang digunakan, *software* email yang digunakan dan lain sebagainya. Informasi-informasi tersebut kadang tercantum tanpa sepengetahuan pengguna / pengirim email.
|
||||
|
||||
Sebagai contoh, kita mungkin tidak ingin penerima mengetahui bahwa sistem operasi kita menggunakan Bahasa Indonesia sebagai bahasa *default* atau bahwa kita sedang berada di sebuah negara dan menggunakan salah satu layanan ISP lokal. Semua informasi ini dapat dengan mudah didapat dari **header** pesan email.
|
||||
Ketika menganalisis pesan email kita bisa mendapatkan banyak informasi tentang pengirimnya. Alamat IP komputer, lokasi geografis, zona waktu, bahasa yang digunakan, _software_ email yang digunakan dan lain sebagainya. Informasi-informasi tersebut kadang tercantum tanpa sepengetahuan pengguna / pengirim email.
|
||||
|
||||
Setiap pesan email terdiri dari dua bagian: **header** dan **body**. Bagian *header* berisi **subjek** pesan, alamat **email pengirim** dan **penerima**. Selain itu header email juga berisi informasi **tanggal dan waktu** pesan dikirim dan kapan pesan itu tiba, lalu perangkat lunak email yang digunakan pengirim, dan lain sebagainya. Informasi ini biasa digunakan untuk menyampaikan pesan, dan memungkinkan staf IT untuk melakukan *debug* jika ada masalah dengan mail server-nya.
|
||||
Sebagai contoh, kita mungkin tidak ingin penerima mengetahui bahwa sistem operasi kita menggunakan Bahasa Indonesia sebagai bahasa _default_ atau bahwa kita sedang berada di sebuah negara dan menggunakan salah satu layanan ISP lokal. Semua informasi ini dapat dengan mudah didapat dari **header** pesan email.
|
||||
|
||||
Setiap pesan email terdiri dari dua bagian: **header** dan **body**. Bagian _header_ berisi **subjek** pesan, alamat **email pengirim** dan **penerima**. Selain itu header email juga berisi informasi **tanggal dan waktu** pesan dikirim dan kapan pesan itu tiba, lalu perangkat lunak email yang digunakan pengirim, dan lain sebagainya. Informasi ini biasa digunakan untuk menyampaikan pesan, dan memungkinkan staf IT untuk melakukan _debug_ jika ada masalah dengan mail server-nya.
|
||||
|
||||
## Analisa Header Email
|
||||
Berikut adalah contoh *header* pesan yang dikirim oleh `pengirim@gmail.com` ke `penerima@yahoo.co.id` yg saya **Bcc**-kan ke `penerima_tersembunyi@list.ru`.
|
||||
|
||||
Berikut adalah contoh _header_ pesan yang dikirim oleh `pengirim@gmail.com` ke `penerima@yahoo.co.id` yg saya **Bcc**-kan ke `penerima_tersembunyi@list.ru`.
|
||||
|
||||
![RAW Email](email-dan-privasi.jpg#center)
|
||||
|
||||
|
@ -62,7 +55,9 @@ Nah dari header email inilah yang dapat kita cari informasi lebih dalam mengenai
|
|||
Received: from [209.85.210.45] (port=39452 helo=mail-pz0-f45.google.com)
|
||||
by mx25.mail.ru with esmtp
|
||||
```
|
||||
|
||||
dan
|
||||
|
||||
```plain
|
||||
Received: from [10.69.40.36] ([202.152.202.174])
|
||||
by mx.google.com with ESMTPS id n10sm65348710pbe.4.2011.09.25.13.16.06
|
||||
|
@ -81,7 +76,7 @@ Mari kita cari informasi dari ke 2 IP publik diatas menggunakan fitur WHOIS yang
|
|||
Dari sini kita dapat menyimpulkan bahwa pengirim mengirimkan email dari ISP Bakrie Telecom Tbk dan diterima oleh Mail Excange milik Google.
|
||||
Dari hasil trace tersebut, kita bisa mendapatkan informasi telpon, alamat, email, dan lain sebagainya dari ISP yang digunakan tersebut (yang mungkin berguna jika kita menjadi korban penipuan atau kasus merugikan lain-nya. Perlu diketahui bahwa setiap ISP / perusahaan memiliki kebijakan sendiri atas informasi pengguna-nya).
|
||||
|
||||
Ada banyak informasi lagi yang dapat kita ambil dari *header* diatas, misalnya :
|
||||
Ada banyak informasi lagi yang dapat kita ambil dari _header_ diatas, misalnya :
|
||||
Pengirim menggunakan perangkat lunak **Thunderbird** versi `3.1.13` dengan sistem operasi **Linux** `32 bit`, dengan zona waktu lokal `+7` (lokasi geografis Indochina).
|
||||
|
||||
```plain
|
||||
|
@ -93,16 +88,18 @@ Date: Mon, 26 Sep 2011 03:16:04 +0700
|
|||
Perlu diketahui juga bahwa tidak semua header email membawa informasi lengkap seperti di atas, informasi yang pasti dibawa adalah `from`, `to`, dan `subject`. Semua data lainnya biasa dibawa oleh perangkat lunak / server email yang digunakan. Biasanya pengguna tidak memiliki kontrol atas header ini, informasi header-header tersebut yang paling berbahaya bagi privasi email dan mengandung banyak informasi tentang pengirim.
|
||||
|
||||
## Gunakan perangkat lunak email yang aman
|
||||
Menggunakan perangkat lunak email yang benar adalah awal yang baik bagi keamanan email. Jika kita menggunakan perangkat lunak email yang penuh *bugs* maka semakin memungkinkan untuk diserang karena pesan email membawa informasi vendor perangkat lunak email beserta versinya.
|
||||
|
||||
Dari informasi vendor dan versi yang didapat sudah cukup untuk menulis sebuah pesan khusus yang memanfaatkan celah software untuk menyerang komputer kita (dengan *trojan* misalnya). Nah dari celah-celah yang ada memungkinkan penyerang untuk mengambil / mendapatkan informasi username, password, akun rekening bank, informasi pribadi, dan lain sebagainya.
|
||||
Menggunakan perangkat lunak email yang benar adalah awal yang baik bagi keamanan email. Jika kita menggunakan perangkat lunak email yang penuh _bugs_ maka semakin memungkinkan untuk diserang karena pesan email membawa informasi vendor perangkat lunak email beserta versinya.
|
||||
|
||||
Dari informasi vendor dan versi yang didapat sudah cukup untuk menulis sebuah pesan khusus yang memanfaatkan celah software untuk menyerang komputer kita (dengan _trojan_ misalnya). Nah dari celah-celah yang ada memungkinkan penyerang untuk mengambil / mendapatkan informasi username, password, akun rekening bank, informasi pribadi, dan lain sebagainya.
|
||||
|
||||
Semua skenario diatas bukan rekayasa, dan hal ini benar-benar terjadi. Ada banyak instansi yang menawarkan untuk memata-matai pihak tertentu melalui internet. Jika pesaing bisnis kita rela mengeluarkan sejumlah uangnya untuk mengetahui informasi kita, maka kita hendaknya lebih berhati-hati. =)
|
||||
|
||||
## HTML Tracker (image)
|
||||
|
||||
Sebagian besar aplikasi email mampu untuk menampilkan pesan email dengan format HTML. Hal ini tidak berbeda saat kita melakukan browsing biasa, bedanya hanya halaman web ditampilkan dalam jendela perangkat lunak email yang kita gunakan, bukan pada browser.
|
||||
|
||||
Saat melihat email berformat HTML, email tersebut dapat menyisipkan tag tertentu seperti *image*/gambar yang sudah di simpan di server pengirim. Hal ini juga bisa dimanfaatkan sebagai alat *tracking*.
|
||||
Saat melihat email berformat HTML, email tersebut dapat menyisipkan tag tertentu seperti _image_/gambar yang sudah di simpan di server pengirim. Hal ini juga bisa dimanfaatkan sebagai alat _tracking_.
|
||||
|
||||
Untuk menggambarkan bagaimana mereka bekerja, mari kita bayangkan bahwa kita sedang menjalankan beberapa bisnis online pakaian wanita misalnya . Kita menerima pesan email dari orang tak dikenal misal sebagai berikut :
|
||||
|
||||
|
@ -118,26 +115,31 @@ Regards,
|
|||
Attacker
|
||||
```
|
||||
|
||||
Untuk menarik perhatian kita, attacker mungkin menggunakan tag yang berhubungan dengan bisnis yg kita jalankan, nama lengkap, atau nama perusahaan pada baris *"Subject"*. Kita buka pesan tersebut, kemudian menyadari bahwa itu hanyalah email spam.
|
||||
Untuk menarik perhatian kita, attacker mungkin menggunakan tag yang berhubungan dengan bisnis yg kita jalankan, nama lengkap, atau nama perusahaan pada baris _"Subject"_. Kita buka pesan tersebut, kemudian menyadari bahwa itu hanyalah email spam.
|
||||
|
||||
Tapi apakah kita menyadari bahwa pesan yang dikirim adalah pesan dengan format HTML dan berisi gambar kecil / transparan yang telah disiapkan sebelumnya di server milik penyerang?
|
||||
Jika gambar yang dilampirkan secara otomatis di-download (*render*) saat kita membaca pesan. Penyerang dapat menganalisa log web server dimana gambar yang telah disiapkan tadi disimpan. Dari situ memungkinkan penyerang untuk mendapatkan beberapa informasi kita. Misalnya tanggal dan waktu kita membaca email ini, alamat IP, sistem operasi, dll.
|
||||
Jika gambar yang dilampirkan secara otomatis di-download (_render_) saat kita membaca pesan. Penyerang dapat menganalisa log web server dimana gambar yang telah disiapkan tadi disimpan. Dari situ memungkinkan penyerang untuk mendapatkan beberapa informasi kita. Misalnya tanggal dan waktu kita membaca email ini, alamat IP, sistem operasi, dll.
|
||||
|
||||
![Log image tracker pada webserver](email-dan-privasi_image-mail-log.jpg#center)
|
||||
|
||||
Hal ini berarti bahwa privasi kita dapat terancam cukup dengan membuka pesan email, bahkan tanpa membalas email tersebut.
|
||||
|
||||
## Bagaimana melindungi privasi email kita?
|
||||
|
||||
Gunakan enkripsi untuk melindungi pesan email kita. Satu-satunya cara untuk melindungi pesan email adalah dengan mengenkripsi email tersebut. Ada beberapa teknik untuk melakukannya.
|
||||
|
||||
### PGP dan S/MIME
|
||||
|
||||
**PGP** dan **S/MIME** digunakan untuk mengenkripsi body email, header email tetap tidak terlindungi. Dengan menggunakan metode ini maka membutuhkan persetujuan sebelumnya antara pihak pengirim dan pihak penerima, dengan melakukan pertukaran **"public key"**.
|
||||
|
||||
Perlu dicatat bahwa hanya menggunakan **PGP** dan **SMIME** tidak menjamin privasi kita. meskipun kita menggunakan **PGP** atau **S/MIME**, *header* pesan masih tetap tidak terenkripsi, dan akan ditransfer dalam bentuk plain teks melalui Internet jika tidak menggunakan protokol **SSL**/**TLS**.
|
||||
Perlu dicatat bahwa hanya menggunakan **PGP** dan **SMIME** tidak menjamin privasi kita. meskipun kita menggunakan **PGP** atau **S/MIME**, _header_ pesan masih tetap tidak terenkripsi, dan akan ditransfer dalam bentuk plain teks melalui Internet jika tidak menggunakan protokol **SSL**/**TLS**.
|
||||
|
||||
### Koneksi SSL/TLS
|
||||
**SSL**/**TLS** dapat digunakan untuk mengenkripsi lalu lintas email secara keseluruhan dari pengirim ke penerima. Dengan koneksi yang terenkripsi **SSL**/**TLS** dapat mencegah seseorang melakukan *sniffing* lalulintas jaringan saat pesan dikirim dan ditermima oleh penerima (Paling tidak hingga email diterima pada Inbox alamat email tujuan).
|
||||
|
||||
**SSL**/**TLS** dapat digunakan untuk mengenkripsi lalu lintas email secara keseluruhan dari pengirim ke penerima. Dengan koneksi yang terenkripsi **SSL**/**TLS** dapat mencegah seseorang melakukan _sniffing_ lalulintas jaringan saat pesan dikirim dan ditermima oleh penerima (Paling tidak hingga email diterima pada Inbox alamat email tujuan).
|
||||
|
||||
Referensi :
|
||||
|
||||
- darkc0de.com archive - Understanding Email Security And Anonimity.
|
||||
- [http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol](http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol).
|
||||
- [http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol](http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol).
|
||||
|
||||
|
|
147
content/blog/note-about-email-and-privacy/index.md
Normal file
147
content/blog/note-about-email-and-privacy/index.md
Normal file
|
@ -0,0 +1,147 @@
|
|||
---
|
||||
title: "Note About Email and Privacy"
|
||||
description: "Understanding how email systems work: what information are available from an email message, with strategies for maintaining privacy during information exchange through email."
|
||||
summary: "Understanding how email systems work: what information are available from an email message, with strategies for maintaining privacy during information exchange through email."
|
||||
date: 2012-07-28T19:02:22+07:00
|
||||
lastmod:
|
||||
draft: false
|
||||
noindex: false
|
||||
featured: false
|
||||
pinned: false
|
||||
series:
|
||||
# -
|
||||
categories:
|
||||
- Privacy
|
||||
- TIL
|
||||
tags:
|
||||
- Email
|
||||
- SMTP
|
||||
images:
|
||||
authors:
|
||||
- ditatompel
|
||||
---
|
||||
|
||||
Today, we will attempt to discuss how email systems work; specifically, what information can be obtained from an email message, and strategies for maintaining privacy during information exchange via email.
|
||||
|
||||
Before we proceed with discussing email privacy, it would be more advisable to first understand how email systems work and the various aspects related to email privacy.
|
||||
|
||||
## How Email Systems Work?
|
||||
|
||||
The most common way to send an email is by utilizing your Internet Service Provider's (ISP) or company's mail server. When you click the "**Send**" button, your email software establishes a connection via **Simple Mail Transfer Protocol (SMTP)** with your mail server.
|
||||
|
||||
Your mail server then attempts to deliver the message to the target ISP's mail server, and subsequently, the message is delivered to the recipient's **Inbox** on the target ISP's mail server. The stored message can be accessed by the recipient using **Post Office Protocol (POP)** or **Internet Message Access Protocol (IMAP)**.
|
||||
|
||||
## How Email Messages are Compromised?
|
||||
|
||||
During its transmission, an email message is stored on at least two servers: one at the sender's Internet Service Provider (ISP) mail server and another at the recipient's ISP mail server. When we send emails to banks, companies, business associates, etc., the contents of our email can potentially attract the attention of IT staff monitoring the mail server.
|
||||
|
||||
It's worth noting that no system is completely secure, but it is possible to prevent an IT staff member with access to the email server from opening and reading the message. Additionally, unauthorized individuals who have gained access to the email server can also read the contents of our sent emails. Another way for someone to obtain the content of an email is through network traffic sniffing.
|
||||
|
||||
## Email Header Privacy
|
||||
|
||||
When analyzing an email message, we can obtain a significant amount of information about its sender from its header. This includes IP address, geographical location, time zone, language used, email software employed, and so forth. Such information is often displayed without the sender's knowledge or consent.
|
||||
|
||||
For instance, we may not want recipients to know that our system uses Indonesian as the default language or that we are currently located in a country and utilizing one of its local ISPs. All this information can be easily obtained from an email message's header.
|
||||
|
||||
Every email message consists of two main parts: the **header** and the **body**. The header contains essential information such as the **subject**, sender's and recipient's email addresses, date and time of sending and receipt, email client used by the sender, and more. This information is typically used to deliver the message, enabling IT staff to perform troubleshooting if there are issues with their mail server.
|
||||
|
||||
## Analyzing an Email Header
|
||||
|
||||
Here is an example of a message header sent from `sender@gmail.com` to `reciever@yahoo.co.id`, which I have **Bcc**-ed to `hiddenrecipient@list.ru`.
|
||||
|
||||
![RAW Email](email-dan-privasi.jpg#center)
|
||||
|
||||
```plain
|
||||
Received: from [209.85.210.45] (port=39452 helo=mail-pz0-f45.google.com)
|
||||
by mx25.mail.ru with esmtp
|
||||
```
|
||||
|
||||
and
|
||||
|
||||
```plain
|
||||
Received: from [10.69.40.36] ([202.152.202.174])
|
||||
by mx.google.com with ESMTPS id n10sm65348710pbe.4.2011.09.25.13.16.06
|
||||
```
|
||||
|
||||
There are two pieces of information to be examined.
|
||||
|
||||
- The first "Received from" tag originates from IP address 209.85.210.45 and was received by mx25.mail.ru.
|
||||
- The second "Received from" tag originates from local IP address 10.69.40.36 and the public sender's email IP is 202.152.202.174, received by mx.google.com.
|
||||
|
||||
Let us search for information about these two public IPs using the WHOIS feature widely available on the internet:
|
||||
|
||||
- 209.85.210.45 [http://api.ditatompel.com/ip/209.85.210.45]([http://api.ditatompel.com/ip/209.85.210.45) (Google)
|
||||
- 202.152.202.174 [http://api.ditatompel.com/ip/202.152.202.174](http://api.ditatompel.com/ip/202.152.202.174) (PT.
|
||||
Bakrie Telecom Tbk)
|
||||
|
||||
From here, we can conclude that the sender dispatched an email from ISP Bakrie Telecom Tbk and was received by Mail Exchange of Google.
|
||||
The trace results provide information on telephone numbers, addresses, emails, and other details from the used ISP (which may be useful if one becomes a victim of fraud or another case).
|
||||
|
||||
There are many pieces of information to be gleaned from the above headers, for instance:
|
||||
|
||||
The sender employed software **Thunderbird** version `3.1.13` with operating system **Linux** `32 bit`, utilizing local time zone `+7` (Indochina geographical location).
|
||||
|
||||
```plain
|
||||
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.21)
|
||||
Gecko/20110831 Thunderbird/3.1.13
|
||||
Date: Mon, 26 Sep 2011 03:16:04 +0700
|
||||
```
|
||||
|
||||
It is also essential to recognize that not all email headers carry comprehensive information like the above; certain details are undoubtedly present, including `from`, `to`, and `subject`. All other data typically accompanies emails from software or servers used for transmission. Usually, users have no control over these headers; the contained information poses a significant threat to email privacy and conveys numerous details about the sender.
|
||||
|
||||
## Utilize Secure Email Software
|
||||
|
||||
Using genuine and up-to-date email software is a good starting point for email security. If we use email software replete with bugs, the likelihood of being attacked increases significantly, as emails carry information about the vendor and version used.
|
||||
|
||||
From the obtained vendor and version details, it would be sufficient to craft a targeted message that exploits software vulnerabilities to attack our computer (using trojans, for instance). The existing loopholes enable attackers to obtain or steal sensitive information such as usernames, passwords, bank account details, personal data, and so on.
|
||||
|
||||
All the above scenarios are not merely hypothetical; indeed, this is reality. There are numerous entities offering to infiltrate specific parties via the internet. If our business competitor is willing to spend a considerable amount of money to gather our information, we should be more vigilant.
|
||||
|
||||
## HTML Tracker (Image)
|
||||
|
||||
Most email applications are capable of rendering emails in HTML format. This is similar to regular browsing, except that the webpage is displayed within the email client's window, rather than a browser.
|
||||
|
||||
When viewing an HTML-formatted email, it can embed specific tags, such as image/pre-saved images on the sender's server. This can also be exploited as a tracking tool.
|
||||
|
||||
To illustrate how they work, let us imagine that we are running several online women's clothing businesses. We receive an unknown email message as follows:
|
||||
|
||||
```plain
|
||||
From: someuser@yahoo.com
|
||||
To: customer@foobar.com
|
||||
Subject: About Victoria Secret
|
||||
Hello, good day!
|
||||
How are you?
|
||||
I'm good here, I want to ask about [bla bla bla]
|
||||
|
||||
Regards,
|
||||
Attacker
|
||||
```
|
||||
|
||||
To grab our attention, the attacker might use tags related to our business, full name, or company name on the "Subject" line. We open the message, and upon noticing it's just spam, we dismiss it.
|
||||
|
||||
However, do we realize that the sent email is in HTML format and contains a small, transparent image pre-stored on the attacker's server?
|
||||
|
||||
When the attached image is automatically downloaded (rendered) as we read the message, the attacker can analyze the web server logs where the image was stored. From there, it becomes possible for the attacker to obtain some information about us. For instance, the date and time we opened this email, our IP address, operating system, and so on.
|
||||
|
||||
![Log Image Tracker](email-dan-privasi_image-mail-log.jpg#center)
|
||||
|
||||
This implies that our privacy can be compromised simply by opening an email message, even without responding to it.
|
||||
|
||||
## How can we safeguard the privacy of our email communications?
|
||||
|
||||
To safeguard the privacy of our email communications, we should employ encryption. The only means of protecting email transmissions is by encrypting them. There are several techniques for accomplishing this.
|
||||
|
||||
### PGP and S/MIME: Preeminent Encryption Tools for Secure Email Communications
|
||||
|
||||
PGP and S/MIME are used to encrypt the body of an email, leaving the email header unencrypted. This method requires prior agreement between the sender and recipient, involving the exchange of "public keys".
|
||||
|
||||
It is essential to note that relying solely on PGP and S/MIME does not guarantee our privacy. Although we use PGP or S/MIME, the email header remains unencrypted and will be transferred in plain text over the Internet unless we also utilize the SSL/TLS protocol.
|
||||
|
||||
### The SSL/TLS Connection: A Crucial Layer of Protection
|
||||
|
||||
SSL/TLS can be used to encrypt the entire email transmission flow from sender to receiver. With an encrypted connection, SSL/TLS prevents anyone from conducting network sniffing when the message is sent and received by the intended recipient (at least until the email arrives in the inbox of the target email address).
|
||||
|
||||
References:
|
||||
|
||||
- darkc0de.com archive - Understanding Email Security And Anonimity.
|
||||
- [http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol](http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol).
|
|
@ -1,17 +1,16 @@
|
|||
---
|
||||
title: "My Nginx Setup Kickstart / Boilerplate"
|
||||
description: "Settingan wajib saya untuk Nginx sebagai web server, reverse proxy; termasuk VTS module, analisis, dan logging."
|
||||
# linkTitle:
|
||||
summary: "Settingan wajib saya untuk Nginx sebagai web server, reverse proxy; termasuk VTS module, analisis, dan logging."
|
||||
keywords:
|
||||
- nginx
|
||||
- nginx kickstart
|
||||
- nginx boilerplate
|
||||
date: 2024-04-25T00:00:09+07:00
|
||||
lastmod:
|
||||
draft: false
|
||||
noindex: false
|
||||
# comments: false
|
||||
nav_weight: 1000
|
||||
# nav_icon:
|
||||
# vendor: bootstrap
|
||||
# name: toggles
|
||||
# color: '#e24d0e'
|
||||
series:
|
||||
# - Tutorial
|
||||
categories:
|
||||
|
@ -19,16 +18,7 @@ categories:
|
|||
- Snippets
|
||||
tags:
|
||||
- Nginx
|
||||
# -
|
||||
images:
|
||||
# menu:
|
||||
# main:
|
||||
# weight: 100
|
||||
# params:
|
||||
# icon:
|
||||
# vendor: bs
|
||||
# name: book
|
||||
# color: '#e24d0e'
|
||||
authors:
|
||||
- ditatompel
|
||||
---
|
||||
|
@ -67,6 +57,7 @@ Untuk **Debian**:
|
|||
```shell
|
||||
apt install sudo curl gnupg2 ca-certificates lsb-release debian-archive-keyring
|
||||
```
|
||||
|
||||
Untuk **Ubuntu**:
|
||||
|
||||
```shell
|
||||
|
@ -239,7 +230,7 @@ http {
|
|||
|
||||
#### Custom JSON log
|
||||
|
||||
Untuk beberapa kasus, saya menggunakan **Nginx integration** di **Grafana Cloud** yang menggunakan _custom access log format_ (JSON):
|
||||
Untuk beberapa kasus, saya menggunakan **Nginx integration** di **Grafana Cloud** yang menggunakan _custom access log format_ (JSON):
|
||||
|
||||
```nginx
|
||||
http {
|
||||
|
@ -297,7 +288,7 @@ Dengan `map`, dan `if` _keyword_, kita dapat menentukan apa saya yang akan di-lo
|
|||
```nginx
|
||||
http {
|
||||
# ...
|
||||
|
||||
|
||||
map $request_uri$http_user_agent $is_loggable {
|
||||
~*local 0;
|
||||
~*Uptime-Kuma.* 0;
|
||||
|
@ -335,7 +326,7 @@ http {
|
|||
sudo apt install git build-essential libpcre3-dev zlib1g-dev libssl-dev
|
||||
```
|
||||
|
||||
Ini adalah bagian yang sangat penting, jika ingin menggunakan *dynamically linked module*, opsi mengkompile _module_ harus sama dengan Nginx _binary file_ yang akan digunakan, begitu pula dengan versi Nginx yang digunakan. Untuk mengetahui informasi yang kita butuhkan tersebut, jalankan perintah `nginx -V`. Contoh _output_:
|
||||
Ini adalah bagian yang sangat penting, jika ingin menggunakan _dynamically linked module_, opsi mengkompile _module_ harus sama dengan Nginx _binary file_ yang akan digunakan, begitu pula dengan versi Nginx yang digunakan. Untuk mengetahui informasi yang kita butuhkan tersebut, jalankan perintah `nginx -V`. Contoh _output_:
|
||||
|
||||
```plain
|
||||
nginx version: nginx/1.26.0
|
||||
|
@ -437,4 +428,3 @@ Sebagai referensi konfigurasi akhir, silahkan lihat di repositori [https://githu
|
|||
- [https://github.com/vozlt/nginx-module-vts](https://github.com/vozlt/nginx-module-vts).
|
||||
- [https://github.com/itsjfx/cloudflare-nginx-ips](https://github.com/itsjfx/cloudflare-nginx-ips).
|
||||
- [https://github.com/ditatompel/nginx-kickstart](https://github.com/ditatompel/nginx-kickstart).
|
||||
|
||||
|
|
|
@ -1,17 +1,16 @@
|
|||
---
|
||||
title: "My Nginx Setup Kickstart / Boilerplate"
|
||||
description: "My mandatory settings for Nginx as a web server, reverse proxy; including VTS module, analysis, and logging."
|
||||
# linkTitle:
|
||||
summary: "My mandatory settings for Nginx as a web server, reverse proxy; including VTS module, analysis, and logging."
|
||||
keywords:
|
||||
- nginx
|
||||
- nginx kickstart
|
||||
- nginx boilerplate
|
||||
date: 2024-04-25T00:00:09+07:00
|
||||
lastmod:
|
||||
draft: false
|
||||
noindex: false
|
||||
# comments: false
|
||||
nav_weight: 1000
|
||||
# nav_icon:
|
||||
# vendor: bootstrap
|
||||
# name: toggles
|
||||
# color: '#e24d0e'
|
||||
series:
|
||||
# - Tutorial
|
||||
categories:
|
||||
|
@ -19,16 +18,7 @@ categories:
|
|||
- Snippets
|
||||
tags:
|
||||
- Nginx
|
||||
# -
|
||||
images:
|
||||
# menu:
|
||||
# main:
|
||||
# weight: 100
|
||||
# params:
|
||||
# icon:
|
||||
# vendor: bs
|
||||
# name: book
|
||||
# color: '#e24d0e'
|
||||
authors:
|
||||
- ditatompel
|
||||
---
|
||||
|
@ -67,6 +57,7 @@ For **Debian**:
|
|||
```shell
|
||||
apt install sudo curl gnupg2 ca-certificates lsb-release debian-archive-keyring
|
||||
```
|
||||
|
||||
For **Ubuntu**:
|
||||
|
||||
```shell
|
||||
|
@ -297,7 +288,7 @@ With `map`, and `if` _keyword_, we can determine what to log and what not to log
|
|||
```nginx
|
||||
http {
|
||||
# ...
|
||||
|
||||
|
||||
map $request_uri$http_user_agent $is_loggable {
|
||||
~*local 0;
|
||||
~*Uptime-Kuma.* 0;
|
||||
|
@ -314,7 +305,7 @@ http {
|
|||
|
||||
For me, log centralization really makes my job easier in carrying out server analysis and troubleshooting.
|
||||
|
||||
In Nginx, we can easily send logs to _remote servers_ in _real-time_. For example, we can send logs to a remote `rsyslog` server** (UDP) with the following example configuration:
|
||||
In Nginx, we can easily send logs to _remote servers_ in _real-time_. For example, we can send logs to a remote `rsyslog` server\*\* (UDP) with the following example configuration:
|
||||
|
||||
```nginx
|
||||
http {
|
||||
|
@ -335,7 +326,7 @@ http {
|
|||
sudo apt install git build-essential libpcre3-dev zlib1g-dev libssl-dev
|
||||
```
|
||||
|
||||
This is a very important part, if you want to use a *dynamically linked module*, the compile module option must be the same as the Nginx _binary file_ that will be used, as well as the version of Nginx used. To find out the information we need, run `nginx -V` command. Example output:
|
||||
This is a very important part, if you want to use a _dynamically linked module_, the compile module option must be the same as the Nginx _binary file_ that will be used, as well as the version of Nginx used. To find out the information we need, run `nginx -V` command. Example output:
|
||||
|
||||
```plain
|
||||
nginx version: nginx/1.26.0
|
||||
|
@ -357,6 +348,7 @@ Extract the Nginx _source code_ archive, then go to it's directory:
|
|||
tar -xvzf nginx-1.26.0.tar.gz
|
||||
cd nginx-1.26.0
|
||||
```
|
||||
|
||||
Clone the `vozlt/nginx-module-vts` repository and use the [latest release tag](https://github.com/vozlt/nginx-module-vts/tags). When this article was written, the last tag release was `v0.2.2`, so:
|
||||
|
||||
```shell
|
||||
|
@ -436,4 +428,3 @@ As a final configuration reference, please look at [https://github.com/ditatompe
|
|||
- [https://github.com/vozlt/nginx-module-vts](https://github.com/vozlt/nginx-module-vts).
|
||||
- [https://github.com/itsjfx/cloudflare-nginx-ips](https://github.com/itsjfx/cloudflare-nginx-ips).
|
||||
- [https://github.com/ditatompel/nginx-kickstart](https://github.com/ditatompel/nginx-kickstart).
|
||||
|
||||
|
|
Loading…
Reference in a new issue