1. Trang chủ
  2. » Giáo Dục - Đào Tạo

(TIỂU LUẬN) NGHIÊN cứu bảo đảm AN TOÀN THÔNG TIN BẰNG KIẾM SOÁT “lỗ HỔNG” TRONG DỊCH vụ WEB

73 14 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên cứu Bảo đảm An Toàn Thông Tin Bằng Kiểm Soát “Lỗ Hổng” Trong Dịch Vụ Web
Trường học Trường Đại Học Dân Lập Hải Phòng
Chuyên ngành Công Nghệ Thông Tin
Thể loại Đồ Án Tốt Nghiệp
Năm xuất bản 2007
Thành phố Hải Phòng
Định dạng
Số trang 73
Dung lượng 1,06 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Cấu trúc

  • Chương 1: KHÁI NIỆM CƠ SỞ (7)
    • 1.1. KHÁI NIỆM VỀ BẢO VỆ WEB (7)
    • 1.2. ỨNG DỤNG WEB (0)
      • 1.2.1. Khái niệm ứng dụng web (13)
      • 1.2.2. Hoạt động của ứng dụng web (14)
    • 1.3. MỘT SỐ CÔNG CỤ BẢO VỆ WEB (15)
  • Chương 2: CÁC KỸ THUẬT TẤN CÔNG LỢI DỤNG LỖ HỔNG (60)
    • 2.1. CHÈN THAM SỐ (0)
      • 2.1.1. Chỉnh sửa HTTP Header (19)
      • 2.1.2. Chỉnh sửa địa chỉ URL (22)
      • 2.1.3. Chỉnh sửa trường ẩn Form (23)
      • 2.1.4. Thao tác trên cookie (25)
    • 2.2. CHÈN MÃ LỆNH TRÊN TRÌNH DUYỆT (0)
      • 2.2.1. Phương pháp tấn công XSS (28)
      • 2.2.2. Biện pháp phòng tránh (32)
    • 2.3. CHÈN CÂU LỆNH TRUY VẤN (0)
      • 2.3.1. Tấn công vượt qua kiểm tra đăng nhập (34)
      • 2.3.2. Tấn công dựa vào câu lệnh SELECT (0)
      • 2.3.3. Tấn công dựa vào câu lệnh INSERT (0)
      • 2.3.4. Tấn công dựa vào Store-Procedure (0)
      • 2.3.5. Biện pháp phòng tránh (40)
    • 2.4. TẤN CÔNG DỰA VÀO “KIỂU QUẢN LÝ PHIÊN LÀM VIỆC… (42)
      • 2.4.1. Tấn công kiểu “ấn định phiên làm việc” (43)
      • 2.4.2. Tấn công kiểu “đánh cắp phiên làm việc” (47)
      • 2.4.3. Biện pháp phòng tránh (48)
    • 2.5. TẤN CÔNG “TỪ CHỐI DỊCH VỤ” (49)
      • 2.5.1. Khái niệm DoS (49)
      • 2.5.2. Biện pháp phòng tránh (55)
    • 2.6. NGÔN NGỮ PHÍA TRÌNH CHỦ (0)
    • 2.7. TẤN CÔNG “TRÀN BỘ ĐỆM” (58)
  • Chương 3: TỔNG KẾT KỸ THUẬT TẤN CÔNG CỦA HACKER (0)
    • 3.1. THU THẬP THÔNG TIN Ở MỨC HẠ TẦNG CỦA MỤC TIÊU… (60)
    • 3.2. KHẢO SÁT ỨNG DỤNG WEB (63)

Nội dung

Một phần rất lớn các vụ tấn công không được thông báo, vì nhiều lý do như: nỗi lo bị mất uy tín, hoặc đơn giản những người quản trị hệ thống không hay biết những cuộc tấn công đang nhằm

KHÁI NIỆM CƠ SỞ

KHÁI NIỆM VỀ BẢO VỆ WEB

Bảo vệ web không còn là khái niệm xa lạ đối với những người lập trình web, những nhà quản trị mạng,…

Mục tiêu bảo vệ web gồm có:

Bảo mật: Thông tin không được đọc trái phép

Bảo toàn: Thông tin không bị sửa đổi một cách trái phép

Bảo đảm tính sẵn sàng:

Người dùng hợp pháp có quyền truy cập hay sử dụng thông tin

