1. Trang chủ
  2. » Thể loại khác

Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android

46 1,3K 8
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 46
Dung lượng 1,25 MB

Nội dung

Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android

Trang 1

MỤC LỤ

MỤC LỤC 1

Chương 1: MỞ ĐẦU 4

1.1 Lý do và Mục đích chọn đề tài 4

1.2 Phạm vi nghiên cứu của đề tài 4

Chương 2: TỔNG QUAN 6

2.1 Một số khái niệm căn bản 6

2.1.1 Email và Internet 6

2.1.2 Email Server 6

2.2 Một số khái niệm trong quản lý MailServer 8

2.2.1 User và Group 8

2.2.2 Mailling 9

2.2.3 Domain 9

2.2.4 Rule và Routing 11

2.2.5 Replay - Forward 11

2.2.6 Filter và Security 13

Chương 3: GIAO THỨC VÀ CÁC CHUẨN 14

3.1 Giao thức gửi Email SMTP (RFC2821) 14

3.1.1 Ý nghĩa các lệnh SMTP 14

3.1.2 Cú pháp của các lệnh 17

3.1.3 Tiến trình của giao thức SMTP 17

3.1.4 Ví dụ về một giao dịch của SMTP 20

3.2 Giao thức nhận Email 21

3.2.1 Giao thức POP3(RFC1081, RFC1082) 21

3.2.1.1 Các lệnh của POP3: 22

3.2.1.2 Tiến trình của giao dịch POP3 25

3.2.1.3 Ví dụ về một session của POP3: 27

3.2.2 Giao thức IMAP4 (RFC2060, RFC2193…) 28

3.2.2.1 Các lệnh của IMAP4 28

3.2.2.2 Tiến trình giao dịch IMAP 4 39

Trang 2

3.2.2.3 Sự khác biệt giữa hai giao thức POP3 và IMAP4 43

3.2.2.4 Những tính năng xuất sắc nhất của IMAP 44

3.3 Định dạng MIME 45

3.3.1 RFC 2045: Định dạng Internet Message Bodies 47

3.3.2 RFC 2046 – Media Type 56

3.3.3 RFC 2047 Message Header Extensions cho văn bản Non-ASCII 61

3.3.4 RFC 2048 Thủ tục đăng ký 64

3.3 Giao thức truyền tin NNTP 68

3.3.1 Tổng quan và các đặc điểm 68

3.3.2 Phân phối tin đối với NNTP 69

3.3.3 NNTP cho UNIX 70

3.3.4 Ðặc điểm kỹ thuật của NNTP 72

3.4 Giao thức bảo mật SSL & TLS 76

3.4.1 Khái niệm & Lịch sử 76

3.4.2 Cấu trúc giao thức SSL 77

3.4.3 SSL Record Protocol 83

3.4.4 SSL Handshake Protocol 85

3.5 Giao thức truyền tin FTP 92

Chương 4: ANTIVIRUS VÀ SPAM MAIL 94

4.1 Khái niệm 94

4.2 Phương thức lây nhiễm của Virus thông qua Email 94

4.3 Phòng chống Virus lây lan qua Email 96

4.4 Spam Mail 97

4.4.1 Khái niệm Spam mail và tác hại của nó 97

4.4.2 Cách thức gửi Spam Mail của các Spamer 97

4.4.3 Chống Spam 99

Chương 5: CHƯƠNG TRÌNH E-MAIL SERVER 105

5.1 Lập trình mạng trong Visual Studio C# 105

5.1.1 Lớp IP Address 105

5.1.2 Lớp IPEndpoint 105

5.1.3 Lớp IPHostEntry 106

Trang 3

5.1.5 Lớp UDP 106

5.1.6 Lớp TCP (TCP Client) 107

5.1.7 Lớp TCP Listener 107

5.2 Cơ sở dữ liệu 107

5.2.1 Lý do lựa chọn XML làm cơ sở dữ liệu 107

5.2.2 Mô tả cơ sở dữ liệu: 107

5.2.3 Ràng buộc dữ liệu 112

5.2.4 Mô hình Use-Case 113

5.3 Giao diện và chức năng chương trình 114

5.3.1 Yêu cầu hệ thống 114

5.3.2 Giao diện và Chức năng chương trình 115

Chương 6: KẾT LUẬN 129

6.1 Kết quả đạt được của đề tài 129

6.2 Hạn chế và hướng phát triển của đề tài 129

6.2.1 Hạn chế 129

6.2.2 Hướng phát triển 130

DANH MỤC TÀI LIỆU THAM KHẢO 131

Trang 4

Chương 1 MỞ ĐẦU

1.1 Lý do và Mục đích chọn đề tài

Ngày nay, sự phát triển công nghệ thông tin gắn liền với sự phát triển nềnkinh tế toàn cầu Trong nền kinh tế thị trường chứng khoán, nó là công cụ hỗ trợđắc lực cho các nhà đầu tư và doanh nghiệp Các nhà đầu tư cần biết thông tinhiện tại của mã chứng khoán mà họ quan tâm Các doanh nghiệp có mã chứngkhoán được niêm yết trên thị trường chứng khoán phải cập nhật liên tục tình hìnhdoanh nghiệp cho các nhà đầu tư Các nhà đầu tư sẽ theo dõi thông tin chứngkhoán mọi lúc mọi nơi thông qua phương tiện truyền thông

