Nghiên cứu các dạng tấn công ứng dụng WEB và giải pháp phòng chống - Pdf 10

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN
THÔNG

Nguyễn Thu Hương NGHIÊN CỨU CÁC DẠNG TẤN CÔNG ỨNG
DỤNG WEB VÀ GIẢI PHÁP PHÒNG CHỐNG Chuyên ngành: Truyền dữ liệu và mạng máy tính
Mã số: 60.48.15
TÓM TẮT LUẬN VĂN THẠC SĨ HÀ NỘI - 2013

công vào các website rất dễ xảy ra. Điều này cũng đồng
nghĩa với việc những nội dung dữ liệu của các đơn vị có
nguy cơ bị mất là rất lớn khi an ninh mạng không được
đảm bảo. Vậy chúng ta cần phải làm gì để tăng cường khả
năng phòng, chống các nguy cơ tấn công vào các website
và biện pháp ngăn chặn, khắc phục kịp thời các sự cố này.
Việc đi sâu tìm hiểu về các dạng tấn công vào các
website sẽ giúp cho chúng ta hiểu hơn về những lổ hổng
trong công tác quản lý website, qua đó đưa ra những giải
pháp giúp các nhà quản lý có những biện pháp khắc phục,
ngăn chặn sự thâm nhập từ bên ngoài, cũng như vai trò
quan trọng trong việc triển khai ứng dụng những công
nghệ mới an toàn và bảo mật hơn. Chính vì vây, tôi đã
chọn đề tài “Nghiên cứu các dạng tấn công ứng dụng web
và giải pháp phòng chống” làm đề tài luận văn của mình.
2
Chương 1 - TỔNG QUAN VỀ WEB VÀ CÁC DẠNG
TẤN CÔNG ỨNG DỤNG WEB

1.1. Tổng quan về web và an ninh web
1.1.1. Tìm hiểu về website và cách hoạt động
Website là một tập hợp các trang web (web
pages) bao gồm văn bản, hình ảnh, video, flashv.v
thường chỉ nằm trong một tên miền (domain name) hoặc
tên miền phụ (subdomain). Trang web được lưu trữ ( web
hosting) trên máy chủ web (web server) có thể truy cập
thông qua Internet.
1.1.2. Tìm hiểu về ứng dụng web
1.1.2.1. Khái niệm ứng dụng web
Ứng dụng Web là một ứng dụng chủ/khách sử dụng

(DBMS) chịu trách nhiệm quản lý các file dữ liệu
và quyền sử dụng.
4
Quá trình hoạt động bắt đầu với yêu cầu được tạo
ra từ người dùng trên trình duyệt, gửi qua Internet tới trình
chủ Web ứng dụng (Web application Server). Web ứng
dụng truy cập máy chủ chứa cơ sở dữ liệu để thực hiện
nhiệm vụ được yêu cầu: cập nhật, truy vấn thông tin đang
nằm trong cơ sở dữ liệu. Sau đó ứng dụng Web gửi thông
tin lại cho người dùng qua trình duyệt
1.1.2.2. Mô hình hoạt động của một ứng dụng web

Hình 1.3: Mô hình hoạt động của một ứng dụng web
 Trình khách ( hay còn gọi là trình duyệt): Internet
Explorer, Firefox.
 Trình chủ: Apache, IIS, ….
 Hệ quản trị cơ sở dữ liệu: SQL Server, MySQL,
DB2, Access….
5
Hoạt động của một ứng dụng web:
 Trình duyệt : gửi một yêu cầu (request) đến trình chủ

cho máy tính để bàn:
 Cài đặt ứng dụng dễ dàng, nhanh chóng: Nhiều ứng
dụng sẵn có trên mạng chỉ bằng một cú nhấp chuột,
thậm chí không phải khởi động lại trình duyệt hoặc
máy tính của mình.
 Ứng dụng luôn có sẵn: Dù chúng ta đang sử dụng