Hai đối tượng chính trong sử dụng dịch vụ web là người dùng và người quản trị hệ thống

Đối với người dùng dịch vụ web, an toàn trên mạng bắt đầu từ yêu cầu gửi tới máy chủ và được đảm bảo qua ba yếu tố cốt lõi: tính sẵn sàng - các yêu cầu được xử lý và phản hồi trong thời gian hợp lý; tính toàn vẹn - thông tin không bị vi-rút hoặc bị sửa đổi bởi tác nhân trái phép; và tính bí mật - máy chủ không công khai thông tin cá nhân trên mạng Khi cả ba yếu tố này được duy trì, môi trường web sẽ an toàn hơn, mang lại trải nghiệm tin cậy và bảo vệ dữ liệu nhạy cảm của người dùng.

Đối với nhà quản trị hệ thống, các yêu cầu bảo mật có góc nhìn riêng để bảo vệ hệ thống Họ phải đảm bảo tính toàn vẹn của nội dung bằng cách ngăn người dùng thay đổi dữ liệu trên máy chủ; đảm bảo tính bí mật và bắt buộc để người dùng chỉ truy cập thông tin thuộc quyền của mình; đảm bảo tính sẵn sàng của hệ thống để phục vụ người dùng liên tục; và tính xác thực khi người dùng được nhận dạng, chịu trách nhiệm với hành động của mình Trong bối cảnh an ninh mạng, intruder là cá nhân hoặc tổ chức sử dụng các công cụ phá hoại như phần mềm hoặc phần cứng để dò tìm các điểm yếu, lỗ hổng bảo mật trên hệ thống, thực hiện các hoạt động xâm nhập và chiếm đoạt tài nguyên mạng trái phép.

Một số đối tượng tấn công mạng:

Tin tặc (hacker) là những người xâm nhập mạng trái phép bằng cách khai thác lỗ hổng bảo mật hoặc sử dụng các công cụ phá mật khẩu để vượt qua các điểm truy cập trong hệ thống, nhằm truy cập dữ liệu và kiểm soát hạ tầng CNTT Đây là mối đe dọa an ninh thông tin đòi hỏi các chiến lược bảo mật mạng hiệu quả, bao gồm nhận diện và giám sát hoạt động, củng cố hệ thống và áp dụng các biện pháp phòng thủ để ngăn chặn và giảm thiểu rủi ro từ hành vi xâm nhập trái phép.

Kẻ giả mạo (Masquerader) là người cố ý giả mạo thông tin trên mạng nhằm đánh lừa người dùng và che giấu danh tính thật của mình Các hình thức giả mạo phổ biến gồm giả mạo địa chỉ IP, giả mạo tên miền và giả mạo định danh người dùng trên các nền tảng trực tuyến, nhằm chiếm quyền truy cập, phát tán thông tin sai lệch hoặc lừa đảo người khác.

Kẻ nghe trộm (Evesdropping) là những đối tượng nghe trộm thông tin trên mạng bằng các công cụ sniffers, sau đó sử dụng các công cụ phân tích và debug để trích xuất các dữ liệu có giá trị từ lưu lượng mạng Hoạt động này có thể cho phép chúng nắm bắt thông tin nhạy cảm như dữ liệu đăng nhập, thông tin phiên làm việc và dữ liệu người dùng, gây rủi ro cho an ninh mạng Vì vậy, các biện pháp bảo mật như mã hóa dữ liệu, sử dụng VPN và TLS, giám sát luồng mạng, quản lý truy cập và vá lỗi định kỳ là cần thiết để giảm thiểu nguy cơ eavesdropping.

Thông tin được nêu ra mô tả mục tiêu của các hành vi vi phạm an ninh mạng: ăn cắp thông tin có giá trị về kinh tế, phá hoại hệ thống mạng có chủ đích, hoặc đôi khi là những hành động vô ý thức nhằm thử nghiệm các chương trình chưa được kiểm tra kỹ lưỡng Điều này cho thấy sự đa dạng của động cơ trong tội phạm mạng, từ tham lam kinh tế đến hành động phá hoại có chủ đích, đồng thời nhấn mạnh rủi ro từ việc thử nghiệm các ứng dụng bảo mật mà chưa được đánh giá kỹ lưỡng.