Càng ngày càng có nhiều người theo dõi thông tin chứng khoán trên các thiết

bị di động Smartphone ngày càng rẻ và trở nên phổ biến giúp người dùng đọcthông tin trên điện thoại tiện lợi và nhanh chóng hơn Khi ở chỗ làm họ vào cáctrang web chứng khoán bằng desktop hay laptop, chỉ khi đang di chuyển trênđường hay lúc không làm việc mới dùng điện thoại để truy cập Đa số người dùngchỉ vào đọc nhanh các thông tin chứng khoán rồi thoát ra ngay

Một ứng dụng xem nhanh thông tin chứng khoán ngay trên điện thoại là điềucần thiết

1.2 Phạm vi nghiên cứu của đề tài

Đề tài được tập trung vào ba nội dung chính:

1 Tìm hiểu lập trình Android

2 Tìm hiểu về đôi nét về thị trường chứng khoán

3 Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android

Trang 5

Trong nội dung thứ 1, em tìm hiểu về các khái niệm, nền tảng( hay còn gọi là cácAPIs) để xây dựng các ứng dụng trên hệ điều hành android dành cho điện thoại.Thiết lập môi trường để có thể lập trình ngay trên hệ điều hành windows

Nội dung thứ 2 là tìm hiểu về khái niệm thị trường chứng khoán, sự ra đời cũngnhư ý nghĩa của nó trong nền kinh tế hiện đại

Nội dung thứ 3, xây dựng một ứng dụng xem nhanh thông tin chứng khoán trênđiện thoại chạy hệ điều hành Android

Trang 6

Chương 2 TỔNG QUAN

Hiện nay trên thị trường xuất hiện nhiều trang web, phần mềm giúp nhà đầu tưtheo dõi chứng khoán, đặt lệnh, giao dịch trực tuyến nhanh chóng và tiện lợi Cùngvới sự phát triển của công nghệ trong những năm gần đây, mà điển hình là sự ra đờicủa chiếc điện thoại thông minh( smartphone) thì những phần mềm về chứng khoánchạy trên smartphone xuất hiện nhiều hơn Sự bảo mật, mức độ an toàn và tốc độtruy cập ngày càng được cải thiện Vấn đề lưu dữ liệu ngay trên smartphone để phục

vụ cho việc đánh giá, phân tích tình hình thị trường, mức độ giao dịch của mãchứng khoán,… cũng được chú ý đến

Có nhiều hệ điều hành cho smartphone như Android, iOS, Windows Phone.Đối với đề tài thực tập tốt nghiệp này em chọn xây dựng ứng dụng xem bảng giáchứng khoán trên nền tảng Android Một số mảng mà đề tài sẽ tập trung nghiên cứunhư:

1 Cách thức xây dựng một ứng dụng chạy trên Android

2 Tổ chức lưu trữ dữ liệu trên Android bằng cơ sở dữ liệu SQLite

3 Cách gọi web service sử dụng bộ thư viện mã nguồn mở Ksoap2

Trang 7

3.1.2 Các tính năng Android cung cấp

 Cho phép tái sử dụng và thay thế các thành phần có sẳn như cácframework

 Tối ưu hóa vùng nhớ trên thiết bị di động

 Tích hợp trình duyệt ngay trên thiết bị di động

 Tối ưu hóa đồ họa bởi thư viện đồ họa 2D tùy chọn, đồ họa 3D dựa trênđặc điểm kỹ thuật OpenGL ES 1.0

 Có cơ sở dữ liệu SQLite để phục vụ việc lưu trữ dữ liệu có cấu trúc

 Hỗ trợ một số định dạng thông dụng của âm thanh, video và hình ảnh(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)

 Hỗ trợ các kiểu kết nối mạng thông dụng như Bluetooth, EDGE, 3G, vàWifi

 Camera, định vị GPS…

Trang 8

 Hỗ trợ đầy đủ cho môi trường lập trình tốt nhất bao gồm một bộ giả lậpEmulator, các công cụ debug, quản lý hiệu suất và bộ nhớ Cách tích hợptất cả vào Eclipse IDE để lập trình

3.2 Các thành phần cơ bản của một ứng dụng

3.2.1 Activities

Trang 9

Chương 4: ANTIVIRUS VÀ SPAM MAIL

4.1 Khái niệm

Khi nhắc tới khái niệm Virus trong tin học, người ta thường nhắc tới những chươngtrình hay đoạn mã được thiết kế để tự nhân bản và sao chép chính nó vào các đốitượng lây nhiễm khác (file, ổ đĩa, máy tính ) Sau khi lây nhiễm vào máy tính,Virus có thể thực hiện nhiều “nhiệm vụ” khác nhau, tùy thuộc vào người viết ra nó,nhưng thường đó là sự phá hoại máy tính nạn nhân, hoặc ăn cắp các thông tin và dữliệu riêng tư trên đó Đa phần virus viết ra là nhắm vào các hệ điều hành Windows,

