Tải bản đầy đủ - 0 (trang)
Chương 1: Tổng quan về Web Server

Chương 1: Tổng quan về Web Server

Tải bản đầy đủ - 0trang

nhớ hết được số điện thoại của từng người và cũng không thể nào biết được số điện thoại này là của ai

nhưng nếu chúng ta lưu số một ai đó với một cái tên thì sau này khi cần gọi cho người đó sẽ tìm trong

danh bạ dễ dàng hơn.



 Nơi lưu trữ website (hosting).

Nơi lưu trữ website thì bắt buộc chúng ta phải có, nó có thể là một máy chủ để lưu trữ hay một

hosting chúng ta thuê từ nhà cung cấp dịch vụ.



 Nội dung các trang thông tin (web page).

Nội dung trang thông tin này thì phải có rồi vì mục đích của chúng ta lập nên website nhằm

đăng thông tin của chúng ta lên website hay giới thiệu các thơng tin của cơng ty.

Nói đến một website người ta thường nói website đấy là web động hay tĩnh, đa số các website

bây giờ đến là website động.

Website tĩnh có thể hiểu như thế này người dùng gửi yêu cầu một tài nguyên nào đó và máy chủ

sẽ trả về tài nguyên đó. Các trang Web khơng khác gì là một văn bản được định dạng và phân tán. Lúc

mới đầu phát triển website thì web tĩnh được sử dụng rất nhiều vì lúc đấy nhu cầu của việc đăng tải

trên website là chưa cao như đăng thông tin về các sự kiện, địa chỉ hay lịch làm việc qua Internet mà

thơi, chưa có sự tương tác qua các trang Web.

Website động là thuật ngữ được dùng để chỉ những website được hỗ trợ bởi một phần mềm cơ

sở web, nói cho dễ hiểu thì web động là web có cơ sở dữ liệu. Ngày nay, đa số các trang web đều có

cơ sở dữ liệu vì mục đích, nhu cầu của con người càng ngày gia tăng. Thực chất, website động có

nghĩa là một website tĩnh được "ghép" với một phần mềm web (các modules ứng dụng cho Web). Với

chương trình phần mềm này, người chủ website thực sự có quyền điều hành nó, chỉnh sửa và cập nhật

thơng tin trên website của mình mà không cần phải nhờ đến những người chuyên nghiệp.

Trước đây, năm 1995 đến 2004 thì sử dụng cơng nghệ web 1.0 với cơng nghệ này thì chỉ được

đọc nội dung trang web mà người dùng không thể chỉnh sửa, bình luận hay nói cách khác website lúc

bất giờ chỉ hoạt động một chiều mà thôi.

Hiện nay, đã phát triển cơng nghệ web 2.0 hoạt động hai chiều có nghĩa là người dùng cũng có

thể chỉnh sửa, bình luận hay xóa nội dung trang web. Trên đà phát triển đó người ta tiếp tục nghiên

cứu và phát triển web 3.0 hướng hẹn rất nhiều điều thú vị còn ở phía trước.



2. Khái niệm Web Server.

Web Server (máy phục vụ Web): máy tính mà trên đó cài đặt phần mềm phục vụ Web, đơi khi

người ta cũng gọi chính phần mềm đó là Web Server.Tất cả các Web Server đều hiểu và chạy được

các file *.htm và *.html, tuy nhiên mỗi Web Server lại phục vụ một số kiểu file chuyên biệt chẳng hạn



4|Page



như IIS của Microsoft dành cho *.asp, *.aspx...; Apache dành cho *.php...; Sun Java System Web

Server của SUN dành cho *.jsp….

Web Server là máy chủ có dung lượng lớn, tốc độ cao, được dùng để lưu trữ thông tin như một

ngân hàng dữ liệu, chứa những website đã được thiết kế cùng với những thông tin liên quan khác.

(các mã Script, các chương trình, và các file Multimedia)

Web Server có khả năng gửi đến máy khách những trang Web thông qua môi trường Internet

(hoặc Intranet) qua giao thức HTTP - giao thức được thiết kế để gửi các file đến trình duyệt Web

(Web Browser), và các giao thức khác.

Tất cả các Web Server đều có một địa chỉ IP (IP Address) hoặc cũng có thể có một Domain

Name. Giả sử khi bạn đánh vào thanh Address trên trình duyệt của bạn một dòng http://www.abc.com

sau đó gõ phím Enter bạn sẽ gửi một yêu cầu đến một Server có Domain Name là www.abc.com.

Server này sẽ tìm trang Web có tên là index.htm rồi gửi nó đến trình duyệt của bạn.

Bất kỳ một máy tính nào cũng có thể trở thành một Web Server bởi việc cài đặt lên nó một

chương trình phần mềm Server Software và sau đó kết nối vào Internet.

