Tải bản đầy đủ (.docx) (43 trang)

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

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.06 MB, 43 trang )

Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
MỤC LỤC
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ền kinh
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 tin hiện tại của
mã chứng khoán mà họ quan tâm. Các doanh nghiệp có mã chứng khoá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ình doanh nghiệp cho
các nhà đầu tư. Các nhà đầu tư sẽ theo dõi thông tin chứng khoá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 đọc
thô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ác
trang web chứng khoán bằng desktop hay laptop, chỉ khi đang di chuyển trên đường
1
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
1
1
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ùng chỉ 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ều
cầ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.
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ác


APIs) để 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ũng
như ý 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.
2
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
2
2
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ùng
vớ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 đời
của chiếc điện thoại thông minh( smartphone) thì những phần mềm về chứng khoán
chạ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ứu như:
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.
3
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
3
3

Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
Chương 3. LẬP TRÌNH ANDROID
3.1. Giới thiệu về hệ điều hành Android
3.1.1. Android là gì?
Android là hệ điều hành dành cho các thiết bị di động cầm tay như điện thoại,
máy tính bảng. Nó được thiết kế trên nhân linux 2.6 dành cho các dịch vụ hệ thống
cốt lõi như bảo mật, quản lý bộ nhớ, quản lý tiến trình, ngăn xếp mạng và mô hình
điều khiển. Lập trình viên muốn xây dựng ứng dụng trên nền tảng Android thì phải sử
dụng bộ Android SDK. Android SDK cung cấp các công cụ và APIs để giúp lập trình
viên xây dựng ứng dụng trên nền tảng Android dùng ngôn ngữ lập trình java.
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ác
framework.
• 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…
• Hỗ trợ đầy đủ cho môi trường lập trình tốt nhất bao gồm một bộ giả lập
Emulator, các công cụ debug, quản lý hiệu suất và bộ nhớ. Cách tích hợp
tất cả vào Eclipse IDE để lập trình.
4
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
4
4

Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
3.2. Các thành phần cơ bản của một ứng dụng
3.2.1. Activities
5
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
5
5
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ương
trì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 đối
tượ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 dung phầ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ác
nhau, nhưng muốn “Phát huy tác dụng” thì đều phải có cơ chế lây nhiễm. Thông
thường, có 3 cách mà virus hiện nay sử dụng để lây nhiễm từ máy tính này sang má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ưu
trữ như USB, HDD, FDD, Các thiết bị giải trí Kĩ thuật số …. Khi người dùng gắn cá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 đang lư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 qua

Internet 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ãng thứ
3 ….
6
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
6
6
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
- 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ển
hướng sang lây nhiễm thông qua thư điện tử thay cho các cách lây nhiễm truyền
thố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 địa
chỉ 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 địa chỉ 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ân khiế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ác trong
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 được
kí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ẫn
như 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ực thi
một đoạn mã, và máy tính bị có thể bị lây nhiễm virus.
7
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
7
7
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
- Lây nhiễm ngay khi mở để xem thư điện tử: Cách này vô cùng nguy hiểm bởi
chư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ễm
virus. 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ể định
hướ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ấp dẫn,
kích thích tò mò. Bởi trong tập tin đính kèm đó, hoàn toàn có thể chứa virus hoặ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ợp
antivirus, để loại bỏ khả năng nhiễm virus trước khi email được tải về máy tính của
bạ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ương
trì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ệu quả,
nên sử dụng các chương trình Internet Security để tích hợp nhiều chức năng toà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.
8
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
8
8
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ảng cá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 địa chỉ
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àng
tră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ài nội
dung. Tuy nhiên, vẫn không thể tránh được các Spam mail có nội dung khiêu khí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ụng trộ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 để thu thậ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 (chat
rooms) trên Internet, đặc biệt là các trang web cổng thông tin điện tử như AOL hay
Yahoo. Với những dịch vụ như thế người dùng thường vẫn sử dụng địa chỉ email
thự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ên

Internet 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.
9
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
9
9
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ất nhiề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ếc má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ụ
Đị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ó , Đị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ó ,
Đị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 địa
chỉ đó chỉ là những biến thể của một địa chỉ email – ví dụ Đị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à Đị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ần mềm đó sẽ kiểm tra xem địa chỉ
email nào “còn sống”, địa chỉ đó sẽ được đưa vào Email 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ặc download