máy tính nào, chúng ta luôn có thể truy cập vào
ứng dụng của mình…
7
1.1.3. Tìm hiểu về an ninh web
Theo thống kê các phương thức tấn công hiện nay
(hình) chúng ta thấy các kiểu tấn công truyền thống như
SQL Injection, Cross-Site Script, Brute Force vẫn đang
gây thiệt hại cho hệ thống mạng dù đã được cảnh báo từ
rất lâu.
Các cuộc tấn công này chủ yếu tập trung vào các
ứng dụng web được phát triển trong các dịch vụ thương
mại điện tử với nền tảng ứng dụng web 2.0. Vấn đề bảo
mật cho các ứng dụng hiện nay nói chung và ứng dụng
web nói riêng vẫn còn khá “mới mẻ” đối với các doanh
nghiệp Việt Nam.
Các vấn đề bảo mật Web
Một cuộc nghiên cứu gần đây chỉ ra rằng 75% các
cuộc tấn công mạng được thực hiện ở mức ứng dụng Web.
1.1.4. Một số thuật ngữ liên quan
1.1.4.1. Hacker
1.1.4.2. Session ID
1.1.4.3. COOKIE
1.1.4.4. IP và TCP/IP
1.1.4.5. DNS

tiêu hao tài nguyên máy chủ. Trong suốt quá trình máy
chủ bị tấn công bằng DRDoS, không một máy khách nào
có thể kết nối được vào máy chủ đó. Tất cả các dịch vụ
chạy trên nền TCP/IP như DNS, HTTP, FTP, POP3,
đều bị vô hiệu hóa.
1.2.2. Chiếm hữu phiên làm việc (Session Management)
1.2.2.1. Ấn định phiên làm việc
Là kỹ thuật tấn công cho phép Hacker mạo danh
người dùng hợp lệ bằng cách gửi một SessionID hợp lệ
đến người dùng, sau khi người dùng đăng nhập vào hệ
thống thành công, hacker sẽ dùng lại SessionID đó và
nghiễm nhiên trở thành người dùng hợp.
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ọ
10
đă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
đó.
1.2.2.2. Đánh cắp phiên làm việc
Là kỹ thuật tấn công cho phép Hacker mạo danh
người dùng hợp lệ sau khi nạn nhân đã đăng nhập vào hệ
thống bằng cách giải mã SessionID của họ được lưu trữ
trong Cookie hay tham số URL, biến ẩn của Form.
1.2.3. Tấn công chèn câu truy vấn SQL Injection
SQL injection là 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

Hiện tồn tại 2 hình thức:
 Stored-XSS:
 Reflected-XSS:
13
Chương 2: GIẢI PHÁP PHÒNG CHỐNG TẤN
CÔNG ỨNG DỤNG WEB

2.1. Phương thức tấn công ứng dụng web
2.1.1. Tấn công từ chối dịch vụ
2.1.1.1. DoS (Denial of Service)
 Phá hoại dựa trên tính giới hạn hoặc không thể phục hồi
của tài nguyên mạng.
2.1.1.2. DDoS (Distributed Denial Of Service)
Bao gồm 3 giai đoạn:
Giai đoạn chuẩn bị
Giai đoạn xác định mục tiêu và thời điểm
Phát động tấn công và xóa dấu vết
Kiểm tra xem server có bị DDOS hay không

Hình 2.1. Mô hình cuộc tấn công DDoS
14
2.1.1.3. DRDoS (Distributed Reflection Denial of Service)
Về cơ bản, DrDoS là sự phối hợp giữa hai kiểu DoS và
DDoS. Nó có kiểu tấn công SYN với một máy tính đơn,