Khi máy tính của bạn kết nối đến một Web Server và gửi đến yêu cầu truy cập các thơng tin từ

một trang Web nào đó, Web Server Software sẽ nhận yêu cầu và gửi lại cho bạn những thông tin mà

bạn mong muốn.

Giống như những phần mềm khác mà bạn đã từng cài đặt trên máy tính của mình, Web Server

Software cũng chỉ là một ứng dụng phần mềm. Nó được cài đặt, và chạy trên máy tính dùng làm Web

Server, nhờ có chương trình này mà người sử dụng có thể truy cập đến các thơng tin của trang Web từ

một máy tính khác ở trên mạng (Internet, Intranet).

Web Server Software còn có thể được tích hợp với CSDL (Database), hay điều khiển việc kết

nối vào CSDL để có thể truy cập và kết xuất thơng tin từ CSDL lên các trang Web và truyền tải chúng

đến người dùng.

Server phải hoạt động liên tục 24/24 giờ, 7 ngày một tuần và 365 ngày một năm, để phục vụ cho

việc cung cấp thông tin trực tuyến. Vị trí đặt server đóng vai trò quan trọng trong chất lượng và tốc độ

lưu chuyển thông tin từ server và máy tính truy cập.



5|Page



Hình 1. Thị phần Web Server.

a. Các loại web server thơng dụng.

Có khá nhiều sản phẩm web server khác nhau, việc lựa chọn một web server phù hợp sẽ dựa

trên các tiêu chí đánh giá: Khả năng làm việc với hệ điều hành và các ứng dụng khác, khả năng thiết

lập các chương trình ứng dụng phía server, khả năng bảo mật dữ liệu, khả năng xuất bản trang web,

các công cụ hỗ trợ khi xây dựng các trang web.Hiện nay có 2 loại web server thơng dụng nhất là :

Internet Information Services (IIS), Apache Web Server.Trong đó , Apache Web Server chiếm giữ trên

60% thị trường web thế giới.



6|Page



i. Internet Information Services (IIS).



IIS là dịch vụ thông tin Internet do Microsoft phát triển, sản phẩm này được tích hợp cùng với

hệ điều hành Windows. Phiên bản mới nhất hiện nay là IIS 7.5 được chạy trên hệ điều hành Windows

server 2008 (hay windows 7). Trong IIS bao gồm nhiều dịch vụ dịch vụ như: dịch vụ Web Server,

dịch vụ FTP Server … Ở đây ta đề cập đến dịch vụ Web Server. IIS Web Server (gọi tắt là IIS) đáp

ứng mọi yêu cầu chủ yếu của một Web Server như: độ tin cậy, hiệu năng, khả năng theo dõi giám sát

(quản trị), tính bảo mật và tính khả thi trong việc phát triển các dịch vụ ứng dụng. Tất cả các cải tiến

này là kết quả là sự kết hợp chặt chẽ cùng với các tính năng mới được cung cấp trong hệ điều hành

Windows.



ii. Apache Web Server.

Apache Web Server được xem như một sự nỗ lực rất lớn trong việc phát triển và duy trì một

Web Server mã nguồn mở cho các hệ điều hành, bao gồm Unix, Linux và Windows NT. Đây là một

Web Server hội tụ tất cả các tính năng: bảo mật, hiệu suất, mở rộng và phát triển cung cấp các dịch vụ

Web được đồng bộ trong các chuẩn Web hiện hành.



7|Page



Hình 2. Apache Web Server

 Các đặc điểm nổi bật của Apache:

-



Ngày nay Apache có thể chạy kết hợp (hybrid) giữa chế độ đa sử lý và chế độ đa

chỉ lệnh.



-



Hỗ trợ nhiều giao thức: Apache được phát triển để có thể phục vụ trên nhiều giao

thức khác nhau.



-



Ngày càng hỗ trợ tốt hơn cho các hệ điều hành khác như BeOS,OS/2vàWindows.



-



Ngày càng phát triển và hoàn thiện các API (Application Program Interface).



-



Hỗ trợ IPv6.



-



Hỗ trợ nhiều modul dùng để lọc (Filtering) các dòng dữ liệu đến hoặc đi từ server.



-



Hỗ trợ nhiều ngôn ngữ hiển thị các thông báo lỗi.



-



Ngày càng đơn giản và dễ dàng thiết lập các tham số cho Web Server qua các file

cấu hình.



8|Page



b. Giao thức SSL.

i. SSL là gì?

Việc kết nối giữa một Web browser tới bất kỳ điểm nào trên mạng Internet đi qua rất nhiều các

hệ thống độc lập mà khơng có bất kỳ sự bảo vệ nào với các thông tin trên đường truyền. Không một ai

kể cả người sử dụng lẫn Web server có bất kỳ sự kiểm sốt nào đối với đường đi của dữ liệu hay có

