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

Xây dựng hệ thống Firewall thông minh bảo vệ website

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 (330.05 KB, 21 trang )

HỌC VIỆN KỸ THUẬT QUÂN SỰ
KHOA CÔNG NGHỆ THÔNG TIN

Đồ ÁN TỐT NGHIỆP PHẦN 1
Đề tài : Xây dựng firewall thông minh để chống xâm nhập
trái phép vào website.

Giáo viên phụ trách : Hoàng Minh Hiếu
Giáo viên hướng dẫn: Vũ Thị Ly
Sinh viên thực hiện: Phạm Văn Tùng

Hà nội 4/2016

Phạm Văn Tùng

1


HỌC VIỆN KỸ THUẬT QUÂN SỰ
KHOA CÔNG NGHỆ THÔNG TIN

Đồ án tốt nghiệp phần 1
Đề tài : Xây dựng firewall thông minh để chống xâm
nhập trái phép vào website.

Giáo viên phụ trách : Hoàng Minh Hiếu
GVHD: Ths Vũ Thị Ly
Sinh viên thực hiện: Phạm Văn Tùng

Hà nội 8/2016
Phạm Văn Tùng



2


MỤC LỤC

MỞ ĐẦU
1. Thực trạng và tính khả thi của đề tài

Năm 1997 Internet bắt đầu du nhập vào Việt Nam, từ những năm đầu đó Internet ở
Việt Nam vẫn là một dịch vụ cao cấp và hạn chế đối với phần đông người dùng.
Trải qua hơn 10 năm phát triển đến nay Internet từ một dịch vụ cao cấp đã trở thành
một dịch vụ bình dân, phổ biến trong mọi gia đình, công sở, trường học, làm thay đổi
cuộc sống của người dân và xã hội ở Việt Nam. Theo thống kê của website TT
Internet Việt Nam - VNNIC vào tháng 9 năm 2011 thì số người sử dụng Internet ở
VN đã đạt 30.248.846, tỉ lệ dân số sử dụng Internet chiếm 34,79%, tổng số tên miền
tiếng Việt đã đăng ký là 237.342.Việc sử dụng Internet để phục vụ cho cuộc sống đã
trở lên phổ biến như giao tiếp với nhau qua email, sử dụng Internet để tra cứu thông
tin phục vụ cho công việc hay học tập, sử dụng Internet để giải trí, giao lưu, kết bạn....
Ngày 7/11/2006 Việt Nam gia nhập tổ chức thương mại thế giới WTO, từ đó Internet
được nhìn nhận là công cụ mũi nhọn hỗ trợ, thúc đấy tích cực cho sự phát triển của
nền kinh tế. Đa số các doanh nghiệp và các tổ chức đều có hệ thống mạng và website
để quảng bá thương hiệu và sản phẩm (237.342 tên miền tiếng Việt và hàng triệu tên
miền thương mại khác). Cùng với sự phát triển của Internet thì thương mại điện tử
cũng phát triển theo. Đối với các doanh nghiệp và tổ chức việc sử dụng thư điện tử
(email), thanh toán trực tuyến (electronic payment), trao đổi dữ liệu điện tử, số hóa dữ
liệu, lưu trữ dự liệu, hỗ trợ cho công việc kinh doanh đã không còn quá xa lạ. Ngoài
ra, chính phủ và các tổ chức chính phủ khác cũng sử dụng Internet để thông báo, trao
đổi, giao tiếp với người dân.
Tóm lại, Internet và hệ thống mạng máy tính đã trở thành một phần không thể thiếu


Phạm Văn Tùng

3


để phục vụ cho cá nhân người dùng, cho các tổ chức, doanh nghiệp kinh tế và cả cho
các tổ chức chính phủ...
Cùng với sự phát triển đó và những lợi ích mà Internet và máy tính đem lại, nó cũng
tạo ra những nguy cơ và rủi ro cho nền kinh tế và xã hội hiện đại. Các vấn đề về truy
cập bất hợp pháp, virus, rò rỉ thông tin, lỗ hổng trên hệ thống...đã trở thành mối lo
ngại cho các nhà quản lý ở bất kỳ một quốc gia nào từ các cơ quan, bộ, ngành đến
từng doanh nghiệp, đơn vị hay cá nhân người dùng.
Theo TS. Vũ Quốc Khánh, GĐ TT Ứng cứu khẩn cấp máy tính VNCERT đánh giá:
"Năm 2011 đã xuất hiện các xu hướng tội phạm và sự cố an ninh về mạng, tấn công
trên mạng ngày càng tinh vi hơn, phát triển có tổ chức, có quy mô và có sự phối hợp
cả trong và ngoài nước. Có các định hướng về mặt tấn công thu lợi tài chính, phá hoại
các dịch vụ. Không ít mã độc trên thế giới đã nhanh chóng lan truyền đến Việt Nam".
Tin tặc Việt Nam phát triển với tốc độ nhanh hơn bao giờ hết cả về quy mô, tính
chuyên nghiệp, trình độ kỹ thuật và cả tiềm lực về tài chính. Điều đáng báo động là
sự phá hoại của tin tắc hiện nay không nhằm mục đích trục lợi cá nhân hay khoe
khoang nữa mà đã chuyển sang hướng tấn công các tổ chức doanh nghiệp kinh tế và
đặc biệt hơn nữa là hạ tầng công nghiệp quốc gia.
Thời gian gần đây một loạt các website của các cơ quan nhà nước và doanh nghiệp bị
hacker tấn công như website của Viện khoa học thanh tra chính phủ bị hack vào tháng
4/2007, tên miền của công ty P.A Vietnam bị cướp vào tháng 7/2008, website của
Techcombank vào tháng 7/2008. Năm 2010, cuộc tấn công đình đám nhất chính là
cuộc tấn công vào hệ thống điện tử của báo Vietnamnet, cuộc tấn công diễn ra nhiều
tháng và nhiều lần với các hình thức tấn công khác nhau. Cũng trong năm này thì hơn
1000 website lớn ở Việt Nam bị tấn công. Các hình thức tấn công thì rất đa dạng từ