2.1.3.1. Dạng tấn công vượt qua kiểm tra đăng nhập
- Với dạng tấn công này, tin tặc có thể dễ dàng vượt qua
các trang đăng nhập nhờ vào lỗi khi dùng các câu lệnh
SQL thao tác trên cơ sở dữ liệu của ứng dụng web.
Xét một ví dụ điển hình, thông thường để cho phép người
dùng truy cập vào các trang web được bảo mật, hệ thống
thường xây dựng trang đăng nhập để yêu cầu người dùng
nhập thông tin về tên đăng nhập và mật khẩu. Sau khi
người dùng nhập thông tin vào, hệ thống sẽ kiểm tra tên
đăng nhập và mật khẩu có hợp lệ hay không để quyết định
cho phép hay từ chối thực hiện tiếp.
2.1.3.2. Dạng tấn công sử dụng câu lệnh SELECT
16
Để thực hiện được kiểu tấn công này, kẻ tấn công phải có
khả năng hiểu và lợi dụng các sơ hở trong các thông báo
lỗi từ hệ thống để dò tìm các điểm yếu khởi đầu cho việc
tấn công.
2.1.3.3. Dạng tấn công sử dụng câu lệnh INSERT
- Thông thường các ứng dụng web cho phép người dùng
đăng kí một tài khoản để tham gia. Chức năng không thể
thiếu là sau khi đăng kí thành công, người dùng có thể
xem và hiệu chỉnh thông tin của mình. SQL injection có
thể được dùng khi hệ thống không kiểm tra tính hợp lệ của
thông tin nhập vào.
2.1.3.4. Dạng tấn công sử dụng stored-procedures
- Việc tấn công bằng stored-procedures sẽ gây tác hại rất
lớn nếu ứng dụng được thực thi với quyền quản trị hệ
thống 'sa'.
2.1.3.5. Tấn công SQL Injection nâng cao
2.1.4. Chèn mã lệnh thực thi trên trình duyệt Cross-Site

để bảo vệ các thiết bị mạng như máy chủ dịch vụ,
các router,… và các nguồn tài nguyên quan trọng
khác.
Phòng ngừa các điểm yếu của ứng dụng Web, Webserver,
DNS, SQL Database… Thường xuyên cập nhật các bản vá
là một trong những yêu cầu quan trọng…
2.2.2. Chiếm hữu phiên làm việc
Chống việc đăng nhập với một session ID có sẵn,
ứng dụng phải hủy bỏ session ID được cung cấp bởi trình
duyệt của người dùng khi đăng nhập và luôn tạo một
session ID mới khi người dùng đăng nhập thành công sẽ
khiến cho những hacker không phải là người dùng hợp lệ
của hệ thống.
Giới hạn phạm vi ứng dụng của session ID như kết
hợp session ID với địa chỉ của trình duyệt, kết hợp session
ID với chứng thực được mã hoá SSL của người dùng, xóa
bỏ session khi người dùng thoát khỏi hệ thống hay hết
hiệu lực, thiết lập thời gian hết hiệu lực cho session để
tránh trường hợp hacker có thể duy trì session và sử dụng
nó lâu dài…
19
2.2.3. Cách Phòng Tránh SQL Injection
2.2.3.1. Kiểm tra dữ liệu
2.2.3.2. Khoá chặt SQL Server (SQL Server Lockdown)
2.2.3.3. Thiết lập cấu hình an toàn cho hệ quản trị cơ sở
dữ liệu
2.2.4. Chèn mã lệnh thực thi trên trình duyệt Cross-Site
Scripting
Người ta không lường hết được mức độ nguy hiểm của
XSS nhưng cũng không quá khó khăn để ngăn ngừa XSS:

Đã tiến hành thử nghiệm được việc tấn công ứng
dụng web và phát hiện tấn công ứng dụng web bằng phần
mềm phát hiện tấn công ứng dụng web. Để từ đó đưa ra
được các giải pháp phòng tránh cũng như khắc phục lỗi.
Tuy nhiên, luận văn mới hạn chế ở mức tìm
hiểu, nghiên cứu và đưa ra các giải pháp ở mức độ cơ
bản. Tôi xin đề xuất nghiên cứu, tìm hiểu sâu hơn nữa
để có thể ứng dụng rộng rãi trong thực tế.


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status