Nghiên cứu và xây dựng hệ thống giám sát Website trường Đại học Sư phạm kỹ thuật Hưng Yên
Ngày nay nhu cầu truyền tải thông tin lớn,
việc ứng dụng các website, các phương tiện quảng
bá thông tin không chỉ dừng lại ở doanh nghiệp mà
còn hướng đến cả người dùng cá nhân. Từ đó, nhu
cầu đảm bảo an toàn thông tin truyền tải trên các
website trở thành chủ đề nóng trong xã hội. Nắm
bắt xu thế đó, nhóm tác giả đã thực hiện nghiên cứu
các vấn đề về tấn công và cách thức phòng tránh các
cuộc tấn công vào các website trên internet.
Để tấn công vào các website hacker đã thực
hiện khai thác một số lỗ hổng từ Hệ điều hành, hệ quản
trị cơ sở dữ liệu, các dịch vụ internet, lỗi lập trình [1]
Các lỗ hổng bảo mật trên một hệ thống là
các điểm yếu có thể tạo ra sự ngưng trệ của dịch
vụ, thêm quyền đối với người sử dụng hoặc cho
phép các truy nhập không hợp pháp vào hệ thống.
Các lỗ hổng cũng có thể nằm ngay các dịch vụ như
Sendmail, Web, Ftp. Ngoài ra các lỗ hổng còn tồn
tại ngay chính tại hệ điều hành như trong Windows,
Unix hoặc trong các ứng dụng mà sử dụng thường
xuyên như Word, Excel,. [2]
Trong phần tiếp theo chúng tôi tổng kết
những kiểu tấn công phổ biến nhằm vào các website.
Chúng tôi cũng nhắc lại cách tiếp cận giải pháp chủ
yếu được áp dụng để phòng, chống những kiểu tấn
công trên. Đây là cơ sở hình thày và phát triển giải
pháp giám sát website và những ý tưởng chính của
nhóm tác giả. Quá trình thiết kế, thực nghiệm đã
phản ánh được kết quả khả quan của giải pháp đưa
ra trong bài báo.
2. Kỹ thuật tấn công Website và giải pháp phòng
chống
2.1. Tấn công SQL Injection
SQL Injection là một kĩ thuật cho phép những
kẻ tấn công lợi dụng lỗ hổng trong việc kiểm tra dữ
liệu nhập trong các ứng dụng web, các thông báo lỗi
của hệ quản trị cơ sở dữ liệu để “tiêm vào” (inject)
và thi hành các câu lệnh SQL bất hợp pháp gây ảnh
hưởng tới dữ liệu người dùng. Lỗi này thường xảy
ra trên các ứng dụng Web có dữ liệu được quản lí
bằng các hệ quản trị cơ sở dữ liệu như SQL Server,
MySQL, Oracle,. [3]

Trang 1

Trang 2

Trang 3

Trang 4

Trang 5