thay đổi giao diện, đánh cắp các thông tin nhạy cảm ở trong website, tấn công làm tê
liệt website đó. Mới đây nhất là cuộc tấn công đánh cắp tên miền diadiem.com và
vozforums.vn xảy ra vào tháng 10/2011.

Phạm Văn Tùng

4


Từ những số liệu và cảnh báo trên nên vấn đề bảo vệ an ninh mạng ngày càng nóng
bỏng hơn nữa. Đối với cá nhân người dùng việc bảo vệ thông tin cá nhân của mình
trước những kẻ đánh cắp. Đối với tổ chức chính phủ, sở ban ngành, doanh nghiệp
bảo vệ hệ thống mạng của mình về dữ liệu, về thông tin khách hàng, về website, về
tài chính, về uy tín.... Chính vì lý do đó em chọn đề tài "Xây dựng firewall thông
minh để chống xâm nhập trái phép vào website" nhằm mục đích nghiên cứu về
một giải pháp an toàn cho hệ thống website.
2. Mục đích và nhiệm vụ nghiên cứu

Trong những năm gần đây, Việt Nam ngày càng phát triển và nhất là về mặt công
nghệ thông tin. Đặc biệt là về ứng dụng web, hầu như mọi người ai cũng từng nghe và
làm việc trên ứng dụng web. Website trở nên phổ biến và trở thành một phần quan
trọng của mọi người và nhất là các doanh nghiệp, công ty. Bên cạnh đó lý do an toàn
bảo mật cho ứng dụng web luôn là vấn đề nan giải của mọi người.Vì vậy chúng ta sẽ
đi tìm hiểu ứng dụng web và cách thức tấn công và bảo mật web.
Trước khi tìm hiểu chúng em cũng hiểu rằng không có một giải pháp nào là toàn
diện cho an ninh mạng, một hệ thống dù vững chắc tới đâu rồi cũng sẽ bị vô hiệu
hóa bởi những kẻ tấn công. Vì không thể có một giải pháp an toàn tuyệt đối nên để
bảo vệ thông tin trên mạng máy tính thì cần xây dựng nhiều "lớp" bảo vệ khác nhau.
Và Firewall là lớp ngoài cùng của hệ thống đó. Mục đích của đề tài là:





3.

Tìm hiểu các mối đe dọa đối với một hệ thống mạng máy tính.
Tìm hiểu về các khái niệm cơ bản của firewall.
Nghiên cứu về các công nghệ firewall và cách làm việc của chúng.
Demo triển khai sản phẩm firewall trên mã nguồn mở.
Đối tượng nghiên cứu

Tìm hiểu kiến thức lý thuyết về các loại firewall, cách phân loại chúng một cách tổng
quan. Các thành phần tạo lên một firewall và cách làm việc của chúng.
Tìm hiểu về các loại firewall trên nền tảng mã nguồn mở Linux, cách làm việc, những
ưu nhược điểm so với các sản phẩm khác.
Phạm Văn Tùng

5


Tìm hiểu về các kiến trúc Firewall, một số mô hình dành cho hệ thống mạng.
Sản phẩm Firewall triển khai trên nền tảng Linux.

CHƯƠNG 1 : TỔNG QUAN VỀ WEBSITE, CÁC DỊCH VỤ
CỦA WEBSITE

1.1 1.1 Mô tả Website và cách hoạt động
Website là một “trang web” trên mạng Internet, đây là nơi giới thiệu những
thông tin, hình ảnh về doanh nghiệp và sản phẩm, dịch vụ của doanh nghiệp (hay giới
thiệu bất cứ thông tin gì) để khách hàng có thể truy cập ở bất kỳ nơi đâu, bất cứ lúc