Lỗ hổng bảo mật là những yếu kém tồn tại trong hệ thống hoặc ẩn chứa trong một dịch vụ, dựa vào đó kẻ tấn công có thể xâm nhập trái phép để tiến hành phá hoại hoặc chiếm đoạt tài nguyên bất hợp pháp Những điểm yếu này có thể xuất phát từ phần mềm, cấu hình sai, lỗ hổng trong mã nguồn hoặc thiếu kiểm soát quyền truy cập, cho phép kẻ xấu khai thác và xâm nhập Vì vậy, nhận diện và khắc phục lỗ hổng bảo mật là một phần quan trọng của an ninh mạng và quản trị thông tin, nhằm giảm thiểu rủi ro bị tấn công và bảo vệ dữ liệu.

Nguyên nhân gây ra lỗ hổng bảo mật rất đa dạng, có thể xuất phát từ lỗi kỹ thuật bên trong hệ thống, từ nhược điểm của phần mềm được cung cấp, hoặc từ quản trị yếu kém không nắm vững sâu các dịch vụ đang vận hành Những lỗ hổng này có thể xuất hiện ở nhiều cấp độ: cấu hình sai, thiếu cập nhật bảo mật cho hệ thống và ứng dụng, hoặc do thiết kế và tích hợp các thành phần chưa tối ưu Để giảm thiểu rủi ro, cần nhận diện nguồn gốc lỗ hổng (hệ thống, phần mềm, quản trị) và áp dụng các biện pháp vá lỗi, cập nhật kịp thời, đồng thời nâng cao nhận thức về quản lý an toàn thông tin trong tổ chức.

Mức độ ảnh hưởng của các lỗ hổng bảo mật khác nhau rõ rệt: một số lỗ hổng chỉ làm giảm chất lượng dịch vụ và trải nghiệm người dùng, trong khi những lỗ hổng khác có thể gây ảnh hưởng sâu rộng tới toàn bộ hệ thống, thậm chí dẫn tới gián đoạn vận hành, mất dữ liệu hoặc lộ thông tin Đánh giá đúng mức độ ảnh hưởng giúp ưu tiên khắc phục và tăng cường biện pháp bảo mật để giảm thiểu rủi ro cho tổ chức.

Một số hình thức tấn công mạng

Dựa vào lỗ hổng bảo mật trên mạng: lỗ hổng này thường là những điểm yếu của dịch vụ mà hệ thống cung cấp

Sử dụng các công cụ để phá hoại: ví dụ các chương trình phá khóa mật khẩu để truy cập bất hợp pháp vào chương trình

Kẻ tấn công có thể kết hợp cả hai hình thức tấn công để đạt được mục tiêu, và mức độ nguy hại đối với hệ thống phụ thuộc trực tiếp vào cách thức tiến hành tấn công.

Mức 1: Tấn công vào một số dịch vụ mạng: web, email,… dẫn đến Nguy cơ lộ thông tin về cấu hình mạng

Mức 2: Kẻ phá hoại dùng tài khoản của người dùng hợp pháp để chiếm đoạt tài nguyên hệ thống Kẻ phá hoại có thể thay đổi quyền truy nhập qua các lỗ hổng bảo mật hoặc đọc các thông tin trong tập tin liên quan đến truy nhập hệ thống như: /etc/passwd (Linux) và SAM file (windows)

Ở mức 3, 4 và 5, kẻ phá hoại không chỉ sử dụng quyền của người dùng thông thường mà còn có thêm một quyền cao hơn trong hệ thống, cho phép kích hoạt một số dịch vụ và xem các thông tin khác trên hệ thống.

Mức 6: Kẻ tấn công chiếm được quyền root hoặc admin trên hệ thống

Các mức bảo vệ an toàn mạng

Vì không có biện pháp an toàn tuyệt đối nên phải triển khai nhiều lớp bảo vệ khác nhau để tạo rào chắn trước các hành vi xâm nhập Việc bảo vệ thông tin trên mạng tập trung chủ yếu vào dữ liệu được lưu trữ trong máy tính, đặc biệt là trên các máy chủ mạng, nhằm đảm bảo an toàn cho hệ thống và dữ liệu.

Các lớp rào chắn bảo vệ thông tin các trạm của mạng:

Lớp thứ nhất: qui định quyền truy nhập các thông tin của mạng và quyền hạn trên tài nguyên đó, cụ thể là các tệp tin

