VIỆT-HÀN
Trường Cao Đẳng CNTT Hữu Nghị Việt Hàn
Khoa Khoa Học Máy Tính
Đề tài:
Tìm Hiểu An Ninh Mạng Và Kỹ Thuật Tấn Công Ứng Dụng WEB
GHVD
: Ths. Lê Tự Thanh
Học Phần : An Ninh Mạng
Lớp
Nhóm
: CCMM03A
:4
NỘI DUNG CHÍNH
Tổng quan về ANM và ứng dụng WEB
Các kỹ thuật tấn công và bảo mật
Tổng kết quá trình tấn công của Hacker
Một số công cụ bảo mật ứng dụng WEB
Kết luận
www.viethanit.edu.vn
Trang 2
TỔNG QUAN VỀ AN NINH MẠNG
•
An ninh mạng là gì ?
–
–
–
–
–
–
Là một trong những lĩnh vực mà hiện nay giới công nghệ thông tin khá quan tâm.
Nó liên quan đến an toàn thông tin chạy trên mạng.
Internet ngày nay hầu như là quá phát triển đến mức ai cũng có thể sử dụng được nó.
Các dịch vụ phục vụ lợi ích cho con người ra đời.
Sẽ có những người muốn có lợi ích của người khác.
Từ đó có tội phạm công nghệ cao => cần an ninh mạng.
www.viethanit.edu.vn
Trang 3
TỔNG QUAN VỀ AN NINH MẠNG
•
Hacker
–
–
Là kẻ tấn công hệ thống mạng nhằm một mục đích nào đấy.
Hacker mũ đen
•
–
Hacker mũ trắng
•
–
Là kẻ tấn công xâm nhập vào hệ thống mạng với mục đích xấu.
Là kẻ tấn công xâm nhập vào hệ thống mạng với mục đích tốt.
Hacker mũ xám
•
Là kẻ mới vào nghề, xâm nhập vào hệ thống mạng theo sở thích.
www.viethanit.edu.vn
Trang 4
TỔNG QUAN VỀ AN NINH MẠNG
www.viethanit.edu.vn
Trang 5
TỔNG QUAN VỀ AN NINH MẠNG
•
Lỗ hổng bảo mật
–
Lỗ hổng bảo mật có thể nằm trong các thành phần cấu thành nền hệ thống mạng như hạ tầng mạng,
hardware, software, services, OS,...
–
Lỗ hổng bảo mật có thể phân ra các loại sau:
•
•
•
Lỗ hổng loại A: Cực kì nguy hiểm => kiểm soát cả hệ thống.
Lỗ hổng loại B: Nguy hiểm => mất mát một số dữ liệu.
Lổ hổng loại C: Nguy hiểm thấp => ảnh hưởng đến chất lượng dịch vụ => làm chậm, ngưng trệ hệ thống mạng.
www.viethanit.edu.vn
Trang 6
TỔNG QUAN VỀ AN NINH MẠNG
•
Đánh giá vấn đề an toàn, bảo mật hệ thống mạng
–
Phương diện vật lý
•
•
•
•
•
–
Có thiết bị dự phòng.
Bảo đảm an ninh nơi lưu trữ các máy chủ.
Cập nhật, nâng cấp phần cứng cũng như phần mềm.
Có nguồn điện dự phòng.
Các yếu tố môi trường phù hợp.
Phương diện logic
•
•
•
•
•
Tính bí mật
Tính xác thực
Tính toàn vẹn
Tính không thể phủ nhận
Tính sẵn sàng
www.viethanit.edu.vn
Trang 7
TỔNG QUAN VỀ ỨNG DỤNG WEB
•
Giới thiệu về Website
–
–
–
–
Tên miền (domain)
Nơi lưu trữ (hosting)
Nội dung trang web (web page)
Website tĩnh
•
–
Là website không có cơ sở dữ liệu.
Website động
•
Là website có cơ sở dữ liệu.
www.viethanit.edu.vn
Trang 8
TỔNG QUAN VỀ ỨNG DỤNG WEB
•
Giới thiệu về ứng dụng WEB
–
Là ứng dụng máy khách/máy chủ thông qua giao thức HTTP để tương tác với người dùng hay với hệ
thống.
–
–
–
Hiện nay ứng dụng web được sử dụng rất là phổ biến.
Phục vụ cho nhiều nhu cầu của con người.
Ví dụ:
•
•
•
•
•
Mạng xã hội: facebook, zing, go,…
Nghe nhạc và xem phim: zing, youtube,…
Games online: vtc games, vina games,…
Ngân hàng trực tuyến: vietcombank, paypal, e-gold,…
Mua bán online: thegioididong, vatgia, 5giay, muare, enbac,…
www.viethanit.edu.vn
Trang 9
TỔNG QUAN VỀ ỨNG DỤNG WEB
Blogs
Công nghệ mới như AJAX(gmail, youtube)
Nâng cao chơi games
Hỗ trợ WEB động
Ứng dụng điện thoại di động (Iphone)
Dịch vụ cung cấp thông tin
Giao diện WEB phong phú
Framework (Library, jQuery)
(Facebook, Zing,…)
Điện toán đám mây trang WEB như (amazon.com)
Mash-up
(electronic payment systems)
Bách khoa toàn thư và từ điển
Phần mềm văn phòng trực tuyến
(Google Docs and Microsoft light)
Dễ dàng tạo, sử đổi, xóa dữ liệu bởi người dùng cá nhân
www.viethanit.edu.vn
Tương tác với ứng dụng khác
Nền tảng Google và các dịch vụ miễn phí
(Google maps)
Trang 10
TỔNG QUAN VỀ ỨNG DỤNG WEB
•
Các đối tượng dễ bị tấn công
Các ứng dụng WEB
Thành phần bên thứ ba
Cơ sở dữ liệu
Máy chủ WEB
Hệ điều hành
HT mạng
Bảo mật
www.viethanit.edu.vn
Lỗ hổng trong kinh doanh-logic
Nguồn mở/thương mại
Oracle/MySQL/MS SQL
Apache/Microsoft IIS
Windows/Linux
Router/Switch
IPS/IDS
Trang 11
TỔNG QUAN VỀ ỨNG DỤNG WEB
•
Thống kê bảo mật ứng dụng WEB
www.viethanit.edu.vn
Trang 12
MỘT SỐ THUẬT NGỮ ỨNG DỤNG WEB
•
JavaScript
–
–
–
–
Được gọi là ngôn ngữ kịch bản.
JavaScript được hãng Netscape phát triển.
Mircrosoft cũng có một ngôn ngữ kịch bản gọi là VBScript
Ví dụ:
•
Vào trang một trang để đọc thông tin và chơi games thì trên trang web nó chứa một Script.
Script nhúng trò chơi đấy vào trang web hay đoạn video đấy vào trang web.
•
Flash
–
Hiện nay được sử dụng rất phổ biến.
www.viethanit.edu.vn
Trang 13
MỘT SỐ THUẬT NGỮ ỨNG DỤNG WEB
•
HTTP Header
–
–
–
Là phần mào đầu của gói tin với giao thức HTTP hoạt động ở lớp ứng dụng.
Các Hacker có thể biết các thông tin từ HTTP Header này.
Ví dụ: gói tin được bắt từ phần mềm Wireshark
Các gói tin bắt được giao thức HTTP.
www.viethanit.edu.vn
Trang 14
MỘT SỐ THUẬT NGỮ ỨNG DỤNG WEB
•
HTTP Header
Gói tin Request truy vấn đến trang Zing.vn
www.viethanit.edu.vn
Trang 15
MỘT SỐ THUẬT NGỮ ỨNG DỤNG WEB
•
HTTP Header
Gói tin Response từ máy chủ WEB trả lời
www.viethanit.edu.vn
Trang 16
MỘT SỐ THUẬT NGỮ ỨNG DỤNG WEB
•
Session
–
Session ID là một chuỗi để chứng thực phiên làm và giúp máy chủ quản lý tốt các session của người
dùng.
–
–
Phiên làm việc chỉ tồn tại trong một khoảng thời gian cho phép.
Để duy trì phiên làm việc session ID thường lưu trữ:
•
•
•
–
Biến URL
Biến ẩn Form
Cookie
Ví dụ:
•
Tài khoản trang doc.viethanit.edu.vn sau một khoảng thời gian mà không thao tác với máy chủ thì sẽ yêu cầu đăng
nhập lại.
www.viethanit.edu.vn
Trang 17
MỘT SỐ THUẬT NGỮ ỨNG DỤNG WEB
•
Cookie
–
–
–
–
–
Là phần dữ liệu nhỏ có cấu trúc được chia sẽ giữa máy chủ và trình duyệt người dùng.
Được lưu trữ dưới dạng những file nhỏ dạng text.
Lưu trữ những thông tin người dùng đã ghé thăm vào trang WEB trên trình duyệt của người dùng.
Thông tin có thể là username, password, session, …
Ví dụ:
•
•
Khi đăng nhập lần đầu tiên trang thì máy sẽ load trang đấy rất lâu.
Nhưng hôm sau khi vào lại trang thì máy chạy vi vu, load trang rất nhanh.
www.viethanit.edu.vn
Trang 18
MỘT SỐ THUẬT NGỮ ỨNG DỤNG WEB
•
Proxy
–
–
–
–
Proxy cung cấp cho người sử dụng truy xuất Internet một cách đặt biệt.
Khi triển khai máy chủ proxy thì lợi ích sẽ là băng thông nhưng nhược điểm của nó là bảo mật.
Proxy được coi như là người trung gian giữa máy chủ và máy khách.
Ví dụ:
•
•
Không thể truy cập vào là do nhà mạng chặn IP facebook có thể là do dùng ACL hay firewall.
Để đi được vào trang chỉ cần sử dụng proxy
www.viethanit.edu.vn
Trang 19
TỔNG QUAN VỀ ỨNG DỤNG WEB
•
Kiến trúc một ứng dụng WEB
www.viethanit.edu.vn
Trang 20
TỔNG QUAN VỀ ỨNG DỤNG WEB
•
Kiến trúc một ứng dụng WEB
–
Máy khách
•
–
Máy chủ WEB
•
•
•
–
Là nới lưu trữ nội dung của website.
Nơi tiếp nhận và phục vụ các yêu cầu dịch vụ từ máy khách.
Phần mềm chạy dịch vụ WEB có thể là IIS, Apache, Tom cat,…
Ứng dụng WEB
•
–
Cần phải có chương trình duyệt WEB, hệ điều hành tích hợp sẵn hoặc cài đặt thêm như chrome, firefox, opera,…
Có thể là đoạn code hay flash nhúng vào trang WEB.
Cơ sở dữ liệu
•
Lưu các thông tin của người sử dụng và database của ứng dụng.
www.viethanit.edu.vn
Trang 21
TỔNG QUAN VỀ ỨNG DỤNG WEB
•
Nguyên lý hoạt động của một ứng dụng WEB
www.viethanit.edu.vn
Trang 22
NỘI DUNG CHÍNH
Tổng quan về ANM và ứng dụng WEB
Các kỹ thuật tấn công và bảo mật
Tổng kết quá trình tấn công của Hacker
Một số công cụ bảo mật ứng dụng WEB
Kết luận
www.viethanit.edu.vn
Trang 23
CÁC THIẾU SÓT TRONG VIỆC KIỂM TRA DỮ LIỆU NHẬP VÀO
•
Tràn bộ nhớ đệm (Buffer Overflow)
–
Người dùng nhập vượt quá dữ liệu cho phép nhập vào máy chủ => tình trạng tràn bộ nhớ đệm => ứng
dụng không được thự thi mà thay vào đó sẽ là một đoạn code của Hacker.
–
–
Lỗi này thường do người lập trình kém hoặc mới vào nghề.
Ví dụ: Xét đoạn code sau
www.viethanit.edu.vn
Trang 24
CÁC THIẾU SÓT TRONG VIỆC KIỂM TRA DỮ LIỆU NHẬP VÀO
•
Biện pháp bảo mật khắc phục (Buffer Overflow)
–
–
–
Người thiết kế website hay lập trình website cần phải kiểm tra kĩ dữ liệu nhập vào của người sử dụng.
Xử lý ngoại lệ để có thể ngăn Hacker chèn đoạn mã độc.
Ví dụ:
•
Như ví dụ trên nếu như người lập trình xây dụng một vòng lặp kiểm tra các kí tự nhập vào. Nếu nhâp lớn hơn 256
ký tự sẽ yêu cầu người dùng nhập lại.
www.viethanit.edu.vn
Trang 25