nào.
Website là tập hợp nhiều trang [web page]. Khi doanh nghiệp xây dựng
website nghĩa là đang xây dựng nhiều trang thông tin, catalog sản phẩm, dịch vụ....Để
tạo nên một website cần phải có 3 yếu tố cơ bản:
Cần phải có tên miền (domain).
Nơi lưu trữ website (hosting).
Nội dung các trang thông tin [web page].
Một số thuật ngữ cơ bản:
Website động (Dynamic website) là website có cơ sở dữ liệu, được cung cấp
công cụ quản lý website (Admin Tool). Đặc điểm của website động là tính linh hoạt
và có thể cập nhật thông tin thường xuyên, quản lý các thành phần trên website dễ
dàng. Loại website này thường được viết bằng các ngôn ngữ lập trình như PHP,
Asp.net, JSP, Perl,..., quản trị Cơ sở dữ liệu bằng SQL hoặc MySQL...
Website tĩnh do lập trình bằng ngôn ngữ HTML theo từng trang như brochure,
không có cơ sở dữ liệu và không có công cụ quản lý thông tin trên website. Thông
thường website tĩnh được thiết kế bằng các phần mềm như FrontPage, Dreamwaver,...
Đặc điểm của website tĩnh là ít thay đổi nội dung, sự thay đổi nội dung này thường
liên quan đến sự thay đổi các văn bản đi kèm thể hiện nội dung trên đó.
Hiện nay, hầu hết các doanh nghiệp đều sử dụng website động, thế hệ công
nghệ website được mọi người biết đến là web 2.0.
- Tên miền (domain): Tên miền chính là địa chỉ website, trên internet chỉ tồn tại duy
nhất một địa chỉ (tức là tồn tại duy nhất một tên miền). Có 2 loại tên miền:
- Tên miền Quốc tế: là tên miền có dạng .com; .net; .org; .biz; .name ...
Phạm Văn Tùng

6


- Tên miền Việt Nam: là tên miền có dạng .vn; .com.vn; .net.vn; org.vn; .gov.vn;...
- Lưu trữ website: Dữ liệu thông tin của website phải được lưu trữ trên một máy tính

(máy chủ - server) luôn hoạt động và kết nối với mạng Internet. Một server có thể lưu
trữ nhiều website, nếu server này bị sự cố chẳng hạn tắt trong một thời điểm nào đó
thì không ai có thể truy cập được những website lưu trữ trên server tại thời điểm bị sự
cố.
- Tùy theo nhu cầu lưu trữ thông tin mà doanh nghiệp có thể thuê dung lượng thích
hợp cho website [thuê dung lượng host].
- Dung lượng host: Là nơi để lưu cơ sở trữ dữ liệu của website (hình ảnh, thông tin
…), đơn vị đo dung lượng thường là Mb hoặc Gb.
- Băng thông hay dung lượng đường truyền truyền: Là tổng số Mb dữ liệu tải lên máy
chủ hoặc tải về từ máy chủ (download, upload) nơi đặt website, đơn vị đo thông
thường là Mb/Tháng.
1.2 Các dịch vụ và ứng dụng trên nền web
Với công nghệ hiện nay, website không chỉ đơn giản là một trang tin cung cấp
các tin bài đơn giản. Những ứng dụng viết trên nền web không chỉ được gọi là một
phần của website nữa, giờ đây chúng được gọi là phần mềm viết trên nền web.
Có rất nhiều phần mềm chạy trên nền web như Google word (xử lý văn bản), Google
spreadsheets (xử lý bảng tính), Email ,…
Một số ưu điểm của phần mềm hay ứng dụng chạy trên nền web:


Mọi người đều có trình duyệt và bạn chỉ cần trình duyệt để chạy phần mềm.



Phần mềm luôn luôn được cập nhật vì chúng chạy trên server



Luôn sẵn sàng 24/7




Dễ dàng backup dữ liệu thường xuyên



Có thể truy cập mọi lúc, mọi nơi, miễn là bạn có mạng



Chi phí triển khai cực rẻ so với phần mềm chạy trên desktop
Hãy hình dung bạn có một phần mềm quản lý bán hàng hay quản lý công việc

ở công ty. Không phải lúc nào bạn cũng ở công ty, với phần mềm viết trên nền web,
bạn có thể vào kiểm tra, điều hành ở bất cứ đâu, thậm chí bạn chỉ cần một chiếc điện
thoại chạy được trình duyệt như IPhone mà không cần đến một chiếc máy tính.
Phạm Văn Tùng

7


CHƯƠNG 2: CÁC LOẠI TẤN CÔNG WEB PHỔ BIẾN

2.1. LOCAL ATTACK
Local attack là một trong những kiểu hack rất phổ biến và không được khuyên
dùng.Đối một web server thông thường khi bạn đăng ký một tài khoản trên server nào
đó bạn sẽ được cấp một tài khoản trên server đó và một thư mục để quản lý site của
mình. Ví dụ : tenserver/tentaikhoancuaban. Và như vậy cũng có một tài khoản của
người dùng khác tương tự như : tenserver/taikhoan1.Giả sử taikhoan1 bị hacker chiếm
được thì hacker có thể dùng các thủ thuật,các đoạn scrip,các đoạn mã lệnh để truy cập

sang thư mục chứa site của bạn là tenserver/taikhoancuaban. Và cũng theo cách này
hacker có thể tấn công sang các site của người dùng khác và có thể lấy thông tin
Phạm Văn Tùng

8