và vì đề tài mailserver của nhóm cũng làm trên nền hệ điều này này, nên nội dungphần này chủ yếu giới thiệu về Virus trên Windows, cũng như cách thức chúng sửdụng Email để lây lan

4.2 Phương thức lây nhiễm của Virus thông qua Email

Mọi loại Virus, dù chia làm nhiềm biến thể khác nhau, cách thức hoạt động khácnhau, nhưng muốn “Phát huy tác dụng” thì đều phải có cơ chế lây nhiễm Thôngthường, có 3 cách mà virus hiện nay sử dụng để lây nhiễm từ máy tính này sangmáy tính khác là:

- Lây nhiễm theo cách cổ điển: Là cách lây nhiễm thông qua các thiết bị lưutrữ như USB, HDD, FDD, Các thiết bị giải trí Kĩ thuật số … Khi người dùng gắncác thiết bị này vào máy tính & truy xuất dữ liệu trên nó, thì cũng là lúc Virus đanglưu trú trên đó lây nhiễm vào máy tính & ngược lại

- Lây nhiễm thông qua Internet: Cùng với sự phát triển của Internet, thì đócũng là một môi trường thuận lợi cho Virus lây lan và hoạt động Lây nhiễm quaInternet có thể thông qua việc trao đổi tài liệu, hình ảnh (thông qua chương trình).Hoặc qua các trang web (Cố ý hoặc vô ý) có chứa virus, qua phần mềm của hãngthứ 3 …

Trang 10

- Lây nhiễm qua Email: Đây là phương thức lây nhiễm được quan tâm chủyếu ở đề tài này.

Khi mà thư điện tử (e-mail) được sử dụng rộng rãi trên thế giới thì virus chuyểnhướng sang lây nhiễm thông qua thư điện tử thay cho các cách lây nhiễm truyềnthống

Khi đã lây nhiễm vào máy nạn nhân, virus có thể tự tìm ra danh sách các địa chỉ thưđiện tử sẵn có trong máy và nó tự động gửi đi hàng loạt (mass mail) cho những địachỉ tìm thấy Nếu các chủ nhân của các máy nhận được thư bị nhiễm virus màkhông bị phát hiện, tiếp tục để lây nhiễm vào máy, virus lại tiếp tục tìm đến các địachỉ và gửi tiếp theo Chính vì vậy số lượng phát tán có thể tăng theo cấp số nhânkhiến cho trong một thời gian ngắn hàng hàng triệu máy tính bị lây nhiễm, có thểlàm tê liệt nhiều cơ quan trên toàn thế giới trong một thời gian rất ngắn

Khi mà các phần mềm quản lý thư điện tử kết hợp với các phần mềm diệt virus cóthể khắc phục hành động tự gửi nhân bản hàng loạt để phát tán đến các địa chỉ kháctrong danh bạ của máy nạn nhân thì chủ nhân phát tán virus chuyển qua hình thức

tự gửi thư phát tán virus bằng nguồn địa chỉ sưu tập được trước đó

Phương thực lây nhiễm qua thư điển tử bao gồm:

- Lây nhiễm vào các file đính kèm theo thư điện tử (attached mail) Khi đóngưòi dùng sẽ không bị nhiễm virus cho tới khi file đính kèm bị nhiễm virus đượckích hoạt (do đặc diểm này các virus thường được "trá hình" bởi các tiêu đề hấp dẫnnhư sex, thể thao hay quảng cáo bán phần mềm với giá vô cùng rẻ.)

- Lây nhiễm do mở một liên kết trong thư điện tử Các liên kết trong thư điện

tử có thể dẫn đến một trang web được cài sẵn virus, cách này thường khai thác các

lỗ hổng của trình duyệt và hệ điều hành Một cách khác, liên kết dẫn tới việc thựcthi một đoạn mã, và máy tính bị có thể bị lây nhiễm virus

Trang 11

- Lây nhiễm ngay khi mở để xem thư điện tử: Cách này vô cùng nguy hiểm bởichưa cần kích hoạt các file hoặc mở các liên kết, máy tính đã có thể bị lây nhiễmvirus Cách này cũng thường khai thác các lỗi của hệ điều hành.

4.3 Phòng chống Virus lây lan qua Email

Như các phương thức lây lan virus qua Email vừa trình bày ở trên, ta có thể địnhhướng được một vài phương pháp phòng ngừa con đường lây lan này của Virus nhưsau:

Không nên mở các tập tin đính kèm (Attach file) email mà bạn không rõ người gửi

là ai Nhất là những email mang tính chất quảng bá với các nội dung và tiêu đề hấpdẫn, kích thích tò mò Bởi trong tập tin đính kèm đó, hoàn toàn có thể chứa virushoặc các đoạn mã độc hại khác, mà ngay khi bạn mở ra xem, nó sẽ được kích hoạt.Không nên kích hoạt các đường dẫn lạ gửi kèm email khi bạn không chắc chắn vềngười gửi, cũng như nội dung được giới thiệu về đường dẫn đó Bởi nó hoàn toàn

có thể đưa về máy bạn một con virus thông qua lỗi của trình duyệt và hệ điều hành