thể kiểm sốt được liệu có ai đó thâm nhập vào thơng tin trên đường truyền. Để bảo vệ những thông

tin mật trên mạng Internet hay bất kỳ mạng TCP/IP nào, SSL đã kết hợp những yếu tố sau để thiết lập

được một giao dịch an tồn:



 Xác thực: Đảm bảo tính xác thực của trang mà bạn sẽ làm việc ở đầu kia của kết nối.

Cũng như vậy, các trang Web cũng cần phải kiểm tra tính xác thực của người sử dụng.



 Mã hố: Đảm bảo thơng tin khơng thể bị truy cập bởi đối tượng thứ ba. Để loại trừ việc

nghe trộm những thơng tin “nhạy cảm” khi nó được truyền qua Internet, dữ liệu phải được

mã hoá để khơng thể bị đọc được bởi những người khác ngồi người gửi và người nhận.



 Toàn vẹn dữ liệu: Đảm bảo thơng tin khơng bị sai lệch và nó phải thể hiện chính xác

thơng tin gốc gửi đến.

Với việc sử dụng SSL, các Web site có thể cung cấp khả năng bảo mật thơng tin, xác thực và

tồn vẹn dữ liệu đến người dùng. SSL được tích hợp sẵn vào các browser và Web server, cho phép

người sử dụng làm việc với các trang Web ở chế độ an toàn. Khi Web browser sử dụng kết nối SSL

tới server, biểu tượng ổ khóa sẽ xuất hiện trên thanh trạng thái của cửa sổ browser và dòng “http”

trong hộp nhập địa chỉ URL sẽ đổi thành “https”. Một phiên giao dịch HTTPS sử dụng cổng 443 thay

vì sử dụng cổng 80 như dùng cho HTTP.



9|Page



ii. Giao thức SSL.

Được phát triển bởi Netscape, ngày nay giao thức Secure Socket Layer (SSL) đã được sử dụng

rộng rãi trên World Wide Web trong việc xác thực và mã hố thơng tin giữa client và server. Tổ chức

IETF (Internet Engineering Task Force ) đã chuẩn hoá SSL và đặt lại tên là TLS (Transport Layer

Security). Mặc dù là có sự thay đổi về tên nhưng TSL chỉ là một phiên bản mới của SSL. Phiên bản

TSL 1.0 tương đương với phiên bản SSL 3.1. Tuy nhiên SSL là thuật ngữ được sử dụng rộng rãi hơn.



Hình 3. Cấu trúc của SSL và giao thức SSL.

SSL được thiết kế như là một giao thức riêng cho vấn đề bảo mật có thể hỗ trợ cho rất nhiều

ứng dụng. Giao thức SSL hoạt động bên trên TCP/IP và bên dưới các giao thức ứng dụng tầng cao

hơn như là HTTP (Hyper Text Transport Protocol), IMAP ( Internet Messaging Access Protocol) và

FTP (File Transport Protocol). Trong khi SSL có thể sử dụng để hỗ trợ các giao dịch an toàn cho rất

nhiều ứng dụng khác nhau trên Internet, thì hiện nay SSL được sử dụng chính cho các giao dịch trên

Web.

SSL không phải là một giao thức đơn lẻ, mà là một tập các thủ tục đã được chuẩn hoá để thực

hiện các nhiệm vụ bảo mật sau:



 Xác thực server:

Cho phép người sử dụng xác thực được server muốn kết nối. Lúc này, phía browser sử dụng các

kỹ thuật mã hố cơng khai để chắc chắn rằng certificate và public ID của server là có giá trị và được

cấp phát bởi một CA (certificate authority) trong danh sách các CA đáng tin cậy của client. Điều này

rất quan trọng đối với người dùng. Ví dụ như khi gửi mã số credit card qua mạng thì người dùng thực

sự muốn kiểm tra liệu server sẽ nhận thông tin này có đúng là server mà họ định gửi đến không.



 Xác thực Client:

10 | P a g e



Cho phép phía server xác thực được người sử dụng muốn kết nối. Phía server cũng sử dụng các

kỹ thuật mã hố công khai để kiểm tra xem certificate và public ID của server có giá trị hay khơng và

được cấp phát bởi một CA (certificate authority) trong danh sách các CA đáng tin cậy của server

không. Điều này rất quan trọng đối với các nhà cung cấp. Ví dụ như khi một ngân hàng định gửi các

thơng tin tài chính mang tính bảo mật tới khách hàng thì họ rất muốn kiểm tra định danh của người

nhận.



 Mã hoá kết nối:

Tất cả các thông tin trao đổi giữa client và server được mã hoá trên đường truyền nhằm nâng

cao khả năng bảo mật. Điều này rất quan trọng đối với cả hai bên khi có các giao dịch mang tính riêng