admin,database,các thông tin bảo mật khác hoặc chèn các đoạn mã độc vào trang
index của site bạn. Dạng tấn công trên gọi là Local Attack
Thông thường nhất, Local Attack được sử dụng để đọc lấy thông tin config từ
victim, sau đó dựa vào thông tin ở config và mục đích của hacker để phá hoại website
2.2. Tấn công từ chối dịch vụ - (Denial Of Service)
2.2.1. DOS(Denial Of Service)
DoS (Denial of Service) có thể mô tả như hành động ngăn cản những người
dùng hợp pháp của một dịch vụ nào đó truy cập và sử dụng dịch vụ đó. Nó bao gồm
cả việc làm tràn ngập mạng, làm mất kết nối với dịch vụ… mà mục đích cuối cùng là
làm cho server không thể đáp ứng được các yêu cầu sử dụng dịch vụ từ các client.
DoS có thể làm ngưng hoạt động của một máy tính, một mạng nội bộ, thậm chí cả một
hệ thống mạng rất lớn. Thực chất của DoS là kẻ tấn công sẽ chiếm dụng một lượng
lớn tài nguyên mạng như băng thông, bộ nhớ… và làm mất khả năng xử lý các yêu
cầu dịch vụ đến từ các client khác.
2.2.2. Ddos(Distributed Denial of Service)
Distributed Denial Of Service (DDoS) là kỹ thuật tấn công làm các ISP lo âu,
giới hacker chính thống thì không công nhận DdoS là kỹ thuật tấn công chính thống.
Thế nhưng Black hat đang có rất nhiều ưu thế khi triển khai tấn công bằng kỹ thuật
DdoS.
Việc phòng ngừa và ngăn chặn DdoS vẫn còn đang thực hiện ở mức độ khắc phục hậu
quả và truy tìm thủ phạm
2.3. SQL Injection
Khi triển khai các ứng dụng web trên Internet, nhiều người vẫn nghĩ rằng việc

đảm bảo an toàn, bảo mật nhằm giảm thiểu tối đa khả năng bị tấn công từ các tin tặc
chỉ đơn thuần tập trung vào các vấn đề như chọn hệ điều hành, hệ quản trị cơ sở dữ
liệu, webserver sẽ chạy ứng dụng, ... mà quên mất rằng ngay cả bản thân ứng dụng
chạy trên đó cũng tiềm ẩn một lỗ hổng bảo mật rất lớn. Một trong số các lỗ hổng này
đó là SQL injection. Tại Việt Nam, đã qua thời kì các quản trị website lơ là việc quét
virus, cập nhật các bản vá lỗi từ các phần mềm hệ thống, nhưng việc chăm sóc các lỗi
Phạm Văn Tùng

9


của các ứng dụng lại rất ít được quan tâm. Đó là lí do tại sao trong thời gian vừa qua,
không ít website tại Việt Nam bị tấn công và đa số đều là lỗi SQL injection. Vậy SQL
injection là gì ?
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 và 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 (không được người phát triển ứng dụng lường trước). Hậu quả của nó rất tai hại
vì nó cho phép những kẻ tấn công có thể thực hiện các thao tác xóa, hiệu chỉnh, … do
có toàn quyền trên cơ sở dữ liệu của ứng dụng, thậm chí là server mà ứng dụng đó
đang chạy. 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, DB2, Sysbase.

CHƯƠNG 3: Tổng quan hệ thống Firewall

4.1 Giới thiệu về Firewall
Nhiều người ví Web và Internet như một xã hội thu nhỏ. Trong xã hội đó, mỗi
chiếc máy tính là một ngôi nhà. Nếu máy tính cũng chính là nhà của bạn thì tốt
nhất nó nên được bảo vệ "kín cổng cao tường". Vì vậy, bạn hãy khoá máy tính của
bạn lại, hãy giữ nó an toàn trước những kẻ lạ bên ngoài cũng đơn giản như bạn

khoá cửa mỗi khi đi vắng. Đó là điều hoàn toàn có thể thực hiện được nhờ các giải
pháp bức tường lửa – firewall.
Liệu từ bên ngoài vào máy tính của bạn hoặc từ máy tính của bạn ra bên ngoài.
Với firewall, người sử dụng có thể yên tâm họ đang được thực thi quyền giám sát
các dữ liệu truyền thông giữa máy tính của họ với các máy tính hay hệ thống khác.
Có thể xem firewall là một người bảo vệ có nhiệm vụ kiểm tra "giấy thông hành"
của bất cứ gói dữ liệu nào đi vào máy tính hay đi ra khỏi máy tính của người sử

Phạm Văn Tùng

10