Sử dụng các nhà cugn cấp Email, hoặc các chương trình MailServer có tích hợpantivirus, để loại bỏ khả năng nhiễm virus trước khi email được tải về máy tính củabạn Hầu hết các chương trình Email server hiện nay đều cho phép tích hợp chươngtrình antivirus, hoặc chính bản thân nó cũng có module làm được điều đó

Cài đặt các chương trình antivirus trên máy tính, để thêm 1 lớp “áo khoác” bảo vệcho máy tính của bạn Với con đường lây nhiễm qua email, thì để đảm bảo hiệuquả, nên sử dụng các chương trình Internet Security để tích hợp nhiều chức năngtoàn diện hơn bảo vệ máy tính trong môi trường Internet

Thiết lập các chế độ phòng chống và lọc Spam mail Bởi phần lớn các email “bẩn”đều là Spam mail

Trang 12

4.4 Spam Mail

4.4.1 Khái niệm Spam mail và tác hại của nó

Spam mail được hiểu là các thư điện tử rác, với nội dung vô bổ, thường là quảngcáo về một nội dung, sản phẩm, hoặc website nào đó, đôi khi là kèm theo lừa đảo vàtrộm cắp thông tin cá nhân Spam mail thường được gửi cùng lúc cho hàng loạt địachỉ email, và gửi nhiều lần thông qua 1 mail server nào đó

Thông thường, Spam mail chỉ làm người dùng Email khó chịu vì bị tra tấn bởi hàngtrăm email được gửi tới trong một thời gian ngắn, mà nội dung thì chỉ có một vàinội dung Tuy nhiên, vẫn không thể tránh được các Spam mail có nội dung khiêukhích hay lợi dụng, nhằm tuyên truyền quảng bá cho thông tin xấu hoặc lợi dụngtrộm cắp thông tin cá nhân của người dùng

4.4.2 Cách thức gửi Spam Mail của các Spamer

Để gửi Spam, SPAMER thường phải đi qua 2 bước cơ bản: Thu thập địa chỉ email

và Gửi Spam

4.4.2.1 Thu thập địa chỉ Email

Những kẻ chuyên gửi SPAM – hay còn gọi SPAMER – có rất nhiều cách để thuthập địa chỉ email Phổ biến nhất là những cách sau đây:

Cách thứ nhất là thông qua nhóm thảo luận (newsgroups) hoặc phòng chat (chatrooms) trên Internet, đặc biệt là các trang web cổng thông tin điện tử như AOL hayYahoo Với những dịch vụ như thế người dùng thường vẫn sử dụng địa chỉ emailthực để đăng ký tài khoản SPAMER chỉ cần dùng một phần mềm đặc biệt là đã cóthể lấy được địa chỉ email của rất nhiều người

Cách thứ hai là khai thác trực tiếp từ Web Hiện đã có tới hàng triệu trang web trênInternet và SPAMER chỉ cần sử dụng các phần mềm tìm kiếm có khả năng lần tìm

ký tự @ trong các trang web – như bạn biết, đây là ký tự đại diện cho địa chỉ email.Kết quả là SPAMER cũng dễ dàng có được vô vàn các địa chỉ email trong tay.Những phần mềm như vậy thường được gọi là các SPAMBOT

Trang 13

Hoặc SPAMMER có thể thành lập một trang web cho đăng ký thành viên sử dụng,

mà yêu cầu cung cấp địa chỉ email xác thực là yêu cầu cốt lõi của việc đăng ký.Trên thực tế đó chỉ là một cách để thu thập địa chỉ email Trước đây, đã từng có rấtnhiều các trang web lớn rao bán địa chỉ email của các thành viên

Ngoài ra, còn một cách thức phổ biến nhất chính là cách thức được gọi là

“dictionary attack” Đây là phương thức liên quan đến việc lập trình cho một chiếcmáy tính có thể tạo ra rất nhiều biến thể từ một địa chỉ email bằng cách thay đổi các

ký tự - ví dụ mike1@yahoo.comĐịa chỉ email này đang được bảo vệ khỏi chươngtrình thư rác, bạn cần bật Javascript để xem nó , mike2@yahoo.comĐịa chỉ emailnày đang được bảo vệ khỏi chương trình thư rác, bạn cần bật Javascript để xem nó ,mike3@yahoo.comĐịa chỉ email này đang được bảo vệ khỏi chương trình thư rác,bạn cần bật Javascript để xem nó …Có một mô tả “dictionary attack” như sau:

“Dictionary attack sử dụng một phần mềm để tạo một kết nối đến một máy chủ thưđiện tử để gửi lên hàng triệu địa chỉ email bất kỳ Rất nhiều trong số những các địachỉ đó chỉ là những biến thể của một địa chỉ email – ví dụjdoe1abc@hotmail.comĐịa chỉ email này đang được bảo vệ khỏi chương trình thưrác, bạn cần bật Javascript để xem nó và jdoe2def@hotmail.com.Địa chỉ email nàyđang được bảo vệ khỏi chương trình thư rác, bạn cần bật Javascript để xem nó Phầnmềm đó sẽ kiểm tra xem địa chỉ email nào “còn sống”, địa chỉ đó sẽ được đưa vàoEmail spam list