tư. Ngoài ra, tất cả các dữ liệu được gửi đi trên một kết nối SSL đã được mã hố còn được bảo vệ nhờ

cơ chế tự động phát



hiện các xáo trộn, thay đổi trong dữ liệu. ( đó là các thuật toán băm – hash



algorithm).

Giao thức SSL bao gồm 2 giao thức con: giao thức SSL record và giao thức SSL handshake.

Giao thức SSL record xác định các định dạng dùng để truyền dữ liệu. Giao thức SSL handshake (gọi

là giao thức bắt tay) sẽ sử dụng SSL record protocol để trao đổi một số thông tin giữa server và client

vào lấn đầu tiên thiết lập kết nối SSL.



11 | P a g e



Chương 2: Một số cách thức tấn cơng và phòng chống Hacking Web Server

1. Tấn cơng Directory Traversal.

Directory traversal hay còn được biết với một số tên khác như “dot-dot-slash”, “path

Traversal”,”directory clumbing” và “backtracking” là hình thức tấn công truy cập đến những file và

thư mục mà được lưu bên ngồi thư mục webroot. Hình thức tấn công này không cần sử dụng một

công cụ nào mà chỉ đơn thuần thao tác các biến với (dot-dot-slash) để truy cập đến file, thư mục, bao

gồm cả source code, những file hệ thống, …

Để nhận biết khả năng khai thác lỗi này, các kẻ tấn công thường quan sát kết quả có được từ spider

hoặc crawler mang lại.



Hình 4. Tấn công Directory traversal.

2. Tấn công HTTP Response Splitting.

Lỗi HTTP Response Splitting tấn công vào ứng dụng web và diễn ra khi nó khơng thể xử lý

đúng các thơng tin đầu vào người dùng nhập.

Kẻ tấn cơng từ xa có thể gửi một yêu cầu HTTP đặc biệt làm cho máy chủ web định dạng yêu

cầu nhầm tưởng rằng nó chứa 2 yêu cầu HTTP chứ không phải một.

Chỉ yêu cầu thứ nhất được xử lý bởi người sử dụng. HTTP Response Splitting cho phép tiến

hành một lượng lớn các cuộc tấn công, chặn và ăn cắp thông tin người dùng.



12 | P a g e



3. Tấn công Web Cache Poisoning.

Web Cache Poisoning Chia làm 3 loại:



3.1.



Poisoning the reverse proxy.

Trong trường hợp này, hacker muốn hủy hoại trang web. Cuối cùng, hacker đầu độc trang chủ



của trang web. Mỗi client của site đều bị tác động. Đây là căn bản về hủy hoại web. Trong trường hợp

này, hacker sẽ nhanh chóng dọn dẹp. Từ khi cache server được làm chủ bởi site, hacker sẽ nắm một số

thông tin quan trọng.



3.2.



Poisoning the cache server.

Phishing là một kiểu tấn công như các bạn thường gọi FAKE LOGIN, chúng ta Save As một



trang login thực sự, rồi chỉnh sửa lại form, edit code lại, dụ victim vào và login, thơng tin login đó sẽ

được gửi về theo form mặc định. (có thể là user, pass, hoặc những thơng tin khác

Nói sang vấn đề khác, nếu cache server không được owned bởi attacked website (target host) Ví

dụ như ta attack một American website mà nó lại poison Cache Server của British of ISP sinh ra một

vấn đề trở ngại trong việc attack rất nhiều. Thật khó để biết được cache nào bị poison. Đặc trưng loại

tấn công này chỉ tồn tại vài phút.



3.3.



Poisoning the cache browser.

Trong trường hợp này hacker chỉ tấn công tại một user nhất định. Nhưng điều khác với XSS,



poisoning cache browser phải chờ người dùng tải nó, nếu lúc tấn cơng mà user khơng đăng nhập để

tải xuống, XSS thì bạn chỉ cần đặt link đó, và khi người dùng nhấn vào, thông tin cookie sẽ gửi về

hacker mặc định ở file nào đó. Điều khác biệt là poisoning cache browser hoạt động ngay kể cả khi

người dùng đã tắt JavaScript trong trình duyệt.



4. Tấn cơng SSH Bruteforce.

Giao thức SSH sử dụng để tạo ra một đường hầm mã hóa giữa 2 máy chủ, nhằm chuyển dữ liệu

giữa người dùng.

Kẻ tấn cơng Bruteforce có thể bắt SSH tin là mình là một thông tin đăng nhập hợp lệ để truy

cập trái phép vào đường hầm SSH.

Sau đó đường hầm có thể được sử dụng để truyền cách malware và khai thác các nạn nhân mà

không bị hủy lệnh.



13 | P a g e



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Chương 1: Tổng quan về Web Server

Tải bản đầy đủ ngay(0 tr)

×