Lớp thứ hai của hệ thống bảo mật áp dụng cơ chế kiểm soát truy cập dựa trên tài khoản, yêu cầu người dùng đăng ký tên người dùng và mật khẩu tương ứng Đây là phương pháp bảo vệ phổ biến nhất vì tính đơn giản, chi phí thấp và hiệu quả cao trong bảo mật mạng Mọi người dùng muốn truy cập mạng phải có tài khoản hợp lệ, trong khi quản trị hệ thống chịu trách nhiệm quản lý, giám sát và kiểm soát mọi hoạt động cũng như xác định quyền truy cập của từng người dùng theo thời gian và không gian.

Lớp thứ ba: sử dụng các phương pháp mã hóa Dữ liệu được biến đổi từ dạng đọc được sang dạng “khó” đọc, theo một thuật toán nào đó

Lớp thứ tư, hay lớp bảo vệ vật lý, là tầng bảo vệ nhằm ngăn chặn truy cập vật lý trái phép vào hệ thống Các biện pháp phổ biến bao gồm ngăn chặn người không có nhiệm vụ vào phòng máy, triển khai hệ thống khóa trên máy tính và cài đặt hệ thống báo động để phát hiện và ngăn chặn truy cập trái phép.

ỨNG DỤNG WEB

Khi một trang web tồn tại trên Internet, nó được lưu trữ ở một vị trí nhất định để người dùng có thể truy cập, gọi là web server Web server có nhiệm vụ lưu trữ và phục vụ các trang web cho web client truy cập khi cần Ứng dụng web là một dạng ứng dụng chủ/khách (client/server) sử dụng giao thức HTTP để tương tác với người dùng hoặc với các hệ thống khác.

Trình khách dành cho người dùng thường là một trình duyệt web như Internet Explorer hoặc Netscape Navigator, nhưng cũng có thể là một chương trình đóng vai đại lý người dùng và hoạt động như một trình duyệt tự động Người dùng gửi và nhận thông tin từ máy chủ web bằng cách tác động lên các trang web Các chương trình này có thể là các trang trao đổi mua bán, diễn đàn hoặc các hệ thống gửi nhận email.

Tiềm năng phát triển nhanh chóng của công nghệ xây dựng ứng dụng web đang mở rộng với nhiều giải pháp mới Trước đây, các ứng dụng web chủ yếu được xây dựng bằng CGI (Common Gateway Interface), chạy trên các máy chủ web và kết nối tới cơ sở dữ liệu đơn giản cùng trên một máy chủ Hiện nay, các ứng dụng web thường được viết bằng Java và các ngôn ngữ tương tự, hoạt động trên kiến trúc máy chủ phân tán và kết nối tới nhiều nguồn dữ liệu khác nhau.

Một ứng dụng web thường có kiến trúc:

Hình 1: Kiến trúc của ứng dụng Web

Lớp trình bày đảm nhận nhiệm vụ hiển thị dữ liệu cho người dùng và có thể tích hợp các ứng dụng tạo bố cục cho trang web, giúp chuyển đổi thông tin thành giao diện trực quan và dễ tương tác Bằng cách trình bày dữ liệu một cách rõ ràng, lớp này tối ưu hóa trải nghiệm người dùng và cho phép định hình bố cục trang web, thiết kế giao diện, cũng như quản lý các thành phần trên trang một cách linh hoạt và nhất quán.

Lớp ứng dụng là thành phần xử lý của ứng dụng Web, nhận yêu cầu từ người dùng, xử lý thông tin và đưa ra quyết định trước khi gửi kết quả về lớp trình bày Lớp này thường được triển khai bằng các công nghệ như CGI, Java, PHP hoặc ColdFusion, và chạy trên các máy chủ ứng dụng như IBM WebSphere, WebLogic, Apache hoặc IIS.

Lớp dữ liệu: thường là các hệ quản trị CSDL (DBMS-database management system) chịu trách nhiệm quản lý các file dữ liệu và quyền sử dụng

Hình 2: Mô hình hoạt động của một ứng dụng Web