dụng, chỉ cho phép những gói dữ liệu hợp lệ đi qua và loại bỏ tất cả các gói dữ liệu
không hợp lệ.
Các giải pháp firewall là thực sự cần thiết, xuất phát từ chính cách thức các dữ
liệu di chuyển trên Internet. Giả sử bạn gửi cho người thân của mình một bức thư
thì để bức thư đó được chuyển qua mạng Internet, trước hết nó phải được phân
chia thành từng gói nhỏ. Các gói dữ liệu này sẽ tìm các con đường tối ưu nhất để
tới địa chỉ người nhận thư và sau đó lắp ráp lại (theo thứ tự đã được đánh số trước
đó) và khôi phục nguyên dạng như ban đầu.
Việc phân chia thành gói làm đơn giản hoá việc chuyển dữ liệu trên Internet
nhưng nó có thể dẫn tới một số vấn đề. Nếu một người nào đó với dụng ý không
tốt gửi tới bạn một số gói dữ liệu, nhưng lại cài bẫy làm cho máy tính của bạn
không biết cần phải xử lý các gói dữ liệu này như thế nào hoặc làm cho các gói dữ
liệu lắp ghép theo thứ tự sai, thì họ có thể nắm quyền kiểm soát từ xa đối với máy
tính của bạn và gây nên những vấn đề nghiêm trọng. Kẻ nắm quyền kiểm soát trái
phép sau đó có thể sử dụng kết nối Internet của bạn để phát động các cuộc tấn
công khác mà không bị lộ tung tích của mình.
Firewall sẽ đảm bảo tất cả các dữ liệu đi vào là hợp lệ, ngăn ngừa những người

sử dụng bên ngoài đoạt quyền kiểm soát đối với máy tính của bạn. Chức năng
kiểm soát các dữ liệu đi ra của firewall cũng rất quan trọng vì nó sẽ ngăn ngừa
những kẻ xâm nhập trái phép "cấy" những virus có hại vào máy tính của bạn để
phát động các cuộc tấn công cửa sau tới những máy tính khác trên mạng Internet.
Ghi chép hệ thống (System logging) cho phép việc điều chỉnh mức độ của báo
cáo. Hỗ trợ việc tính hợp các chương trình Web proxy như Squid. Ngặn chặn các
kiểu tấn công từ chối dịch vụ.

Phạm Văn Tùng

11


4.2 Sơ đồ vật lý Firewall

4.3 Cơ chế hoạt động của Firewall
Firewall cơ bản là tấm lá chắn giữa máy tính của bạn (hoặc một mạng) và Internet.
Firewall có thể được so sánh như một nhân viên bảo vệ của một tòa nhà nào đó, và
nhân viên này có thể cho phép hoặc từ chối bất kỳ ai đi vào tòa nhà.
Dựa trên hoạt động của iptables và tiến trình Login Fail Detect để thực hiện quét logs
để phát hiện các truy cập có dấu hiệu tấn công.
Khi Firewall phát hiện tấn công từ 1 địa chỉ IP cụ thể, nó sẽ thực hiện tạm thời khóa
hoặc vĩnh viễn địa chỉ IP đó ở tầng mạng, chính vì vậy nó an toàn hơn ở tầng ứng
dụng. Web server sẽ không cần phải xử lý các yêu cầu truy cập từ những IP bị cấm,
đang trong danh sách khóa, hiệu suất phục vụ sẽ được đảm bảo.
Firewall ghi nhận lại các sự kiện bằng cách sử dụng syslog để ghi lại các sự kiện xảy
ra trong hệ thống mạng.
4.4 Tính năng chính của Firewall
Quản lý và kiểm soát lưu lượng mạng.
Chức năng đầu tiên và cơ bản nhất mà tất cả các firewall đều phải thực hiện

được đó là quản lý và kiểm soát lưu lượng mạng. Điều này có nghĩa là nó sẽ phải
Phạm Văn Tùng

12


biết được những gói tin nào đi qua nó, có những kết nối nào thông qua nó. Đồng
thời nó sẽ kiểm soát các gói tin vào ra và các kết nối với hệ thống của bạn.
Firewall sẽ làm điều này bằng cách kiểm tra các gói dữ liệu và giám sát các kết nối
đang được thực hiện. Sau đó dựa vào kết quả kiểm tra gói tin và các kết nối bị
giám sát đó nó sẽ đưa ra quyết định cho phép hay từ chối truy cập.
Kiểm tra gói tin (Packet Inspection): là quá trình chặn và xử lý dữ liệu trong một
gói tin nhằm xác định liệu cho nên cho phép hoặc từ chối gói tin đó theo những
chính sách truy cập đã được xác định. Quá trình này có thể dựa vào bất kỳ yếu tố
nào hoặc tất cả các yếu tố sau đây để đưa ra quyết định lọc gói đó hay không.







Source IP Address
Source Port
Destination IP Address
Destination Port
IP Protocol
Phần Header của gói tin (sequence number, checksum, data flags,
payload infomation và những thông tin khác)


Việc kiểm tra gói tin sẽ phải được thực hiện trên mọi hướng (cả hướng ra và
hướng vào) và trên mọi interface, các quy tắc kiểm soát truy cập phải được áp
dụng cho mọi gói tin đi qua nó.
Hoạt động như một thiết bị trung gian.
Nhu cầu kết nối Internet là một nhu cầu thiết thực và không thể thiếu đối với
mỗi
doanh nghiệp. Tuy nhiên việc cho phép các máy tính kết nối trực tiếp đến website
sẽ đem lại nhiều nguy hiểm. Người sử dụng có thể xem được thông tin server
website gây nguy hiểm cho hệ thống website.
Giải pháp được đưa ra đó là thay vì cho người sử dụng kết nối trực tiếp tới website
ta sẽ xây dựng firewall thành một thiết bị có nhiệm vụ “thay mặt” website đi ra
ngoài Internet. Lúc này firewall hoạt động như một Proxy Server.
Người sử dụng sẽ không nhận thấy sự khác biệt khi có Proxy Server, nó gần
Phạm Văn Tùng