Các thức cuối cùng và cũng là cách dễ nhất chính là việc mua một chiếc đĩa CD cóchứa hàng trăm hàng nghìn các địa chỉ email từ các SPAMMER khác, hoặcdownload (có thể phải mua lại) từ các Spammer khác

4.4.2.2 Gửi Spam

Có nhiều cách để các Spammer tiến hành gửi hàng trăm, hàng nghìn spam mailkhác nhau (Hợp pháp hoặc bất hợp pháp) điển hình như một vài cách dưới đây.Các thứ nhất là SPAMMER phải bỏ tiền đầu tư trang bị cho mình rất nhiều hệ thốngmáy tính, modem và kết nối mạng Internet để gửi SPAM Đây là một cách thức

Trang 14

hoàn toàn hợp pháp nhưng có chi phí cao, bởi Spammer phải dựng nguyên 1 hệthống mail server & domain riêng Tuy nhiên, kết quả đem lại sẽ có thể là hàngchục nghìn đô la tiền lợi nhuận thu về.

Cách thứ hai rẻ hơn nhiều nhưng lại bất hợp pháp và cũng là cách thức nguy hiểmnhất đối với người dùng Đó là cách gửi SPAM thông qua những máy chủ uỷ nhiệm

mở (open proxy servers) Nói đến phương thức gửi SPAM này thì cũng là nói đếncách thức SPAMMER bí mật đột nhập bắt cóc hệ thống máy tính của người khác đểxây dựng một cái được gọi là botnet Trước hết SPAMMER sẽ sử dụng công nghệ

và các thủ đoạn cần thiết để bí mật cài đặt một phần mềm lên hệ thống của ngườidùng Đó là phần mềm cho phép SPAMMER có thể kiểm soát được hệ thống máytính của nạn nhân từ xa - hay nói một cách khác là SPAMMER đã bắt cóc đượcchiếc máy tính đó Chiếc máy tính đó đã trở thành một thứ được gọi là “Zombie”(thây ma) Khi có nhiều Zombie, SPAMMER sẽ tiến hành xây dựng một hệ thốngmạng các Zombie – hay đây chính là hệ thống mạng botnet Đến đây cách thức thứhai đã giống với cách thức thứ nhất, chỉ khác một điều là SPAMMER không phải cótiền ra mua các hệ thống máy tính mà chúng đi “bắt cóc” máy tính của người khác.Nắm được các phương thức gửi spam mail, cũng góp phần để xây dựng bộ loc mailcho mail server chống lại chúng

• Danh sách các miền gửi spam đã biết, danh sách các miền này được liệt kê

và cập nhật tại địa chỉ http://spamhaus.org/sbl

Trang 15

• Danh sách các máy chủ email cho phép hoặc bị lợi dụng thực hiện việcchuyển tiếp spam được gửi đi từ spammer Danh sách này được liệt kê và cập nhậtthường xuyên tại địa chỉ http://www.ordb.org Cơ sở dữ liệu Open Relay Databasenày được duy trì bởi ORDB.org là một tổ chức phi lợi nhuận.

Khi một email được gửi đi, nó sẽ đi qua một số SMTP server trước khi chuyển tớiđịa chỉ người nhận Địa chỉ IP của các SMTP server mà email đó đã chuyển quađược ghi trong phần header của email Các chương trình chống spam sẽ kiểm tra tất

cả các địa chỉ IP đã được tìm thấy trong phần header của email đó sau đó so sánhvới cơ sở dữ liệu DNS Blacklist đã biết Nếu địa chỉ IP tìm thấy trong phần này cótrong cơ sở dữ liệu về các DNS Blacklist, nó sẽ bị coi là spam, còn nếu không,email đó sẽ được coi là một email hợp lệ

Phương pháp này có ưu điểm là các email có thể được kiểm tra trước khi tải xuống,

do đó tiết kiệm được băng thông đường truyền Nhược điểm của phương pháp này

là không phát hiện ra được những email giả mạo địa chỉ người gửi

4.4.3.2 Sử dụng SURBL list

Phương pháp sử dụng SURBL phát hiện spam dựa vào nội dung của email Chươngtrình chống spam sẽ phân tích nội dung của email xem bên trong nó có chứa cácliên kết đã được liệt kê trong Spam URI Realtime Blocklists (SURBL) hay không.SURBL chứa danh sách các miền và địa chỉ của các spammer đã biết Cơ sở dữ liệunày được cung cấp và cập nhật thường xuyên tại địa chỉ www.surbl.org

Có nhiều danh sách SURBL khác nhau như sc.surbl.org, ws.surbl.org, ob.surbl.org,ab.surbl.org , các danh sách này được cập nhật từ nhiều nguồn Thông thường,người quản trị thường kết hợp các SURBL list bằng cách tham chiếu tới địa chỉmulti.surbl.org Nếu một email sau khi kiểm tra nội dung có chứa các liên kết đượcchỉ ra trong SURBL list thì nó sẽ được đánh dấu là spam email, còn không nó sẽđược cho là một email thông thường

Phương pháp này có ưu điểm phát hiện được các email giả mạo địa chỉ người gửi đểđánh lừa các bộ lọc Nhược điểm của nó là email phải được tải xuống trước khi tiến

Trang 16

hành kiểm tra, do đó sẽ chiếm băng thông đường truyền và tài nguyên của máy tính