Mô hình hoạt động của một ứng dụng web điển hình gồm ba thành phần chính: trình khách (trình duyệt như Internet Explorer hoặc Netscape Navigator); trình chủ hay máy chủ web (như Apache, IIS); và hệ quản trị cơ sở dữ liệu (SQL Server, MySQL, Access) Đầu tiên, trình duyệt gửi một yêu cầu đến máy chủ web thông qua các phương thức GET, POST của giao thức HTTP; máy chủ có thể thực thi các chương trình được viết bằng nhiều ngôn ngữ như Perl, C/C++, hoặc yêu cầu bộ diễn dịch để thực thi các trang ASP, JSP theo yêu cầu của trình khách.

Chương trình thực thi các tác vụ được cấu hình, bao gồm xử lý và tính toán dữ liệu, kết nối đến CSDL và lưu trữ các thông tin gửi từ trình khách; dựa trên yêu cầu của tác vụ, hệ thống quản lý và xử lý dữ liệu một cách nhất quán, đồng thời đảm bảo an toàn cho thông tin trao đổi Sau quá trình xử lý, nó trả về cho trình khách một luồng dữ liệu được định dạng theo giao thức HTTP, giúp phản hồi có cấu trúc chuẩn và tương thích với các ứng dụng client Quy trình này tối ưu cho việc trao đổi dữ liệu giữa ứng dụng và máy chủ, đồng thời hỗ trợ mở rộng và tích hợp dễ dàng với các dịch vụ khác.

( là cách thức trình khách/ trình chủ giao tiếp với nhau, và qui định cấu trúc dữ liệu trao đổi trên đường truyền), gồm 2 phần:

+ Header mô tả các thông tin về gói dữ liệu và các thuộc tính, trạng thái trao đổi giữa trình duyệt và WebServer

In HTTP communications, the body is the data payload of the server's response sent to the client It can be an HTML file, an image, a video clip, or any kind of text content, representing the actual resource requested by the client.

Theo hình 2, luồng thông tin giữa trình chủ và trình khách là luồng thông tin hợp lệ Vì thế, nếu tin tặc tìm thấy vài lỗ hổng trong ứng dụng Web thì tường lửa không còn hữu dụng trong việc ngăn chặn kẻ tấn công đó Do đó, các kĩ thuật tấn công vào một hệ thống mạng ngày nay đang dần tập trung vào những sơ suất (hay lỗ hổng) trong quá trình tạo ứng dụng của những nhà phát triển Web hơn là tấn công trực tiếp vào hệ thống mạng, hệ điều hành Tuy nhiên, tin tặc cũng có thể lợi dụng các lỗ hổng Web để mở rộng sự tấn công của mình vào các hệ thống khác.

MỘT SỐ CÔNG CỤ BẢO VỆ WEB

Tường lửa là một công cụ được tích hợp vào hệ thống mạng để chống lại sự truy cập trái phép nhằm bảo vệ các nguồn thông tin nội bộ cũng như hạn chế sự xâm nhập vào hệ thống của một số thông tin khác không mong muốn

Firewall, hay tường lửa, là một tập hợp các thiết bị và phần mềm được đặt giữa mạng nội bộ của một tổ chức, công ty hoặc quốc gia (Intranet) và Internet, nhằm kiểm soát và lọc lưu lượng dữ liệu để bảo vệ hệ thống khỏi các truy cập trái phép và các mối đe dọa từ bên ngoài.

Hình 3: Truy cập thông qua tường lửa

Tường lửa đóng vai trò kiểm soát quyền truy cập giữa mạng nội bộ và mạng bên ngoài, quyết định những dịch vụ từ bên trong được phép truy cập từ bên ngoài, xác định ai từ bên ngoài được phép tiếp cận các dịch vụ nội bộ, và quy định những dịch vụ từ bên trong có thể truy cập ra ngoài hoặc tương tác với các dịch vụ bên ngoài.

Một hoặc nhiều hệ thống máy chủ kết nối với các bộ định tuyến (router) hoặc có chức năng router

Phần mềm quản lý an ninh chạy trên hệ thống máy chủ nhằm bảo vệ, kiểm soát và ghi nhận các hoạt động trên tài nguyên CNTT Các thành phần chính thường gặp là hệ quản trị xác thực (Authentication), cấp quyền (Authorization) và kế toán (Accounting), giúp xác nhận danh tính người dùng, quyết định quyền truy cập và ghi nhận mọi sự kiện để phục vụ cho audit và tuân thủ Xác thực đảm bảo danh tính đúng đắn, cấp quyền xác định những gì người dùng được phép làm và kế toán ghi lại lịch sử truy cập, hoạt động nhằm phát hiện sự cố và báo cáo tuân thủ Việc tích hợp đầy đủ ba yếu tố này tạo thành khung bảo mật tập trung cho hệ thống máy chủ, giảm thiểu rủi ro, tăng khả năng quản lý truy cập và nâng cao hiệu quả phát hiện, đáp ứng nhanh với các sự cố an ninh.