(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 mail khá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ống
máy tính, modem và kết nối mạng Internet để gửi SPAM. Đây là một cách thức 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
10
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
10
10
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
server & domain riêng. Tuy nhiên, kết quả đem lại sẽ có thể là hàng chụ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ểm
nhấ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 đến
cá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ười dùng.
Đó là phần mềm cho phép SPAMMER có thể kiểm soát được hệ thống máy tính của
nạn nhân từ xa - hay nói một cách khác là SPAMMER đã bắt cóc được chiế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ống mạ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 mail
cho mail server chống lại chúng.
4.4.3 Chống Spam

Rò rỉ thông tin cá nhân. Hoàn toàn có thể thực hiện việc chặn spam mail này không
làm phiền tới người dùng.
4.4.3.1 Sử dụng DNS BlackList
Phương pháp sử dụng DNS black list sẽ chặn các email đến từ các địa chỉ nằm trong
danh sách DNS blacklist. Có hai loại danh sách DNS Blacklist thường được sử dụng,
đó là:
• 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ỉ />11
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
11
11
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
• Danh sách các máy chủ email cho phép hoặc bị lợi dụng thực hiện việc
chuyển tiếp spam được gửi đi từ spammer. Danh sách này được liệt kê và cập nhật
thường xuyên tại địa chỉ . Cơ sở dữ liệu Open Relay Database
nà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ánh vớ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ương
trình chống spam sẽ phân tích nội dung của email xem bên trong nó có chứa các liê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ệu
nà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 được
chỉ 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
12
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
12
12
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ới cá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ặn lạ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áy chủ
mail server trong công ty. Tính năng này sẽ sử dụng Active Directory hoặc LDAP
server để xác minh các địa chỉ người nhận có tồn tại hay không. Nếu số địa chỉ 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ết lậ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át
hiệ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ải xuố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ểm
tra đị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ền
Internet 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 được
dù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ân
tí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 ghi
SPF 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.
13
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
13
13
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
4.4.3.5 Chặn IP
Phương pháp này sẽ chặn các email được gửi đến từ các địa chỉ IP biết trước. Khi
một email đến, bộ lọc sẽ phân tích địa chỉ máy gửi và so sánh với danh sách địa chỉ bị
chặn. Nếu email đó đến từ một máy có địa chỉ trong danh sách này thì nó sẽ bị coi là
spam, ngược lại nó sẽ được coi là email hợp lệ.
4.4.3.6 Sử dụng bộ lọc Bayesian
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 trong cá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ác spam

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ựa
trên việc tính toán có bao nhiêu từ thường hay sử dụng trong spam, mà trong các
email 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ách
phâ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ủa từ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ấn
luyện”. Người quản trị phải cung cấp khoảng 1000 email thông thường và 1000 spam
để 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.
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
14
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
14
14
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ận
email từ đó. Nếu các email được gửi đến từ những địa chỉ nằm trong danh sách này
thì 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ột
email được gửi đi từ trong công ty thì địa chỉ người nhận sẽ được tự động đưa vào
danh 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ạng
username/password (ví dụ các địa chỉ: http://00722353893457472/hello.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ần tiêu đề của email có thể chứa địa chỉ email người nhận để cá nhân hóa
email đó. 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ư Đị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í dụ khi một khách
hàng phản hồi bằng cách sử dụng tính năng auto-reply với tiêu đề “your email
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.
• 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.
15
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
15
15
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ách
White list và từ đó trở về sau các email được gửi từ địa chỉ đó được tự động cho qua
cá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ận
lạ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ại

email đầ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.
Chương 5: CHƯƠNG TRÌNH E-MAIL SERVER

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ều rủ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 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.
16
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
16
16
Khoa Công Nghệ Thông Tin Ứng dụng xem bảng giá chứng khoán
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ới
TCP/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 định
danh duy nhất, định danh đó thường được gọi là một địa chỉ (Address). Địa chỉ trên
Internet 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ải
biết được địa chỉ (IP) của nhau và số hiệu cổng mà hai bên dùng để trao đổi thông tin.
Lớp IPAddress mới chỉ cung cấp cho ta một vế là địa chỉ IP (IPAddress), còn thiế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.
5.1.3 Lớp IPHostEntry
IPHostEntry là lớp chứa (Container) về thông tin địa chỉ của các máy trạm trên
Internet.
Lưu ý: Nó chỉ là nơi để "chứa" , do vậy trước khi sử dụng cần phải "Nạp" thông tin
vào cho nó.
Lớp này rất hay được dùng với lớp DNS
17
Thực tập tốt nghiệp GVHD: Trần Đức Doanh
17
17

×