DANH MỤC TÀI LIỆU
Kiểm tra quá trình mã hóa email
Kim tra quá trình mã hóa email
Phân tích giao thức POP3, IMAP và SMTP thông qua cơ chế bo mt
SSL
Để thun li cho quá trình phân tích này, s rt tốt khi “nói chuyện” trực tiếp
vi server SMTP hoc IMAP ca bạn. Nhưng mọi vic s tr nên phc tp
khi tiến hành mã hóa d liệu đầu cuối, nhưng với các công c thích hp, vic
này s không quá khó khăn.
Thông thường, hầu như tất c h thống mail server đều yêu cu la chọn cơ
chế mã hóa kết nối. 2 phương thức sau được s dng hoc toàn b các địa
ch gi qua SSL hoặc 1 cơ chế khác là StartTLS s đưc s dụng để kích hot
quá trình mã hóa sau khi nhận được yêu cu kết ni.
Trước tiên hãy xem qua v dch v SSL, thường được s dng vi các yêu
cu chuyên dụng, đặc bit qua cổng TCP. Sau đây là bảng tham kho v các
cng quan trng khác:
Service
Abbreviation
TCP port
HTTP over SSL
https
443
IMAP over SSL
imaps
993
IRC over SSL
ircs
994
POP3 over SSL
pop3s
995
SMTP over SSL
ssmtp
465
Dch v này s lng nghe yêu cu t cổng TCP, đặc bit là nhng kết ni trc
tiếp qua SSL, ví d nhng h thng email client nào không h tr SSL s
không th giao tiếp vi server IMAPS qua cng 993. Mt khi các d liu và
thông s mã hóa đã được thc hin, chúng s được “cấp phép” và tạo ra 1
tunnel đưng hm riêng biệt, thông qua đó, quá trình lưu chuyển d liu
đưc thc hin trong thc tế. Da vào các s kết hp và các thành phn liên
quan trong kết ni SSL, khi xy ra bt k s c nào, các công c h tr như
telnet và netcat thường có xu hướng rút ngn quá trình này li.
Tiếp theo là 1 bước kim tra nho nh vi OpenSSL, có bao gm 1 ví d SSL
client nho nh có th đưc s dụng để to kết ni ti dch v SSL
như https://www.heise.de:
$ openssl s_client -host www.heise.de -port 443
CONNECTED(00000003)
[...]
---
Certificate chain
0 s:/C=DE/ST=Niedersachsen/L=Hannover/O=Heise Zeitschriften Verlag
GmbH Co KG/OU=Netzwerkadministration/OU=Terms of use at
www.verisign.com/rpa (c)05/CN=www.heise.de
i:/O=VeriSign Trust Network/OU=VeriSign, Inc./OU=VeriSign International
Server CA - Class 3/OU=www.verisign.com/CPS Incorp.by Ref. LIABILITY
LTD.(c)97 VeriSign
1 s:/O=VeriSign Trust Network/OU=VeriSign, Inc./OU=VeriSign
International Server CA - Class 3/OU=www.verisign.com/CPS Incorp.by
Ref. LIABILITY LTD.(c)97 VeriSign
i:/C=US/O=VeriSign, Inc./OU=Class 3 Public Primary Certification
Authority
---
[...]
Các thông tin trên được cung cp và chng thc bi openssl, cho phép chúng
ta kim tra các chng nhận khác đã được s dng. Nếu không làm như vậy,
chng khác nào các nhà qun lý ca sn và ch đợi nhng cuc tn công
theo kiu man-in-the-middle. V mt k thut, nhng ai có th s dng công
ngh ettercap hoàn toàn có th lấy được mt khu qun tr 1 cách đơn giản.
Tham s mã hóa và gii mã tín hiệu SSL client hoàn toàn “vô hình”
transparent, vì vậy người s dng có th liên lc trc tiếp đến server:
GET / HTTP/1.1
Host: www.heise.de
<return>
HTTP/1.1 302 Found
Date: Wed, 16 Sep 2009 10:24:44 GMT
Server: Apache/1.3.34
Location: http://www.heise.de/
[...]
Đăng nhập vào IMAPS
Quá trình này ch phc tạp hơn 1 chút:
$ openssl s_client -host imap.irgendwo.de -port 993
[...]
* OK IMAP4 Ready 0.0.0.0 0001f994
1 Login user-ju secret
1 OK You are so in
2 LIST "" "*"
* LIST (\HasChildren) "." "INBOX"
* LIST (\HasNoChildren) "." "INBOX.AV"
[...]
2 OK Completed (0.130 secs 5171 calls)
3 logout
* BYE LOGOUT received
3 OK Completed
Khi thc hiện xong bước này, đừng quên sp xếp li các s th t tương ứng
vi câu lệnh IMAP trước đó. Đối vi giao thức POP3 cũng tương tự như vậy,
chúng ta phi t xác thực bên trong “đường hầm” SSL bằng câu lnh USER
và PASS POP3:
$ openssl s_client -host pop.irgendwo.de -port 995
[...]
+OK POP server ready H mimap3
USER user-ju
+OK password required for user "user-ju"
PASS secret
+OK mailbox "user-ju" has 0 messages (0 octets) H mimap3
quit
+OK POP server signing off
Đây có thể coi là s la chn và thay thế thích hp dành cho công c telnet-
ssl.
StartTLS
Nhng nhà cung cp dch v Internet đặc bit thích s dng mô hình SSL,
Transport Layer Security thông qua StartTLS. Mô hình này có li thế hơn với
nhiu la chn trong khi vn cho phép client không giao tiếp vi server mà
không được mã hóa. Mt trái của điều này là các email client cn phải tương
tác trc tiếp vi server nếu mun t chi 1 kết ni TLS bt k nào đó.
La chn mặc định ca email client là "TLS, if available" đi kèm với s mo
him, các cuc tn công man-in-the-middle có th “nh nhàng” thay đổi câu
lnh StartTLS với tính năng kích hoạt quá trình mã hóa, thành XtartTLS.
Sau đó, server sẽ phn hi li rng không thc hin lnh XtartTLS, và gây ra
hiện tượng các email client khi gi d liu trong dạng chưa mã hóa vào 1
form không xác định ngược v phía người s dụng. Do đó, khuyến cáo nên
kim tra k rng máy ch có th x lý lệnh StartTLS, và sau đó kích hoạt tính
năng này. Nếu nhận được thông báo li bt kỳ, rõ ràng là đã có vấn đề đâu đó
trong h thng.
Các cng mà dch v TLS hoạt động trên đó phụ thuc vào phía nhà cung
cp. V nguyên tc, các kiu mã hóa này có th nhúng 1 cách “vô hình” –
transparent, vào trong h thng mà không yêu cu bt k hành động nào. Để
tìm hiu v h thng mail server có h tr tính năng này hay không:
$ nc smtp.irgendwo.de smtp
220 Mailserver ESMTP Exim 4.69 Wed, 16 Sep 2009 13:05:15 +0200
ehlo test
250-Mailserver Hello loki [10.1.2.73]
250-SIZE 78643200
250-PIPELINING
250-STARTTLS
250 HELP
quit
221 Mailserver closing connection
Danh sách này nên đi kèm với lnh StartTLS, chức năng chính là kích hoạt
quá trình mã hóa Transport Layer Security:
STARTTLS
220 TLS go ahead
Vào thời điểm này, Netcat s gây ra 1 s phin phc khó hiểu, nhưng
OpenSSL li có th khc phục điều này d dàng. Các nhà phát triển đã tạo ra
h thống SSL client đủ thông minh để yêu cầu mã hóa TLS đối vi các giao
thc SMTP, POP3, IMAP và FTP, mc dù không hoạt động vi tt c các
server:
$ openssl s_client -host mail.irgendwo.de -port 25 -starttls smtp
CONNECTED(00000003)
[...]
250 HELP
ehlo test
250-Mailserver Hello loki [10.1.2.73]
250-SIZE 52428800
250-PIPELINING
250-AUTH PLAIN LOGIN
250 HELP
Cơ chế xác thc SMTP
Vic xác thc trong SMTP có 1 chút rc rối hơn. Đối vi hu hết server, như
trong ví d này, h tr phương thức AUTH PLAIN, nơi các dữ liu phải đạt
chuẩn Base64. Quá trình này được x lý bi câu lnh Pearl sau:
$ perl -MMIME::Base64 -e 'print encode_base64("\000user-ju\000secret")'
AHVzZXItanUAc2VjcmV0
Kết qu thu được s phi khp vi yêu cu t SMTP server:
AUTH PLAIN AHVzZXItanUAc2VjcmV0
235 Authentication succeeded
Nhng tín hiu nhận được đã sẵn sàng vi các các câu lnh SMTP tiếp theo,
đối với các địa ch và server không h tr OpenSSL, người s dng có th
dùng gnutls-cli có sn trong gói gnutls-bin. Đầu tiên, nó to ra 1 kết ni có
dng cleartext ti bt k dch v độc quyn TLS nào như:
$ gnutls-cli -s -p submission smtp.heise.de
Resolving 'smtp.heise.de'...
Connecting to '10.1.2.41:587'...
- Simple Client Mode:
220 taxis03.heise.de ESMTP Exim 4.69 Wed, 16 Sep 2009 18:03:01 +0200
ehlo test
250-taxis03.heise.de Hello loki.ct.heise.de [10.10.22.75]
250-SIZE 78643200
250-PIPELINING
250-STARTTLS
thông tin tài liệu
Thông thường, hầu như tất cả hệ thống mail server đều yêu cầu lựa chọn cơ chế mã hóa kết nối. 2 phương thức sau được sử dụng – hoặc toàn bộ các địa chỉ gửi qua SSL hoặc 1 cơ chế khác là StartTLS sẽ được sử dụng để kích hoạt quá trình mã hóa sau khi nhận được yêu cầu kết nối
Mở rộng để xem thêm
từ khóa liên quan
xem nhiều trong tuần
yêu cầu tài liệu
Giúp bạn tìm tài liệu chưa có

LÝ THUYẾT TOÁN


×