để phân tích các nội dung email

4.4.3.3 Kiểm tra người nhận

Tấn công spam kiểu “từ điển” sử dụng các địa chỉ email và tên miền đã biết để tạo

ra các địa chỉ email hợp lệ khác Bằng kỹ thuật này spammer có thể gửi spam tớicác địa chỉ email được sinh ra một cách ngẫu nhiên Một số địa chỉ email trong số

đó có thực, tuy nhiên một lượng lớn trong đó là địa chỉ không tồn tại và chúng gây

ra hiện tượng “lụt” ở các máy chủ mail

Phương pháp kiểm tra người nhận sẽ ngăn chặn kiểu tấn công này bằng cách chặnlại các email gửi tới các địa chỉ không tồn tại trên Active Directory hoặc trên máychủ mail server trong công ty Tính năng này sẽ sử dụng Active Directory hoặcLDAP server để xác minh các địa chỉ người nhận có tồn tại hay không Nếu số địachỉ người nhận không tồn tại vượt quá một ngưỡng nào đó (do người quản trị thiếtlập) thì email gửi tới đó sẽ bị coi là spam và chặn lại

4.4.3.4 Kiểm tra địa chỉ

Bằng cách kiểm tra địa chỉ người gửi và người nhận, phần lớn spam sẽ được pháthiện và chặn lại Thực hiện kiểm tra địa chỉ người gửi trước khi email được tảixuống sẽ tiết kiệm được băng thông đường truyền cho toàn hệ thống

Kỹ thuật Sender Policy Framework (SPF, www.openspf.org) được sử dụng để kiểmtra địa chỉ người gửi email Kỹ thuật SPF cho phép chủ sở hữu của một tên miềnInternet sử dụng các bản ghi DNS đặc biệt (gọi là bản ghi SPF) chỉ rõ các máy đượcdùng để gửi email từ miền của họ Khi một email được gửi tới, bộ lọc SPF sẽ phântích các thông tin trong trường “From” hoặc “Sender” để kiểm tra địa chỉ người gửi.Sau đó SPF sẽ đối chiếu địa chỉ đó với các thông tin đã được công bố trong bản ghiSPF của miền đó xem máy gửi email có được phép gửi email hay không Nếu emailđến từ một server không có trong bản ghi SPF mà miền đó đã công bố thì email đó

bị coi là giả mạo

Trang 17

Bộ lọc Bayesian hoạt động dựa trên định lý Bayes để tính toán xác suất xảy ra một

sự kiện dựa vào những sự kiện xảy ra trước đó Kỹ thuật tương tự như vậy được sửdụng để phân loại spam Nếu một số phần văn bản xuất hiện thường xuyên trongcác spam nhưng thường không xuất hiện trong các email thông thường, thì có thểkết luận rằng email đó là spam

Trước khi có thể lọc email bằng bộ lọc Bayesian, người dùng cần tạo ra cơ sở dữliệu từ khóa và dấu hiệu (như là ký hiệu $, địa chỉ IP và các miền ) sưu tầm từ cácspam và các email không hợp lệ khác

Mỗi từ hoặc mỗi dấu hiệu sẽ được cho một giá trị xác suất xuất hiện, giá trị này dựatrên việc tính toán có bao nhiêu từ thường hay sử dụng trong spam, mà trong cácemail hợp lệ thường không sử dụng Việc tính toán này được thực hiện bằng cáchphân tích những email gửi đi của người dùng và phân tích các kiểu spam đã biết

Để bộ lọc Bayesian hoạt động chính xác và có hiệu quả cao, cần phải tạo ra cơ sở

dữ liệu về các email thông thường và spam phù hợp với đặc thù kinh doanh củatừng công ty Cơ sở dữ liệu này được hình thành khi bộ lọc trải qua giai đoạn “huấnluyện” Người quản trị phải cung cấp khoảng 1000 email thông thường và 1000spam để bộ lọc phân

4.4.3.7 Sử dụng danh sách Black/white list

Việc sử dụng các danh sách black list, white list giúp cho việc lọc spam hiệu quảhơn

Trang 18

Black list là cơ sở dữ liệu các địa chỉ email và các miền mà bạn không bao giờmuốn nhận các email từ đó Các email gửi tới từ các địa chỉ này sẽ bị đánh dấu làspam

White list là cơ sở dữ liệu các địa chỉ email và các miền mà bạn mong muốn nhậnemail từ đó Nếu các email được gửi đến từ những địa chỉ nằm trong danh sách nàythì chúng luôn được cho qua

Thông thường các bộ lọc có tính năng tự học, khi một email bị đánh dấu là spam thìđịa chỉ người gửi sẽ được tự động đưa vào danh sách black list Ngược lại, khi mộtemail được gửi đi từ trong công ty thì địa chỉ người nhận sẽ được tự động đưa vàodanh sách white list

4.4.3.8 Kiểm tra Header

Phương pháp này sẽ phân tích các trường trong phần header của email để đánh giáemail đó là email thông thường hay là spam Spam thường có một số đặc điểm như:

• Để trống trường From: hoặc trường To:

• Trường From: chứa địa chỉ email không tuân theo các chuẩn RFC