13


như là trong suốt.
Lợi ích của Proxy Server đó là:
 Cache: Tăng hiệu suất sử dụng dịch vụ mạng.
 Các Request được gửi ra ngoài Internet bằng địa chỉ IP của Proxy Server

nên ngăn chặn các cuộc tấn công không hợp lệ vào website từ Internet.
Bảo vệ tài nguyên mạng.
Chức năng chính của Firewall là kiểm soát luồng thông tin giữa mạng cần bảo
vệ (Trusted Network) và Internet thông qua các chính sách truy nhập đã được thiết
lập. Cho phép hoặc cấm các dịch vụ truy nhập từ trong ra ngoài và từ ngoài vào
trong. Kiểm soát địa chỉ truy nhập, và dịch vụ sử dụng. Kiểm soát khả năng truy
cập người sử dụng giữa hai mạng. Kiểm soát nội dung thông tin truyền tải giữa hai

mạng. Ngăn ngừa khả năng tấn công từ các mạng ngoài.

Ghi lại và báo cáo các sự kiện.
Một thực tế đó là dù bạn có giỏi đến đâu, bạn có triển khai bao nhiêu biện pháp
bảo mật đi chăng nữa thì cũng chưa chắc rằng hệ thống của bạn an toàn. Bạn
không thể ngăn chặn mọi cuộc tấn công hay những thứ độc hại xâm nhập vào hệ
thống mạng của mình được. Do đó bạn cần phải chuẩn bị để phòng chống những
lỗ hổng mà firewall không thể ngăn chặn được.
Do đó firewall cần phải có chức năng ghi chép lại tất cả các thông tin liên lạc vi
phạm chính sách để báo lại với quản trị viên. Quản trị viên sẽ dựa vào đây để phân
tích tình hình và đưa ra giải pháp cụ thể. Bạn có thể ghi lại các sự kiện bằng nhiều
cách khác nhau nhưng hầu hết các firewall sử dụng phương pháp đó là syslog.
Những dữ liệu này sẽ được sử dụng thường xuyên để phân tích các sự cố và
nguyên nhân gây ra trong hệ thống mạng.

Phạm Văn Tùng

14


Smart Defence: Có khả năng phát hiện và phòng chống tấn công, đặc biệt là tấn
công từ chối dịch vụ - DDoS.
Smart Filter: Có khả năng phát hiện và ngăn chặn tấn công ứng dụng Web (SQL
Injection, XSS …).
Cache: Tự động tối ưu hóa khả năng tải web và giảm tải cho webserver phía sau.
4.5 Kiến trúc cơ bản của Firewall
Kiến trúc Dual homed host gồm một máy server có ít nhất hai network
interface, có nghĩa là máy đó có gắn hai card mạng giao tiếp với hai mạng khác nhau
và như thế máy server này đóng vai trò là router phần mềm.
 Public interface: là card nối trực tiếp với vùng mạng không đáng tin cậy


(Internet)
 Private interface: nối với server chứa website.

CHƯƠNG 4: Xây dựng hệ thống Firewall

4.1 Giới thiệu về Iptables
Để xây dựng Firewall cho một hệ thống mạng chi phí thường rất cao nếu chúng
ta mua những sản phẩm thương mại. Iptable là phần mềm mã nguồn mở miễm phí,
tích hợp sẵn trên hệ điều hành Linux, có thể triển khai trên hệ thống mạng vừa và nhỏ.
Ban đầu Firewall/NAT chạy trên Linux là Ipchains nhưng do thiếu sót lỗi về
mặt kỹ thuật chạy không ổn định. Tổ chức Netfilter quyết định viết ra phần mềm khắc
phục những lỗi đó và sản phẩm Iptable được ra đời nhằm tăng tính năng lọc gói tin,
bảo mật trên hệ thống Linux. Tích hợp tốt trên nhân Linux (Kernel Linux), thiết kế
mô-đun cụ thể nâng cao tốc độ và độ tin cậy, có khả năng phân tích gói tin hiệu quả.

Phạm Văn Tùng

15


Iptables lọc gói tin dựa trên địa chỉ MAC và các giá trị của những cờ hiệu trong
phần đầu TCP header của gói tin. Điều này là hữu ích trong việc phòng chống các
cuộc tấn công bằng cách sử dụng các gói dữ liệu bị thay đổi và hạn chế truy cập đến
máy chủ local từ những máy chủ khác có cùng địa chỉ IP.
Iptables cung cấp chi tiết các tùy chọn để ghi nhận các sự kiện xảy ra trong hệ
thống, cung cấp kỹ thuật NAT. NAT từ trong nội bộ ra ngoài và ngược lại. Có khả
năng ngăn chặn một số cơ chế tấn công theo kiểu từ chối dịch vụ (DoS).
4.2 Các tính năng của Iptables
Tích hợp tốt trên Linux kernel, để cải thiện sự tin cậy và tốc độ chạy iptables.