+ Dữ liệu: Những thông tin cần được bảo vệ do những yêu cầu: Bảo mât, tính toàn vẹn, tính kịp thời

+ Danh tiếng của công ty sở hữu các thông tin cần bảo vệ

+ Chống lại những tấn công từ bên ngoài

- Cách thứ nhất là dùng phương pháp dò mật khẩu trực tiếp: đoán mật khẩu thủ công hoặc dùng các công cụ phá mật khẩu

Cách thứ hai là khai thác lỗ hổng bảo mật tồn tại trong các chương trình ứng dụng và cả hệ điều hành Những lỗ hổng này đã được nhận diện từ những vụ tấn công đầu tiên và vẫn cho phép xâm nhập, từ đó chiếm quyền kiểm soát hệ thống với quyền quản trị.

+ Giả mạo địa chỉ IP

Con người chưa đủ khả năng đọc hiểu mọi loại thông tin và phân tích xem nội dung là tốt hay xấu, vì vậy việc đánh giá toàn diện vẫn còn hạn chế Tường lửa chỉ có thể ngăn chặn sự xâm nhập của thông tin không mong muốn, nhưng để thực thi hiệu quả cần xác định rõ tham số địa chỉ, ví dụ như địa chỉ IP và đường dẫn nguồn.

Không thể ngăn chặn cuộc tấn công, nếu không đi qua nó

Về mặt bảo mật, hệ thống gặp hai lỗ hổng nghiêm trọng: nó không thể chống lại các tấn công từ đường dial-up (dịch vụ quay số) và dễ bị rò rỉ thông tin khi dữ liệu bị sao chép bất hợp pháp lên đĩa mềm.

Cuộc tấn công bằng dữ liệu là một thách thức lớn đối với bảo mật thông tin, khi các chương trình độc hại có thể được gửi qua email, vượt qua tường lửa và xâm nhập vào mạng được bảo vệ để bắt đầu hoạt động bên trong hệ thống Điều này nhấn mạnh sự cần thiết của các biện pháp bảo vệ toàn diện: tăng cường kiểm soát thư điện tử, cập nhật hệ thống bảo mật, giám sát rủi ro liên tục và nâng cao nhận thức người dùng về cách nhận diện các email độc hại để giảm thiểu thiệt hại khi bị tấn công.

Không thể làm nhiệm vụ rà quét virut trên các dữ liệu được truyền qua nó

1.3.2 Mạng riêng ảo (VPN-Virtual Private Network)

VPN là tập hợp các máy tính kết nối với nhau qua mạng Internet và được bảo vệ bằng xác thực bằng mật khẩu cùng với mã hoá dữ liệu, nhằm hình thành một mạng riêng ảo (mạng riêng giả lập) an toàn cho truyền thông Nhờ cơ chế xác thực và mã hoá, dữ liệu được truyền qua một đường kênh bảo mật giúp các thiết bị ở xa hoặc ở các văn phòng khác nhau giao tiếp như thể đang ở cùng mạng nội bộ, đồng thời tăng cường quyền riêng tư và kiểm soát lưu lượng truy cập.

Hệ thống VPN được tổ chức một cách logic, với mạng riêng ảo xây dựng trên nền tảng hạ tầng chung hoặc hạ tầng công cộng và ứng dụng các công nghệ đảm bảo phân chia tài nguyên cũng như an toàn dữ liệu, cho dù do nhà cung cấp dịch vụ cung cấp hay tự triển khai Mạng VPN có thể được xây dựng trên Internet hoặc trên giao thức IP, hoặc trên hạ tầng ATM của nhà cung cấp dịch vụ.

Hình 4: cấu trúc mạng riêng ảo