• Các URL trong phần header và phần thân của message có chứa địa chỉ IPđược mã hóa dưới dạng hệ hex/oct hoặc có sự kết hợp theo dạngusername/password (ví dụ các địa chỉ: http://00722353893457472/hello.com,www.citibank-.com@scammer.comĐịa chỉ email này đang được bảo vệ khỏichương trình thư rác, bạn cần bật Javascript để xem nó )

• Phần tiêu đề của email có thể chứa địa chỉ email người nhận để cá nhân hóaemail đó Lưu ý khi sử dụng tính năng này với các địa chỉ email dùng chung

có dạng như sales@company.com.Địa chỉ email này đang được bảo vệ khỏichương trình thư rác, bạn cần bật Javascript để xem nó Ví dụ khi một kháchhàng phản hồi bằng cách sử dụng tính năng auto-reply với tiêu đề “youremail to sales” có thể bị đánh dấu là spam

• Gửi tới một số lượng rất lớn người nhận khác nhau

Trang 19

• Chỉ chứa những file ảnh mà không chứa các từ để đánh lừa các bộ lọc.

• Sử dụng ngôn ngữ khác với ngôn ngữ mà người nhận đang sử dụng

Dựa vào những đặc điểm này của spam, các bộ lọc có thể lọc chặn

4.4.3.9 Sử dụng tính năng Challenge/Response

Tính năng này sẽ yêu cầu người lần đầu gửi email xác nhận lại email đầu tiên mà họ

đã gửi, sau khi xác nhận, địa chỉ email của người gửi được bổ sung vào danh sáchWhite list và từ đó trở về sau các email được gửi từ địa chỉ đó được tự động cho quacác bộ lọc

Do spammer sử dụng các chương trình gửi email tự động và họ không thể xác nhậnlại tất cả các email đã gửi đi, vì thế những email không được xác nhận sẽ bị coi làspam

Phương pháp này có hạn chế là nó yêu cầu những người gửi mới phải xác nhận lạiemail đầu tiên mà họ gửi Để khắc phục nhược điểm này, người quản trị chỉ nên sửdụng phương pháp này đối với những email mà họ nghi ngờ là spam

Hiện nay việc sử dụng Internet trở nên phổ biến, việc các doanh nghiệp xây dựng 1

hệ thống mail server là tất yếu Tuy nhiên việc truy cập mạng ra Internet có nhiềurủi ro do đó việc bảo vệ các dữ liệu cá nhân và bảo vệ hệ thống email là rất quan

Trang 20

trọng do đó cần xây dựng 1 hệ thống Server Mail và bảo mật hệ thống là rất quan

trọng

5.1 Lập trình mạng trong Visual Studio C#

C# là một ngôn ngữ lập trình rất hiện đại và chạy trên nền tản công nghệ NET mạnh mẽ

Do đó mà ngày nay C# được rất nhiều các coder trên thế giới ưu chuộng và tìm hiều.Một tập các lớp dùng để lập trình mạng thuộc hai không gian tên: System.Net vàSystem.Net.Sockets Các lớp này hỗ trợ mọi thứ, từ lập trình dựa-trên-socket vớiTCP/IP cho đến download file và trang HTML từ web thông qua HTTP

5.1.1 Lớp IP Address

Trên Internet mỗi một trạm (có thể là máy tính, máy in, thiết bị …) đều có một địnhdanh duy nhất, định danh đó thường được gọi là một địa chỉ (Address) Địa chỉ trênInternet là một tập hợp gồm 4 con số có giá trị từ 0-255 và cách nhau bởi dấu chấm.Trong MS.NET, lớp IPAddress là một lớp dùng để mô tả địa chỉ này Đây là lớp rất

cơ bản được sử dụng khi chúng ta thao tác (truyền) vào các lớp như IPEndpoint,UDP, TCP, Socket …

5.1.2 Lớp IPEndpoint

Trong mạng, để hai trạm có thể trao đổi thông tin được với nhau thì chúng cần phảibiết được địa chỉ (IP) của nhau và số hiệu cổng mà hai bên dùng để trao đổi thôngtin Lớp IPAddress mới chỉ cung cấp cho ta một vế là địa chỉ IP (IPAddress), cònthiếu vế thứ hai là số hiệu cổng (Port number) Như vậy, lớp IPEndpoint chính làlớp chứa đựng cả IPAddress và Port number

Trang 21

Lớp này rất hay được dùng với lớp DNS

5.1.4 Lớp DNS

Lớp Dns cung cấp các dịch vụ phân giải tên miền Bạn có thể gọi phương thứcGetHostName để lấy về tên host của máy tính hiện hành Sau đó, bạn có thể dịchtên này sang địa chỉ IP bằng phương thức GetHostEntry

DNS (Domain Name Service) là một lớp giúp chúng ta trong việc phân giải tênmiền (Domain Resolution) đơn giản Ngoài ra lớp Dns còn có rất nhiều phươngthức cho ta thêm thông tin về máy cục bộ như tên, địa chỉ v.v…

Trong NET, lớp UDPClient (nằm trong System.Net.Sockets) đóng gói các chức

năng của giao thức UDP

có tên là TCPClient và TCPListener

Trang 22

5.2.1 Lý do lựa chọn XML làm cơ sở dữ liệu

- XML có thể tách rời dữ liệu Sử dụng XML, dữ liệu được chứa trong các tập tinXML riêng biệt

- XML có thể mô tả thông tin của những đối tượng phức tạp mà cơ sở dữ liệu quan

hệ không thể giải quyết được

- XML có thể dùng để chuyển đổi dữ liệu giữa các hệ thống không tương thích

- XML dùng để chia sẻ dữ liệu với những tập tin văn bản đơn giản dễ hiểu

- XML cững được dùng để lưu trữ dữ liệu, có thể làm cho dữ liệu của chúng ta hữuích hơn

5.2.2 Mô tả cơ sở dữ liệu:

Description, Mailbox_Size, Enable, AlloRelay)