Quan sát kỹ tất cả các gói dữ liệu, điều này cho phép firewall theo dõi mỗi một kết nối
thông qua nó và xem xét nội dung của từng luồng dữ liệu để từ đó xử lý bước tiếp
theo sử dụng các giao thức. Điều này rất quan trọng trong việc hỗ trợ các giao thức
FTP, DNS ….
Lọc gói dựa trên địa chỉ MAC và các cờ trong TCP header. Điều này giúp ngăn
chặn việc tấn công bằng cách sử dụng các gói dị dạng (malformed packets) và ngăn
chặn việc truy cập từ nội bộ đến một mạng khác bất chấp IP của nó.
Ghi chép hệ thống (System logging) cho phép việc điều chỉnh mức độ của báo
cáo. Hỗ trợ việc tính hợp các chương trình Web proxy như Squid. Ngặn chặn các kiểu
tấn công từ chối dịch vụ.
4.3 Cơ chế hoạt động Iptables
Tất cả mọi gói dữ liệu đều được kiểm tra bởi iptables, quá trình kiểm tra
được thực hiện một cách tuần tự dùng các bảng xây dựng sẵn (queues).
Có ba loại bảng trong Iptables gồm:
Loại
Queue

Chức năng
Queue

Quy tắc xử lý

Chức năng của chain

gói (Chain)
Input

Lọc gói đi đến firewall
Lọc gói dữ liệu đi đến các


Phạm Văn Tùng

16


server khác kết nối trên các

Forward

NIC khác của firewall
Filter

Lọc gói

Output

Lọc gói đi ra khỏi firewall

Network

Việc thay đổi địa chỉ diễn
ra trước khi định tuyến. Thay

Address

đổi địa chỉ đích sẽ giúp gói
Translation

Prerouting


dữ liệu phù hợp

với bảng

Biên

định tuyến của firewall. Sử

dịch địa chỉ

dụng destination NAT hay

mạng )

DNAT