VPN thực hiện kết nối điểm-điểm, mọi dữ liệu và thông tin liên kết của người dùng được truyền qua một ống ảo (tunnel) trên mạng công cộng, giúp tăng cường bảo mật và an toàn khi truyền tải Ống ảo giữa hai đầu kết nối xuất hiện như một liên kết riêng, mang lại thông tin được bảo vệ khi truyền trên nó VPN không duy trì liên kết cố định giữa các điểm cuối; kết nối được thiết lập chỉ khi cần thiết và khi không còn dùng nữa thì tài nguyên mạng được trả lại cho các mục đích khác.

Chương 2: CÁC KĨ THUẬT TẤN CÔNG LỢI DỤNG

“LỖ HỔNG” VÀ BẢO VỆ WEB

2.1 TẤN CÔNG KIỂU “CHÈN THAM SỐ” (Parameter Tampering)

2.1.1 Chỉnh sửa HTTP Header (HTTP Header malipulation)

HTTP Header là phần đầu của thông tin được trao đổi giữa trình khách và trình chủ trong giao thức HTTP Trình khách gửi HTTP requests (yêu cầu) tới trình chủ, ngược lại trình chủ trả về HTTP responses (trả lời) chứa dữ liệu và thông tin trạng thái Các header mang theo các trường như định dạng dữ liệu, mã trạng thái, kích thước nội dung và các tham số kết nối, giúp hai bên hiểu và xử lý yêu cầu hoặc phản hồi một cách chính xác, đồng thời hỗ trợ tối ưu hóa hiệu suất, quản lý bộ nhớ đệm và phiên làm việc.

Thông thường, HTTP header bao gồm nhiều dòng, mỗi dòng chứa tên tham số và giá trị tương ứng Một số tham số có thể được sử dụng trong cả header yêu cầu và header trả lời, trong khi một số khác chỉ được dùng riêng cho từng loại header.

GET /tintuc/homnay.asp HTTP/1.1 Accept: */*

Accept_Language: en-us Connection: Keep-Alive Host: localhost

Referer: http://localhost/lienket.asp User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0) Accept-Encoding: gzip, deflate

Dòng đầu cho biết phương thức yêu cầu (GET hoặcPOST), địa chỉ yêu cầu (/tintuc/homnay.asp) và phiên bản HTTP/1.1

Accept-Language: Cho biết ngôn ngữ dùng trong trang web

Host: Cho biết địa chỉ của máy chủ

Referer: Cho biết địa chỉ của trang web tham chiếu tới

User-Agent: thông tin từ máy người dùng

Accept-Encoding: kiểu mã hóa dữ liệu

Header của HTTP request sẽ kết thúc bằng một dòng trống

HTTP/1.1 200 OK Server: Microsoft-IIS/5.0 Date: Thu, 13 Jul 2000 05:46:53 GMT Content-Length: 2291

Content-Type: text/html Set-Cookie:

Dòng đầu là dòng trạng thái, để cho biết phiên bản HTTP được dùng (HTTP/1.1), mã trạng thái (200) và trạng thái (OK)

Server: trình duyệt máy chủ sử dụng

Date: thời gian trả lời yêu cầu

Tiếp theo là một dòng trống để báo hiệu kết thúc header, tiếp theo là phần thân của HTTP response

Thông thường chỉ có trình duyệt và trình chủ trao đổi HTTP Header, còn hầu hết các ứng dụng web lại thiếu cơ chế quản lý đầy đủ HTTP header Hacker có thể tự viết chương trình để tác động lên HTTP header hoặc dùng các proxy miễn phí để thay đổi dữ liệu được gửi từ trình duyệt Ngoài ra, nguy cơ tấn công trực tiếp từ xa bằng cách đăng nhập và gửi HTTP request tới máy chủ cũng có thể xảy ra nếu bảo mật không được triển khai đúng cách.

Trying 127.0.0.1 Connected to localhost Escape character is '^]' GET / HTTP/1.0 Referer: www.redhat.com/login.asp

User-Agent:

Date: Mon, 17 Dec 2001 20:39:02 GMT Server:

Referer header chứa URL của trang web nơi yêu cầu được gửi đi; do đó nhiều ứng dụng kiểm tra tham số này trong header để xác nhận nguồn gốc của yêu cầu và đảm bảo nó được gửi từ trang web chính thức của ứng dụng.

CÁC KỸ THUẬT TẤN CÔNG LỢI DỤNG LỖ HỔNG

TỔNG KẾT KỸ THUẬT TẤN CÔNG CỦA HACKER

Ngày đăng: 09/12/2022, 17:56

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w