Users

UserID : String FullName : String UserName : String

Domains

DomainID : String DomainName : String Description : String

Trang 23

Password : String DomainName : String Description : String Mailbox_Size: Integer Enable : Boolean AlloRelay: Boolean

Mô tả: Lưu trữ danh sách user và thông tin của từng user trong hệ thống

Groups

GroupID : String GroupName : String Description : String Enable : Boolean

Mô tả: Lưu trữ danh sách group và thông tin của từng group trong hệ thống

Enable)

MalingLists

MailingListID : String MailingListName : String DomainName : String Description : String Enable : Boolean

Mô tả: Lưu trữ danh sách các địa chỉ mailing trong hệ thống

MailingListAddress

AddressID : String MailingListID : String Address : String

Ngày đăng: 17/01/2013, 10:34

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[7] Document Open Source code HmailServer http://www.hmailserver.com/documentation/ Link
[1] Giáo Trình Mạng Máy Tính V1.0 – Th.s Ngô Bá Hùng – Ks Phạm Thế Phi, Đại Học Cần Thơ - Khoa Công Nghệ Thông Tin Khác
[2] Các giải pháp lập trình C# - Nguyễn Ngọc Bình Phương, Thái Thanh Phong – Nhà sách Đất Việt Khác
[3] Lab MCSA 70-291 – Trung tâm đào tạo Nhất Nghệ Khác
[4] Kỹ Thuật Lập Trình C# 2.0 – Biên dịch từ cuốn Professional C#, 2nd Edition, Xuất bản bởi Wrox Press Ltd Khác
[6] Các RFC về SMTP, IMAP4, POP3, MIME, ICMP, DNS như RFC821, RFC822, RFC2060, RFC1275, RFC1225,RFC876,… Khác
[8] Chương trình mail client Outlook Express [9] Chương trình mailserver Mdeamon Khác

HÌNH ẢNH LIÊN QUAN

Hình 5.1: Cấu hình SMTP - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.1 Cấu hình SMTP (Trang 26)
Hình 5.2: Cấu hình POP3 - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.2 Cấu hình POP3 (Trang 27)
Hình 5.4: Cấu hình Relay - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.4 Cấu hình Relay (Trang 28)
Hình 5.3: Cấu hình IMAP4 - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.3 Cấu hình IMAP4 (Trang 28)
Hình 5.5 Cấu hình file Login - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.5 Cấu hình file Login (Trang 29)
Hình 5.7: Thêm domain mới - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.7 Thêm domain mới (Trang 30)
Hình 5.6: Quản lý Domain - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.6 Quản lý Domain (Trang 30)
Hình 5.9: Thêm User - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.9 Thêm User (Trang 31)
Hình 5.11: Quản lý Group - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.11 Quản lý Group (Trang 32)
Hình 5.13: Quản lý Mailing - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.13 Quản lý Mailing (Trang 33)
Hình 5.15: Cấu hình Security - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.15 Cấu hình Security (Trang 34)
Hình 6.15: Thêm một rule cho security - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 6.15 Thêm một rule cho security (Trang 34)
Hình 6.16: Giao diện backup và restore - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 6.16 Giao diện backup và restore (Trang 35)
Hình 5.17: Giao diện đăng nhập webmail - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.17 Giao diện đăng nhập webmail (Trang 36)
Hình 5.18: Giao diện mailbox trong webmail - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.18 Giao diện mailbox trong webmail (Trang 36)
Hình 5.19: Giao diện cấu hình trong webmail (cho user) - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.19 Giao diện cấu hình trong webmail (cho user) (Trang 37)
Hình 5.20: Trang quản lý danh bạ - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.20 Trang quản lý danh bạ (Trang 37)
Hình 5.21: Đăng nhập webAdmin - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.21 Đăng nhập webAdmin (Trang 38)
Hình 5.23: Cấu hình trong webAdmin - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.23 Cấu hình trong webAdmin (Trang 39)
Hình 5.22: Cấu hình trong webAdmin - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.22 Cấu hình trong webAdmin (Trang 39)
Hình 5.25: Cấu hình trong WebAdmin - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.25 Cấu hình trong WebAdmin (Trang 40)
Hình 5.24: Cấu hình trong webAdmin - Xây dựng ứng dụng xem bảng giá chứng khoán trực tuyến trên điện thoại sử dụng hệ điều hành Android
Hình 5.24 Cấu hình trong webAdmin (Trang 40)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w