(

NAT

Việc thay đổi địa chỉ diễn
Postrouting

ra sau khi định tuyến. Sử
dụng source NAT hay SNAT

Output

NAT sử dụng cho các gói
dữ liệu xuất phát từ firewall.


Chỉnh sửa
Mangle

TCP
header.

Prerouting

Điều chỉnh các bit quy

Postrouting

địch chất lượng dịch vụ trước
khi dẫn đường.

Output
Input
Forward

Mangle table: Chịu trách nhiệm thay đổi các bits chất lượng dịch vụ trong TCP header
như: TOS (type of service), TTL (time to live), và MARK.
Filter queue: Chịu trách nhiệm thiết lập bộ lọc (packet filtering). Nó gồm có ba quy
tắc nhỏ (chain) để thiết lập các nguyên tắc lọc gói, bao gồm:
Forward chain: Lọc gói khi đi đến đến các server khác.
Input chain: Lọc gói khi đi vào trong server.

Phạm Văn Tùng

17



Output chain: Lọc gói khi ra khỏi server.
NAT queue: Thực hiện chức năng NAT (Network Address Translation) gồm có hai
loại:
Pre-routing chain: NAT từ ngoài vào trong nội bộ. Quá trình NAT sẽ thực hiện trước
khi thực thi cơ chế định tuyến (routing). Điều này thuận lợi cho việc đổi địa chỉ đích
để địa chỉ tương thích với bảng định tuyến của firewall, được gọi là NAT đích
destination NAT hay DNAT
Post-routing chain: NAT từ trong ra ngoài. Quá trình NAT sẽ thực hiện sau khi thực
hiện cơ chế định tuyến, quá trình này nhằm thay đổi địa chỉ nguồn của gói tin. Kỹ
thuật này được gọi là NAT one-to-one hoặc many-to-one, được gọi là Source NAT
hay SNAT.
4.4 Jumps và Targets
Jump: Là cơ chế chuyển một packet đến một target nào đó để xử lý thêm một số
thao tác khác.
Target: Là cơ chế hoạt động trong Iptables, dùng để nhận diện và kiểm tra packet.
Các target được xây dựng sẵn trong iptables như:
ACCEPT: Iptables chấp nhận chuyển data đến đích.
DROP: Iptables khóa những packet.
LOG: T hông tin của packet sẽ gởi vào syslog daemon iptables tiếp tục xử lý luật
tiếp theo trong bảng mô tả luật. Nếu luật cuối cùng không match thì sẽ drop packet.
Với tùy chọn thông dụng là --log-prefix=”string”, tức iptables sẽ ghi nhận lại
những message bắt đầu bằng chuỗi “string”.
REJECT: Ngăn chặn packet và gửi thông báo cho lại cho người gửi. Với tùy chọn
thông dụng là -- reject-with qualifier, tức qualifier chỉ định loại reject message sẽ
được gởi lại cho người gởi. Các loại qualifier sau: icmp-port-unreachable (default),
icmp-net-unreachable, icmp-host-unreachable, icmp-proto-unreachable…
DNAT: Thay đổi địa chỉ đích của packet. Tùy chọn là --to-destination ipaddress.
Phạm Văn Tùng


18


SNAT: Thay đổi địa chỉ nguồn của packet. Tùy chọn là --to-source <address>[address][:-]
MASQUERADING: Được sử dụng để thực hiện kỹ thuật NAT (giả mạo địa chỉ
nguồn với địa chỉ của interface của firewall). Tùy chọn là [--to-ports []], chỉ định dãy port nguồn sẽ ánh xạ với dãy port ban đầu.
4.5 Tổng quan về IPS Firewall
IPS Firewall là thiết bị an ninh mạng chuyên dụng, cần thiết cho mọi cơ quan
tổ chức. IPS FIREWALL có khả năng bảo vệ và tăng tốc cho bất kì Website nào trực
tuyến. Một khi Website của bạn được bảo vệ sau thiết bị của chúng tôi, IPS
FIREWALL sẽ tự động ngăn chặn những mối đe dọa bao gồm tấn công DDoS và tấn
công web. IPS FIREWALL còn tối ưu hóa việc truy cập của người dùng, giúp thời
gian tải trang nhanh nhất với hiệu suất tốt nhất.
IPS FIREWALL bao gồm những tính năng nổi bật sau:
 Smart Defence: Có khả năng phát hiện và phòng chống tấn công, đặc biệt là tấn

công từ chối dịch vụ - DDoS.
 Smart Filter: Có khả năng phát hiện và ngăn chặn tấn công ứng dụng Web
(SQL Injection, XSS …).
 Cache: Tự động tối ưu hóa khả năng tải web và giảm tải cho webserver phía
sau.
Ngoài ra, IPS FIREWALL còn đảm báo các tính năng cơ bản của Firewall thế hệ thứ
3, quản trị hoàn toàn trên Web và có hệ thống cảnh báo khi phát hiện tấn công qua
Mail.
4.6 Các chức năng chính của IPS FIREWALL
4.6.1 Configuration
Phần Configuration được sử dụng để cấu hình Card mạng cho Server (Network
Interface), quản lý tài khoản quản trị (Account Management), cấu hình tường lửa
(Firewall) và xem lịch sử thay đổi (Log).


Phạm Văn Tùng

19


4.6.2 Network Interface
Phần Network Interface hiển thị thông tin card mạng cho thiết bị với các tham số
tương ứng cùng với các tham số như Cpu, Ram, Bandwidth của hệ thống.
4.6.3 Account Management
Phần Account Management hiển thị những account có thể truy cập vào hệ thống
và quyền truy cập của từng Account.
4.6.4 Firewall
Phần Firewall, ta có thể thêm các luật vào các phần Filter, NAT, Route tương
ứng với các luật lọc, NAT hoặc định hướng gói tin
Filter: Chứa tất cả các luật lọc của thiết bị bao gồm: chặn, cho phép với từng IP
truy cập trong khoảng thời gian.
NAT: Chứa các luật NAT cho mạng đi qua thiết bị
Route: Bảng định tuyến lưu lượng truy cập theo bảng định tuyến của nó.
4.6.5 Website Management
Phần Website Management sẽ hiển thị những Website đang được bảo vệ bởi
thiết bị IPS FIREWALL. Sau khi chọn Website cần kiểm tra, trang quản trị sẽ
chuyển đổi tới trang Dashboard hiển thị hiệu năng của Website (Dashboard),
xem các sự kiện và quản trị luật chặn DDoS (DDoS), xem các sự kiện và quản trị
luật WAF (WAF), cấu hình Cache (Cache) và cấu hình tùy chọn nội dung
Website trả về cho người dùng (Customzie).
4.6.6 Dashboard
Trên cùng, người quản trị có thể biết được, họ đang cấu hình ở website nào?
Trang Dashboard có thể giúp người quản trị xem được trạng thái Website và các
thông số liên quan đến hiệu năng như số lượng sự kiện ghi nhận bởi hai chức năng

DDoS và WAF, băng thông, số lượng kết nối, yêu cầu Website, tại thời điểm hiện tại.
4.6.7 DdoS
Đây là một trong những tính năng chính của sản phẩm BIF, giúp hệ thống ngăn
chặn được những cuộc tấn công DDoS ở tầng 7 tới Website phía trong. Ở mục này, ta
có thể xem được những event do chức năng DDoS nhận dạng dấu hiệu tấn công ở
mục Events, có thể xem và cấu hình thêm các luật cho Website ở mục Rules và cuối
cùng có thể cấu hình các tham số liên quan đến cảnh báo và chế độ DDoS ở mục
Config.

Phạm Văn Tùng

20


4.6.8 Cache
Giúp tăng tốc truy cập tới Website phía trong nhờ việc hệ thống sẽ Cache lại nội
dung của Website ngay trên hệ thống

Phạm Văn Tùng

21



×