Trang 6
Tóm tắt nội dung tài liệu: Nghiên cứu và xây dựng hệ thống giám sát Website trường Đại học Sư phạm kỹ thuật Hưng Yên
i máy chủ (server) thì nó thực hiện
việc bắt tay ba lần (three-ways-handshake) thông
qua các gói tin (packet).
ISSN 2354-0575
Khoa học & Công nghệ - Số 16/Tháng 12 - 2017 Journal of Science and Technology 73
- Tấn công chiếm dụng băng thông
(Bandwidth Depletion): Có 2 loại tấn công chính:
+ Thứ nhất là làm ngập bằng cách gửi liên
tục các gói tin có kích thước lớn đến hệ thống nạn
nhân, làm nghẽn băng thông nạn nhân.
+ Thứ hai là sử dụng mạng khuếch đại, kẻ
tấn công gửi thông tin đến một địa chỉ phát quảng
bá (broadcast), tất cả hệ thống trong mạng con nạn
nhân (victim) trong phạm vi truy xuất địa chỉ quảng
bá sẽ gửi lại hệ thống nạn nhân một thông điệp phản
hồi cho máy nạn nhân chấp nhận trao đổi dữ liệu.
Phương pháp này khuếch đại dòng lưu lượng làm
cho hệ thống nạn nhân giảm băng thông đáng kể.
Có ba giai đoạn chính trong quá trình phòng
chống tấn công DOS:
- Giai đoạn ngăn ngừa: tối thiểu hóa lượng
Agent, tìm và vô hiệu hóa các Handler.
- Giai đoạn đối đầu với cuộc tấn công: Phát
hiện và ngăn chặn cuộc tấn công, làm suy giảm và
dừng cuộc tấn công, chuyển hướng cuộc tấn công.
- Giai đoạn sau khi cuộc tấn công xảy ra: thu
thập chứng cứ và rút kinh nghiệm.
Các giai đoạn chi tiết trong phòng chống DOS:
- Tối thiểu hóa số lượng Agent: Từ phía
người dùng (user), một phương pháp rất tốt để ngăn
ngừa tấn công DOS là từng người dùng mạng sẽ tự
đề phòng không để bị lợi dụng tấn công hệ thống
khác. Muốn đạt được điều này thì ý thức và kỹ thuật
phòng chống phải được phổ biến rộng rãi cho các
người dùng mạng. Các người dùng mạng phải liên
tục thực hiện các quá trình bảo mật trên máy vi tính
của mình. Một số giải pháp tích hợp sẵn khả năng
ngăn ngừa việc cài đặt đoạn mã (code) nguy hiểm
vào phần cứng (hardware) và phần mềm (software)
của từng hệ thống. Về phía người dùng mạng họ nên
cài đặt và cập nhật liên tục các phần mềm phòng
chống virus, các bản sửa lỗi của hệ điều hành [6].
- Tìm và vô hiệu hóa các bộ xử lý (handler):
Một nhân tố vô cùng quan trọng trong tấn công
mạng (attack-network) là bộ xử lý (handler), nếu có
thể phát hiện và vô hiệu hóa bộ xử lý thì khả năng
phòng chống tấn công DOS thành công là rất cao.
3. Xây dựng hệ thống đảm bảo an ninh Website
cho trường ĐHSPKT Hưng Yên
3.1. Yêu cầu
Thực hiện 5 bước cơ bản cần thiết để duy trì
an ninh cho Hệ điều hành (HĐH):
● Lập kế hoạch cài đặt, triển khai HĐH máy
chủ và các thành phần khác cho Webserver đó.
● Vá và cập nhật HĐH máy chủ theo yêu cầu.
● Hardening (cứng hóa) và cấu hình HĐH
máy chủ để giải quyết tương xứng vấn đề an ninh.
● Cài đặt và cấu hình kiểm soát bảo mật bổ
sung (additional security controls) nếu cần thiết.
● Kiểm tra HĐH máy chủ để đảm bảo rằng
bốn bước trước đó giải quyết đầy đủ tất cả các vấn
đề an ninh.
3.2. Xây dựng chương trình đảm bảo an ninh hệ
thống
Một trong những kiểu tấn công được biết
rộng rãi nhất là tấn công thay đổi Website.Nó
thường là các mã độc (virus, worm, trojan, và các
loại mã độc khác), được thiết kế để xóa bỏ, sửa đổi,
hoặc thay thế các trang web trên webserver.
Những cuộc tấn công thay đổi Website đã
được thực hiện để xâm phạm tính toàn vẹn của Web
bằng một trong những hình thức sau:
- Thay đổi nội dung của trang Web.
- Thay đổi một phần nội dung trang Web.
- Thay thế toàn bộ trang Web.
- Sử dụng lại trang Web cũ.
- Thay đổi bề ngoài của trang Web.
- Chuyển hướng trang web.
- Phá hủy hoặc xóa bỏ trang Web.
Bài báo đề xuất xây dựng hệ thống giám sát
website nhằm phát hiện kịp thời các cuộc tấn công
(ở trên) bằng hệ thống đa kiểm tra dựa trên thuật
toán dấu vân tay nhanh (fast fingerprint algorithm)
để đảm bảo tính toàn vẹn của trang web đồng thời
tạo ra thông điệp cảnh báo có ý nghĩa và phục hồi
lại các trang web đã bị tấn công.
3.3. Hàm băm mật mã
Hàm băm là nền tảng cho nhiều ứng dụng
mã hóa. Có nhiều thuật toán để thực hiện hàm băm,
trong số đó, phương pháp SHA-1 và MD5 thường
được sử dụng khá phổ biến từ thập niên 1990 đến
nay [4].
Hàm băm mật mã phải có khả năng chống lại
các loại tấn công mật mã, tối thiểu phải đảm bảo có
3 tính chất sau:
● Kháng tiền ảnh (Pre-image resistance):
Với một mã băm h bất kỳ, khó tìm được một thông
điệp m nào mà h = hash(m).
● Kháng tiền ảnh thứ hai (Second pre-image
resistance): Với một thông điệp m
1
bất kỳ, khó tìm
được một thông điệp thứ hai m
2
sao cho m
1
≠ m
2
và
hash(m
1
) = hash(m
2
).
● Kháng xung đột (Collision resistance):
Khó tìm được một cặp thông điệp m
1
và m
2
sao cho
m
1
≠ m
2
và hash(m
1
) = hash(m
2
).
Thực hiện:
Bước 1: Gọi H là trạng thái có kích thước n
bit, f là “hàm nén” thực hiện thao tác trộn khối dữ
liệu với trạng thái hiện hành.
Bước 2: Khởi gán H
0
bằng một vector khởi
ISSN 2354-0575
Journal of Science and Technology74 Khoa học & Công nghệ - Số 16/Tháng 12 - 2017
tạo nào đó.
Bước 3: H
i
= f(H
i-1
,M
i
) với i = 1, 2, 3, , s
Khi đó: Hs chính là thông điệp rút gọn của
thông điệp M ban đầu.
Hình 3.1. Sơ đồ Merkel-Damgard
3.4. Thuật toán Rabin Fingerprint
Thuật toán Rabin Fingerprint là một trong
nhiều thuật toán Fingerprint thực hiện khóa công
khai sử dụng các đa thức trên một trường giới hạn
[10].
Thuật toán được sử dụng trong hệ thống như
sau:
● Đầu vào: Tài liệu (trang web công khai)
● Đầu ra: Dấu vân tay tài liệu (các giá trị
băm của tài liệu đó)
Bước 1: Bắt đầu.
Bước 2: Xử lý văn bản, xoá hết tất cả khoảng
trắng và các kí tự đặc biệt (như: , %,!, ).
Bước 3: Chia khối văn bản đã xử lý đó thành
các chuỗi con có độ dài K.
// Số lượng chuỗi con có độ dài K và số
lượng giá trị băm (mã băm) bằng (m-K+1), với m là
kích thước của tài liệu.
Bước 4: Tính toán giá trị băm đối với mỗi
chuỗi con bằng cách tính H(P) như sau:
// H(P) là một tuyến tính trong n (n là độ dài
của P)
Bước 5: Lưu lại tất cả các giá trị băm của
văn bản.
Bước 6: Kết thúc.
3.5. Thuật toán Rabin Fingerprint cải tiến
Thuật toán cải tiến được đề xuất trong hệ
thống như sau:
Đầu vào: Tài liệu (trang web công khai)
Đầu ra: Dấu vân tay tài liệu (các giá trị băm
của tài liệu đó)
Bước 1: Bắt đầu.
Bước 2: Xử lý văn bản, xoá hết tất cả khoảng
trắng và các kí tự đặc biệt (như: , %, !, ) từ mã
HTML (mã trang web) để thu được một khối văn
bản thuần túy (pure text block).
Bước 3: Chia văn bản M thành K khối, mỗi
khối con có kích thước là n. K=m/n với m là kích
thước của văn bản M, n là số nguyên dương cho
trước là kích thước của mỗi chuỗi con.
Bước 4: Tính mã băm H(P) cho các chuỗi
con như sau:
Khởi tạo:
T
r
= T
[r..r+n-1]
;
K=0;
H
(S)
= S
(n)
+ 2*S
(n-1)
+ 4*S
(n-2)
+ + (2n-1)*S
(1)
;
While (K<m/n)
{
for (r=K*n; r<=(K*n+n); r++){
Hp(T
r
)= (Hp(T
r
) + T
(r)
) mod p
//Tính gt băm cho các chuỗi con, p là nt lớn.
}
K++;
}
Bước 5: Lưu lại tất cả các giá trị băm của
văn bản.
Bước 6: Kết thúc.
Hình 3.3. Minh hoạ cải tiến giải thuật
3.6. Hệ thống giám sát Website
Mục đích chính của hệ thống giám sát
website (Anti Website Defacement System) là để
phát hiện bất kỳ các cuộc tấn công thay đổi web nào
và phục hồi các tập tin của web đã bị tấn công. Để đạt
được nhiệm vụ này, hệ thống giám sát website được
thiết kế và triển khai trên 2 máy chủ (Web-server
và AWDS-server) với 5 hệ thống con (subsystem)
được tích hợp và cơ sở dữ liệu tập trung.
Các bản sao mới nhất của các trang web
được lưu trữ trong một khu vực bên ngoài máy chủ
Web (Web-server), trên một máy chủ khác đặt tại
một vùng mạng khác. Các thành phần đó và mối
quan hệ giữ chúng được thể hiện trong sơ đồ sau:
Hệ thống Builder hoạt động tại AWDS-
server khi hệ thống Admin thêm vào, chỉnh sửa,
hoặc loại bỏ các trang web. Hệ thống Builder hoạt
ISSN 2354-0575
Khoa học & Công nghệ - Số 16/Tháng 12 - 2017 Journal of Science and Technology 75
động như sau:
- Tính toán giá trị băm và các thuộc tính (tên,
kích thước của tập tin, loại, ngày chỉnh sửa) của các
trang web đã cho (trang web mới được thêm vào
hoặc trang web được chỉnh sửa).
- Lưu những thông tin tính toán vào trong
danh sách lưu trữ CSDL, và hệ thống cung cấp
trang web (hệ thống Builder) có nhiệm vụ duy trì
bảo quản danh sách này.
- Lưu lại các trang web này trong thư mục
phục hồi tại máy chủ AWDS để phục hồi lại trang
web như ban đầu nếu phát hiện có sự tấn công làm
thay đổi về nội dung.
- Công bố các trang web đã cho ở thư mục
Input tại máy chủ web.
Hệ thống con Multi-checker (đa kiểm tra) là
công việc chính của hệ thống giám sát website, nó
chứa vài kiểm tra làm việc bên cạnh thư mục Input
tại Web-server.
Hệ thống sẽ thường xuyên kiểm tra định
kỳ tính toàn vẹn của các trang web được công bố,
và các trang web quan trọng như trang chủ (index.
html, default.asp, default.aspx). Do đó có một
khoảng thời gian liên quan tới mỗi tập tin để kiểm
tra lại tính toàn vẹn [8].
Hệ thống hoạt động phụ thuộc vào một trong
hai chế độ sau:
- Chế độ kiểm tra cơ bản (basic mode): Khi
hệ thống đa kiểm tra bắt đầu hoạt động, hệ thống
sẽ kiểm tra các thuộc tính (tên, kích thước của tập
tin, loại, và ngày chỉnh sửa) cho trang web hiện tại
(trang web được lưu trong Input) và so sánh nó với
trang web đã được lưu trữ trước của chính nó trong
CSDL.
- Chế độ kiểm tra nâng cao (advanced
mode): Khi hệ thống Multi-checker bắt đầu hoạt
động, hệ thống sẽ tính toán tìm giá trị băm (sử
dụng thuật toán cải tiến Rabin Fingerprint) cho các
trang web được công bố (được lưu trữ trên thư mục
Intpub) và so sánh nó với trang web đã được lưu trữ
trước của chính nó trong CSDL.
4. Cài đặt và thử nghiệm chương trình
4.1. Yêu cầu
Chương trình thử nghiệm được phát triển
bằng ngôn ngữ PHP và hệ quản trị CSDL MariaDB.
Với cấu hình máy sử dụng là:
- Bộ xử lý: Intel(R) Core(TM)2 Duo CPU
T6670 @ 2.20GHz
- Bộ nhớ Ram: 4.00 GB.
- Hệ điều hành: Ubuntu 16.04
4.2. Thực nghiệm
Chương trình được thử nghiệm kiểm tra về
thời gian xử lý của thuật toán Rabin Fingerprint và
thuật toán cải tiến Rabin Fingerprint với dữ liệu vào
là 4 website (sử dụng hàm stopwatch() trong C# để
đo thời gian xử lý của thuật toán).
Kết quả thử nghiệm của chương trình với 3
trang web về thời gian tính toán của thuật toán Rabin
Fingerprint và cải tiến thuật toán Rabin Fingerprint
như bảng biểu sau:
Bảng 1. Kết quả kiểm tra bằng Rabit Fingerprint
Website Rabin
fingerprint
(Thời gian)
Cải tiến Rabin
fingerprint
(Thời gian)
Kích
thước
utehy.edu.vn 00:07:52.26
59048
00:00:00.017
9612
197342
fit.utehy.edu.
vn
00:10:56.65
08695
00:00:00.023
7493
260318
tuyensinh.
utehy.edu.vn
00:00:29.77
48576
00:00:00.005
3756
34798
Chương trình được thử nghiệm kiểm tra về
thời gian xử lý của hệ thống kiểm tra cơ bản và kiểm
tra chi tiết với dữ liệu vào là 3 trang web.
Kết quả thử nghiệm của hệ thống kiểm tra cơ
bản và kiểm tra nâng cao như bảng sau:
Bảng 2. Kết quả kiểm tra của hệ thống mới
Website Basic mode
(Thời gian)
Advanced mode
(Thời gian)
Kích
thước
utehy.edu.vn 00:00:00.00
13731
00:00:00.0038
273
197342
fit.utehy.edu.
vn
00:00:00.00
21435
00:00:00.0042
867
260318
tuyensinh.
utehy.edu.vn
00:00:00.00
10857
00:00:00.0026
319
96819
Chương trình được thử nghiệm theo dõi giám
sát đa luồng, cùng một lúc theo dõi 4 website. Chức
năng Multi-thread đã hoạt động tốt, đưa ra được
cảnh báo khi có sự thay đổi nội dung trang web.
Chương trình được thử nghiệm kiểm tra ở
chế độ nâng cao, đã chỉ ra được vị trí thay đổi của
nội dung trang web.
4.3. Nhận xét kết quả
- Thời gian xử lý của thuật toán cải tiến
Rabin Fingerprint là nhanh hơn rất nhiều so với
thuật toán Rabin Fingerprint (đặc biệt khi kích
thước trang web lớn).
- Thời gian xử lý của hệ thống Multi-checker
ở hai chế độ kiểm tra cơ bản (basic mode) và kiểm
tra nâng cao (advanced mode) là tương đương nhau
vì cùng độ phức tạp thuật toán.
- Chương trình đã giám sát được sự thay đổi
bất thường của website khi theo dõi đơn tiến trình
(một website) cũng như đa tiến trình (nhiều website
ISSN 2354-0575
Journal of Science and Technology76 Khoa học & Công nghệ - Số 16/Tháng 12 - 2017
đồng thời), và đã đưa ra được cảnh báo hợp lý.
- Ở chế độ Advanced Mode đã chỉ ra được vị
trí thay đổi của nội dung trang web.
5. Kết luận
Bài báo đã giới thiệu tổng quan về Webserver
và Website, đồng thời phân tích các lỗ hổng an ninh
trên Web dẫn tới những kiểu tấn công Web phổ biến
trên thế giới, và cũng trình bày các kỹ thuật phòng
chống các kiểu tấn công đó.
Phân tích sâu một số phương pháp đảm bảo
an ninh Web: Đảm bảo an ninh HĐH webserver,
đảm bảo an ninh webserver, đảm bảo an ninh nội
dung web, sử dụng kỹ thuật xác thực và mã hóa,
triển khai cơ sở hạ tầng mạng an ninh, quản trị
webserver.
Bài báo đã đề xuất, xây dựng được hệ thống
giám sát website có thể theo dõi đa luồng (nhiều
website đồng thời) và có thể giám sát được những
trang web động, đưa ra cảnh báo kịp thời có ý nghĩa.
Tài liệu tham khảo
[1]. Hans Delfs and Helmut Knebl, “Introduction to Cryptoraphy”, 2nd Edition, Springer – 2007.
[2]. Miles Tracy, Wayne Jansen, Karen Scarfone, Theodore Winograd, “Guidelines on Securing
Public Web Servers”, Version 2, NIST – September 2007.
[3]. Charles P. Pfleeger and Shari Lawrence, “Security in Computing”, 3rd Edition, Prentice Hall–
2003.
[4]. William Stalling, “Cryptography and Network Security”, Prentice Hall – 1999.
[5]. Amanda Andress and Mandy Andress, Sams, “Surviving Security: How to Integrate People”,
process, and technology, 2nd Edition, 2004.
[6]. E.L.Cashin, “Integerit file Verification System”, 2000.
[7]. Rocksoft, “Veracity- nothing can change without you knowing: Data Integrity Assurance”, 2003.
[8]. Selvitri F, “High Performance Issues in Web Search Engines”, 2004.
[9]. V.A.Narayana, P.Premchnd, IEEE International Advance Computing Conference (IACC2009),
Patiala, India, “A Novel and Efficient Approach for Near Duplicate Page Detection in Web
Crawling”, 6-7 March 2009.
[10]. A. Z. Broder, Springer-Verlag, “Some Applications of Rabin’s Fingerprinting Method”, 1993.
[11]. Rabin-Karp Algorithm, “Rolling Hash”, February 18, 2011.
[12]. Mark Ciampa (Course Technology, Cengage Learning), Security+ Guide to Network Security
Fundamentals, Third Edition, 2009.
RESEARCH AND BUILDING THE WEBSITE MONITORING SYSTEM
FOR HUNG YEN UNIVERSITY OF TECHNOLOGY AND EDUCATION
Abstract:
In the report we present the process of designing, installing and testing a comprehensive security
solution for the website of Hung Yen University of Technology and Education. We can test attack techniques
and anti-hacking websites on the Internet. Research on the use of rabbin fingerprints for the Hung Yen
University of Technology and Education, which can be extended to other websites on the Internet.
Keywords: web security, Rabin fingerprint application, web protected.
File đính kèm:
nghien_cuu_va_xay_dung_he_thong_giam_sat_website_truong_dai.pdf

