Professional Documents
Culture Documents
Firewall hay còn gọi là tường lửa, là một thuật ngữ trong chuyên ngành mạng máy
tính. Nó là một công cụ phần cứng hoặc phần mềm hoặc là cả 2 được tích hợp vào hệ
thống để chống lại sự truy cập trái phép, ngăn chặn virus… để đảm bảo nguồn thông
tin nội bộ được an toàn, tránh bị kẻ gian đánh cắp thông tin.
Nói ngắn gọn và dễ hiểu hơn thì Firewall chính là ranh giới bảo mật giữa bên trong và
bên ngoài của một hệ thống mạng máy tính.
+ Personal Firewall: Loại này được thiết kế để bảo vệ một máy tính trước sự truy
cập trái phép từ bên ngoài.
Bên cạnh đó thì Personal Firewall còn được tích hợp thêm tính năng như theo dõi các
phần mềm chống virus, phần mềm chống xâm nhập để bảo vệ dữ liệu.
Loại Firewall này thì thích hợp với cá nhân bởi vì thông thường họ chỉ cần bảo vệ
máy tính của họ, thường được tích hợp sẵn trong máy tính Laptop, máy tính PC..
+ Network Firewalls: Được thiết kế ra để bảo vệ các host trong mạng trước sự tấn
công từ bên ngoài.
=> Điểm khác nhau giữa 2 loại Firewall này đó là số lượng host được Firewall bảo vệ.
Bạn hãy nhớ 1 điều là Personal firewall chỉ bảo vệ cho một máy duy nhất,
còn Network firewall lại khác, nó sẽ bảo vệ cho cả một hệ thống mạng máy tính.
Trong đó, hệ thống Network Firewall được cấu tạo bởi các thành phần chính như
sau:
Firewall hỗ trợ máy tính kiểm soát luồng thông tin giữa Intranet và Internet, Firewall
sẽ quyết định dịch vụ nào từ bên trong được phép truy cập ra bên ngoài, những người
nào bên ngoài được phép truy cập vào bên trong hệ thống, hay là giới hạn truy cập
những dịch vụ bên ngoài của những người bên trong hệ thống.
Mình lấy ví dụ như giới hạn trang Facebook, tất cả những người trong hệ thống sẽ
không thể truy cập vào được mạng xã hội này. Sau đây là một số nhiệm vụ chính của
Firewall:
Cho phép hoặc vô hiệu hóa các dịch vụ truy cập ra bên ngoài, đảm bảo thông tin
chỉ có trong mạng nội bộ.
Cho phép hoặc vô hiệu hóa các dịch vụ bên ngoài truy cập vào trong.
Phát hiện và ngăn chặn các cuộc tấn công từ bên ngoài.
Hỗ trợ kiểm soát địa chỉ truy cập (bạn có thể đặt lệnh cấm hoặc là cho phép).
Kiểm soát truy cập của người dùng.
Quản lý và kiểm soát luồng dữ liệu trên mạng.
Xác thực quyền truy cập.
Hỗ trợ kiểm soát nội dung thông tin và gói tin lưu chuyển trên hệ thống mạng.
Lọc các gói tin dựa vào địa chỉ nguồn, địa chỉ đích và số Port ( hay còn cổng),
giao thức mạng.
Người quản trị có thể biết được kẻ nào đang cố gắng để truy cập vào hệ thống
mạng.
Firewall hoạt động như một Proxy trung gian.
Bảo vệ tài nguyên của hệ thống bởi các mối đe dọa bảo mật.
Cân bằng tải: Bạn có thể sử dụng nhiều đường truyền internet cùng một lúc,
việc chia tải sẽ giúp đường truyền internet ổn định hơn rất nhiều.
Tính năng lọc ứng dụng cho phép ngăn chặn một số ứng dụng mà bạn muốn. Ví
dụ như Facebook Messenger, Skype, Zalo…
Không cái gì là toàn diện cả, tuy Firewall cung cấp nhiều tính năng hữu ích để bảo vệ
người dùng, song nó vẫn có những nhược điểm như:
+ Firewall không thể bảo vệ các mối nguy hiểm từ bên trong nội bộ. Tác hại thì khỏi
cần nói các bạn cũng đã biết, nếu một ai trong công ty có ý đồ xấu, muốn phá hoại thì
Firewall cũng đành bó tay.
+ Firewall không có đủ thông minh để có thể đọc và hiểu từng loại thông tin và tất
nhiên là nó không thể biết được đâu là nội dung tốt và đâu là nội dung xấu. Mà đơn
thuần Firewall chỉ hỗ trợ chúng ta ngăn chặn sự xâm nhập của những nguồn thông tin
không mong muốn nhưng phải xác định rõ các thông số địa chỉ.
+ Firewall không thể ngăn chặn các cuộc tấn công nếu như cuộc tấn công đó không
“đi qua” nó. Ví dụ cụ thể đó là Firewall không thể chống lại một cuộc tấn công từ một
đường dial-up, hoặc là sự dò rỉ thông tin do dữ liệu bị sao chép bất hợp pháp ra đĩa
mềm.
+ Firewall cũng không thể chống lại các cuộc tấn công bằng dữ liệu (data-drivent
attack). Khi có một số ứng dụng hay phần mềm.. được chuyển qua thư điện tử (ví dụ
như Gmail, Yahoo mail…), nó có thể vượt qua Firewall vào trong mạng được bảo vệ.
+ Firewall không thể làm nhiệm vụ rà quét virus trên các dữ liệu được chuyển qua nó,
do tốc độ làm việc, sự xuất hiện liên tục của các virus mới và do có rất nhiều cách để
mã hóa dữ liệu để có thể thoát khỏi khả năng kiểm soát của firewall. Tuy nhiên,
chúng ta không thể phủ nhận một điều rằng Firewall vẫn là giải pháp hữu hiệu được
áp dụng khá rộng rãi hiện nay.
MÃ HÓA DỮ LIỆU
XÁC THỰC
Như đã biết, RESTful web service sử dụng HTTP protocol như một phương tiện giao
tiếp và HTTP request là stateless protocol. Tức là server không lưu giữ bất kỳ thông
tin nào của client, server xử lý các request một cách độc lập, không phụ thuộc vào
trạng thái hay kết quả của request trước.
Như hình bên dưới, do server không lưu giữ bất kỳ thông tin nào của request trước.
Nên mỗi request gửi lên server đều phải phải chứng thực lại, mặc dù là request của
cùng một user đã được chứng thực.
Một trong những cách để giải quyết vấn đề này là mỗi request client gửi lên đều gửi
kèm thông tin đã chứng thực trước đó.
Authentication được thực hiện như thế nào?
Dấu hiệu nhận biết
Một số dấu hiện nhận biết quá trình chứng thực có thể được thực hiện hay không là: ở
mỗi request, client sẽ gửi kèm thông tin chứng thực lên server như username/
password, một chuỗi chứa thông tin mã hóa (token, api key), một chuỗi random
(session_id). Chúng thường được gửi kèm với trong HTTP request như: query string
trong URL, Header (Cookie header, Authorization header, Custom header), Body
(Form field, Hidden field,…)
Sinh ra dấu hiệu: đây là việc chúng ta quyết định xem dùng dấu hiệu gì, tạo ra
dấu hiệu đó như thế nào. Một quá trình authentication có thể có sự xuất hiện của
nhiều dấu hiệu, ví dụ username/password, user token, api key,… Các dấu hiệu
này sẽ có cách sinh ra khác nhau, quy ước sử dụng khác nhau.
Lưu trữ dấu hiệu: Đây là việc ứng dụng sẽ quyết định lưu trữ dấu hiệu này ở
đâu, ở cả server và client, thông qua vị trí nào trên HTTP request,…
Kiểm tra dấu hiệu: Đây là việc ứng dụng của chúng ta kiểm tra lại tính hợp lệ
của dấu hiệu, đối chiếu xem dấu hiệu này có hợp lệ hay không và của người
dùng nào,…
Phía trên ảnh là ví dụ quá trình authentication, trong đó mỗi request tùy thuộc vào
thông tin đầu vào sẽ được xử lý qua 1 hoặc nhiều phần của quá trình authentication.
Đây là một biện pháp rất đơn giản, thay đổi tên mạng mặc định. Kẻ tấn công biết tên
mặc định mà các nhà sản xuất bộ định tuyến (router) và ISP sử dụng. Nếu họ có thể
tìm ra loại bộ định tuyến bạn đang sử dụng chỉ bằng cách nhìn vào tên mạng của bạn
và có thể tấn công vào chính xác bộ định tuyến dễ dàng hơn nhiều. Nó tiết kiệm cho
họ cả thời gian và công sức.
Thêm vào đó, loại thông tin này mở ra “cánh cửa” cho những cuộc tấn công tinh vi
hơn, tấn công firmware cụ thể của bộ định tuyến. Kẻ tấn công có thể khai thác trực
tiếp firmware và có khả năng tiếp cận nhiều hơn và một cách kín đáo hơn nếu họ chỉ
tìm ra mật khẩu của bạn.
Chọn "WPA2 Personal" cho mạng của bạn. Sẽ rất tốt nếu bạn có thể thiết lập phiên
bản doanh nghiệp, nhưng nó thực sự không dễ dàng trừ khi bạn đã có một số kinh
nghiệm với nó.
Đối với thuật toán mã hóa, chọn AES, không dùng TKIP. AES cung cấp mã hóa
mạnh mẽ hơn và rất khó khai thác. TKIP chỉ được chọn như là một lựa chọn để tương
thích ngược, và nếu bạn thực sự cần TKIP, hãy cập nhật thiết bị của bạn.
Mật khẩu mà bạn sử dụng để đăng nhập vào mạng cũng cần phải mạnh và nó cần phải
khác với mật khẩu dành cho tài khoản quản trị viên. Chọn mật khẩu dài, bao gồm ít
nhất một từ ít được dùng, số và các ký tự đặc biệt. Mật khẩu của bạn phải dài ít nhất
mười lăm ký tự.
Không phải mọi bộ định tuyến đều có tường lửa đã được cài sẵn, nhưng nếu máy của
bạn có, hãy bật nó. Tường lửa có thể đóng vai trò là hàng phòng thủ đầu tiên của bạn.
Chúng được thiết kế đặc biệt để quản lý và lọc lưu lượng truy cập vào và ra khỏi
mạng của bạn và có thể khóa các truy cập thông qua các cổng không được sử dụng.
Sử dụng VPN
Bạn sẽ không ngăn những người hàng xóm của bạn xâm nhập vào mạng của bạn bằng
VPN, nhưng bạn có thể ngăn chặn các cuộc tấn công từ bên ngoài khu vực gần nhất
theo cách đó.
Khi sử dụng VPN, đầu tiên hãy kết nối với máy chủ VPN, sau đó kết nối với Internet
bên ngoài. Tất cả lưu lượng truy cập đều đến từ VPN, bao gồm bất kỳ thông tin nào
về mạng máy tính nội bộ của bạn bởi vì VPN tạo các mạng nội bộ ảo. Trong khi kết
nối với chúng, máy tính của bạn ở trên cả mạng nội bộ vật lý và mạng ảo. Internet chỉ
có thể nhìn thấy mạng ảo.
VPN có thêm lợi ích từ việc ẩn danh một phần lưu lượng truy cập của bạn. Một VPN
sẽ không làm bạn hoàn toàn vô danh trên mạng, nhưng nó chắc chắn sẽ giúp ích.
Tắt WPS
WPS là viết tắt của Wifi Protected Setup. Đây là một hệ thống kết nối với mạng wifi
đã được mã hóa mà không cần nhập mật khẩu. Có một số điểm khác biệt, nhưng tất cả
đều tương đối giống nhau.
Mặc dù về lý thuyết WPS có thể hoạt động tốt nhưng thực tế nó không thực sự tốt như
vậy. WPS có thể gây ra một số lỗ hổng bảo mật. Nó được bật theo mặc định trên hầu
hết các bộ định tuyến. Nếu bạn cảm thấy không cần WPS, có thể vô hiệu hoá nó và
đóng những lỗ hổng bảo mật này.
Giống như máy tính, bộ định tuyến có một hệ điều hành. Tuy nhiên, nó không tự động
cập nhật các bản cập nhật bảo mật như máy tính, do vậy bạn cần phải tự cập nhật nó.
Một số bộ định tuyến có thể tải bản cập nhật firmware từ Internet. Đối với những bộ
định tuyến khác, bạn phải tự tải chúng xuống và tải lên bộ định tuyến từ máy tính của
bạn.
Giống như với máy tính, bản cập nhật thường bao gồm các bản sửa lỗi bảo mật quan
trọng. Nếu bạn không cập nhật, những kẻ tấn công sẽ lợi dụng những lỗi bảo mật này
để tấn công bạn. Bạn không cần phải làm điều này thường xuyên, chỉ cần kiểm tra cập
nhật hàng tháng hoặc lâu hơn.
Nếu có một chút kiến thức về công nghệ, bạn có thể xem xét sử dụng firmware bộ
định tuyến nguồn mở tùy chỉnh. Có một vài công cụ thực sự tuyệt vời mà bạn có thể
tải lên bộ định tuyến của mình và nó thường được cập nhật nhanh và nhiều tính năng
hơn. Nếu chưa bao giờ làm điều này trước đây, hãy cẩn thận vì bạn có thể phá hủy bộ
định tuyến.