Trong phạm vi đề tài nghiên cứu này, tôi tập trung vào việc phát hiện các website bị tấn công thay đổi giao diện và đưa ra các thông báo kịp thời giúp cho người bị hại sớm nhận ra và khắ
Trang 1ĐẠI HỌC QUỐC GIA TP HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
TP HỒ CHÍ MINH - 2017
Trang 2LỜI CẢM ƠN
Thật khó để có thể để nói hết lời cảm ơn chân thành đến tất cả mọi người đã ủng
hộ, giúp đỡ và động viên tôi hoàn thành được luận văn này Đây không phải là phần thủ tục để hoàn thành một luận văn mà là nơi để tôi có thể gửi gắm và thể hiện sự tri
ân, kính trọng và tự hào đến mọi người
- Trước tiên tôi xin gửi lời cảm ơn sâu sắc nhất đến thầy hướng dẫn TS Võ Văn Khang đã nhiệt tình giúp đỡ, tận tình chỉ dẫn và tạo điều kiện trong suốt quá trình tôi làm luận này
- Tôi xin cảm ơn Quý Thầy, Cô đã giảng dạy, truyền đạt nhiều kiến thức quý giá
và sâu sắc trong quá trình học tập tại trường Đặc biệt thầy chủ nhiệm TS Nguyễn Gia Tuấn Anh đã luôn nhắc nhỡ tôi cũng như lớp hoàn thành quá trình học của mình
- Tôi chân thành gửi lời cảm ơn đến Anh, Chị và các bạn lơp CNTT.CH13 đã luôn động viên, đưa ra lời khuyên chân thực và cũng là nguồn cảm hứng lớn nhất để tôi có thể hoàn thành luận văn này
- Cuối cùng là lời cảm ơn dành cho gia đình đã luôn bên cạnh chia sẽ và hỗ trợ
về mặt tinh thần rất lớn cho tôi
Mặc dù đã rất cố gắng để có thể hoàn thành tốt nhất luận văn của mình, nhưng sẽ không thể tránh khỏi những điều thiếu sót vì kiến thức là vô tận nên rất mong Quý Thầy, Cô cùng đọc giả có những góp ý để luận văn ngày một hoàn thiện hơn
Một phần đề tài được sự hỗ trợ và giúp đỡ của Công ty TNHH Phần mềm Hoàn Cầu và Công ty Cổ phần Global Online Branding đã tạo kiện và đưa sản phẩm vào hoạt động thử nghiệm để có được kết quả đánh giá thực tế
Trang 3LỜI CAM ĐOAN
Tôi xin cam đoan luận văn này do chính tôi thực hiện dưới sự hướng dẫn khoa học của
Trang 4Mục Lục
LỜI CẢM ƠN
LỜI CAM ĐOAN
Mục Lục
Danh Mục Các Bảng
Danh Mục Các Hình Vẽ
Danh Mục Viết Tắt
MỞ ĐẦU 1
CHƯƠNG 1: TỔNG QUAN 3
1.1 Giới thiệu về đề tài 3
1.2 Tình hình nghiên cứu 5
1.1.1 Tình hình nghiên cứu trong nước 5
1.1.2 Tình hình nghiên cứu ngoài nước 8
1.3 Tính khoa học và tính mới của đề tài 10
1.4 Mục tiêu nghiên cứu 11
1.5 Đối tượng và phạm vi nghiên cứu 11
CHƯƠNG 2: PHÂN TÍCH VÀ ĐỀ XUẤT MÔ HÌNH GIẢI PHÁP 12
2.1 Đặt vấn đề và hướng xử lý 12
2.1.1 Làm thế nào để biết được website có thay đổi giao diện và thay đổi đó là gì? 12
2.1.2 Đưa ra quyết định thay đổi là bị tấn công hay không? 19
2.1.3 Cảnh bảo đến người dùng như thế nào? 21
2.2 Đề xuất mô hình giải pháp tổng thể 21
2.2.1 Đề xuất hướng giải quyết các vấn đề? 21
2.2.2 Mô hình giải pháp 23
CHƯƠNG 3: HIỆN THỰC HÓA MÔ HÌNH GIẢI PHÁP 27
3.1 Mô hình tổng thể 27
3.2 Phân tích phát hiện thay đổi 28
3.3 Xử lý và kết luận thay đổi 30
3.4 Kiểm tra tính toàn vẹn ảnh 31
3.4.1 Áp dụng Pixel để sao sánh cho ra ảnh kết quả 31
Trang 53.4.2 Sử dụng kỹ thuật mã băm 33
3.5 Ứng dụng công nghệ để xử lý 34
3.6.1 Xử lý đa luồng dữ liệu 34
3.6.2 Push notifications 35
3.6.3 Sử dụng cây quyết định - Decision tree 35
3.6.4 Công nghệ dịch vụ dữ liệu WCF 36
3.6.5 Mã nguồn mở Laravel 37
3.6.6 Đa nền tảng trên thiết bị di động với Xamarin 37
CHƯƠNG 4: TRIỂN KHAI VÀ THỬ NGHIỆM HỆ THỐNG 39
4.1 Mô tả hệ thống 39
4.1.1 Giới thiệu 39
4.1.2 Chức năng 39
4.2 Thử nghiệm 41
4.2.1 Môi trường thực nghiệm hệ thống chính 41
4.2.2 So sánh kết quả sử dụng ảnh chụp với mã hóa mã nguồn 43
CHƯƠNG 5: KẾT LUẬN VÀ KHUYẾN NGHỊ 46
5.1 Kết quả đạt được 46
5.2 Đề xuất hướng phát triển 47
5.3 Lời kết 47
DANH MỤC TÀI LIỆU THAM KHẢO 49
PHỤ LỤC THIẾT KẾ HỆ THỐNG 50
Trang 6Danh Mục Các Bảng
Bảng 3.1: Giá trị kết quả cảnh báo 30
Bảng 4.1: Bảng mô tả phần cứng máy chủ 42
Bảng 4.2: Bảng mô tả phần mềm máy chủ 42
Bảng 4.3: Kết quả đánh giá so thực tế 43
Bảng 4.4: So sánh kỹ thuật chụp ảnh và mã nguồn 43
Phụ lục: Bảng 1.1: Bảng mô tả USERS 51
Bảng 1.2: Bảng mô tả USERS_CONFIGS 51
Bảng 1.3: Bảng mô tả CONFIGTYPE 52
Bảng 1.4: Bảng mô tả LISTDOMAIN 52
Bảng 1.5: Bảng mô tả DOMAINCHANGE 53
Bảng 1.6: Bảng mô tả FEATURES 53
Bảng 1.7: Bảng mô tả OPTIONLINKS 54
Bảng 1.8: Bảng mô tả OPTIONS 54
Bảng 1.9: Bảng mô tả SCHEDULES 55
Bảng 1.10: Bảng mô tả SCHEDULE_DT 55
Bảng 1.11: Bảng mô tả MESSAGES 56
Bảng 1.12: Bảng mô tả LOGS 56
Trang 7Danh Mục Các Hình Vẽ
Hình 1.1: Thống kê về số lượng websites 3
Hình 1.2: Số liệu phát triển internet tại Việt Nam 4
Hình 2.1: Mô hình thực hiện tấn công từ chối dịch vụ 14
Hình 2.2: Sơ đồ một cuộc tấn công lợi dụng lỗ hổng Redirect to SMB 16
Hình 2.3: Thống kế người dùng thiết bị di động 23
Hình 2.4: Mô hình giải pháp đề xuất 24
Hình 3.1: Mô hình giải pháp kỹ thuật 27
Hình 3.2: Xử lý phát hiện thay đổi 29
Bảng 3.1: Giá trị kết quả cảnh báo 30
Hình 3.3: Kết quả so sánh ảnh 33
Hình 3.4: Kết quả đánh giá mã băm 34
Hình 3.5: Mô hình cây quyết định 36
Hình 3.6: So sánh hiệu suất WCF và Webservice 37
Phụ lục: Hình 1.1: Sơ đồ logic 50
Hình 1.2: Màn hình đăng nhập ứng dụng mobile 57
Hình 1.3: Màn hình danh sách thông báo 58
Hình 1.4: Màn hình phản hồi đặc điểm 59
Hình 1.5: Màn hình tùy chọn 59
Hình 1.6: Màn hình đăng ký người dùng trên website 60
Hình 1.7: Màn hình thông tin cảnh báo trên website 60
Hình 1.8: Màn hình quản lý phân quyền 60
Hình 1.9: Màn hình quản lý domain trên website 61
Hình 1.10: Màn hình chính hệ thống xử lý 61
Hình 1.11: Màn hình danh sách lập lịch 62
Hình 1.12: Màn hình theo dõi tiến trình 62
Hình 1.13: Màn hình quản lý người dùng 62
Hình 1.14: Màn hình quản lý đặc điểm nhận diện 63
Hình 1.15: Màn hình tùy chỉnh hệ thống 63
Trang 8Danh Mục Viết Tắt
DDos Distributed Denial Of Service Tấn công từ chối dịch vụ phân tán
DNS Domain Name System Hệ thống phân giải tên miền
Dos Denial Of Service Tấn công từ chối dịch vụ
GCM Google Cloud Messaging Dịch vụ hỗ trợ việc truyền tải thông
điệp ID3 Interactive Decision 3 Giải thuật cây quy nạp
SEO Search Engine Optimization Tối ưu website thân thiện google SMB Server Message Block Giao thức chia sẽ dữ liệu
SQL Structured Query Language Ngôn ngữ truy vấn mang tính cấu
VNNIC Vietnam Internet Network Information
WCF Windows Communication Foundation Dịch vụ kết nối
XAML eXtensible Application Markup
Language
Ngôn ngữ đánh dấu với cú pháp tương tự XML
Trang 9MỞ ĐẦU
Trong cuô ̣c sống nhộn nhịp và tất bâ ̣t hiê ̣n nay, mo ̣i nhu cầu công việc đều được đơn giản hóa, rút ngắn thời gian bằng viê ̣c ứng du ̣ng công nghê ̣ thông tin vào xử lý, giải quyết các công viê ̣c Công nghệ thông tin đóng mô ̣t vai trò rất quan trọng trong sự phát triển của kinh tế, xã hội trong thời đại ngày nay, là yếu tố quan trọng và là kênh kết nối trao đổi giữa các thành phần trong xã hội, kinh tế, văn hóa, giáo du ̣c và thời đa ̣i toàn cầu hóa Đây cũng là vấn đề đang được các doanh nghiê ̣p, tổ chức, cá nhân và cơ quan nhà nước quan tâm sâu sắc, bởi công nghệ thông tin là cốt lõi trong các hoạt động phát triển kinh tế, văn hóa, giáo du ̣c, xã hô ̣i trong thời đa ̣i ngày nay
Trong đó, hệ thống websites được đánh giá là phát triển mạnh mẻ nhất trong thời gian qua, đặc biệt tại Việt Nam, theo thống kê tính đến cuối năm 2015 có đến hơn 300 ngàn tên miền đang duy trì trên hệ thống, tổng số người dùng internet đạt 48% dân số trên
cả nước, đứng thứ 6 trên thế giới (Nguồn: Trung tâm internet Việt Nam – VNNIC) Qua đó cho ta thấy được sự phát triển mạnh mẻ vượt bật của internet Việt Nam nói riêng và trên thế giới nói chung lớn đến thế nào
Sự phát triển mạnh về internet cũng đồng nghĩa với việc các tội phạm công nghệ cao cũng bùng phát một cách nhanh chống Đơn cử thống kê về tình hình tấn công lừa đảo trong quý III/2016 đã tăng 5,2 triệu lượt so với quý trước (Nguồn: Tạp chí An toàn thông tin) Hay gần đây vào ngày 23/2/2015 trang web nổi tiến tại Việt Nam là google.com.vn cũng đã bị tấn công bởi nhóm hacker Lizard Squad,…
Như vậy việc giám sát, bảo vệ và phòng chống các cuộc lừa đảo, tấn công trên internet
là một trong những vấn đề cấp bách luôn được sự quan tâm của nhiều tổ chức, doanh nghiệp, cá nhân cũng như nhiều quốc gia trên thế giới nhằm giảm thiểu hậu quả, thiệt hại do các cuộc tấn công gây ra
Trong phạm vi đề tài nghiên cứu này, tôi tập trung vào việc phát hiện các website bị tấn công thay đổi giao diện và đưa ra các thông báo kịp thời giúp cho người bị hại sớm nhận ra và khắc phục sự cố, nhằm giảm thiểu các thiệt hại ảnh hưởng đến uy tín và rộng hơn là ảnh hưởng đến kinh tế, xã hội cũng như an ninh quốc gia
Trang 10Thách thức đề tài mà tôi cần giải quyết đó là vì các tấn công thay đổi giao diện rất khó phát hiện bằng các công cụ, chỉ có thể do người dùng nhận diện bằng mắt thường khi truy cập vào website, vì vậy việc xác định các thay đổi về giao diện và đưa ra quyết định cảnh báo đến người dùng rằng thay đổi đó có phải bị tấn công hay không thật sự
là thử thách khó Ngoài ra việc phát hiện tấn công được thực hiện từ xa, không can thiệp hay giám sát trực tiếp trên hệ thống máy chủ nên đó cũng là thách thức làm sao không ảnh hưởng đến website khi thực hiện giám sát
Đề tài này cũng được ý tưởng dựa trên những nghiên cứu và phát triển của TS Võ Văn Khang cùng đồng nghiệp về việc nhận diện tấn công website trực tiếp tại chỗ, họ
đã có được sản phẩm để phục vụ nhu cầu người dùng và cũng có được thành công nhất định đó là sản phẩm “Deface Tracking” hỗ trợ kiểm soát thông tin, bảo mâ ̣t thông tin cho Cổng/trang thông tin điê ̣n tử của các cơ quan Nhà nước trên đi ̣a bàn tỉnh Bình Dương
Nội dung luận văn này được chia 5 chương:
- Chương 1: giới thiệu tổng quan về đề tài, tình hình nghiên cứu trong và ngoài nước để giúp đọc giả có được cái nhìn tổng quan hơn
- Chương 2: cách đặt các vấn đề cần giải quyết, từ đó đề xuất ra mô hình hướng giải quyết làm sáng tỏ các vấn đề đó
- Chương 3: nói về giải pháp để hiện thực hóa mô hình
- Chương 4: thực hiện xây dựng, cài đặt và mô tả cách hoạt động của công cụ dựa trên giải pháp trên
- Chương 5: là phần tổng kết kết quả trong đề tài, hướng mở rộng và phát triển tiến theo mục đích hoàn thiện sản phẩm
Trang 11CHƯƠNG 1: TỔNG QUAN
Tóm tắt chương:
Nội dung của chương này trình bày tổng quan về sự phát triển về số lượng websites và chiều hướng gia tăng các cuộc tấn công websites Chương này cũng trình bày tình hình nghiên cứu hiện tại cùng mục tiêu và phạm vi của đề tài
1.1 Giới thiệu về đề tài
- Sự phát triển của internet đã dẫn đến sự phát triển của rất nhiều dịch vụ trực tuyến trên môi trường web Các dịch vụ trực tuyến hiện nay không chỉ đơn thuần cung cấp giao diện giao tiếp cho người dùng để sử dụng các dịch vụ này bằng cách vào ngay trang web để sử dụng mà còn cung cấp nhiều cơ chế khác
để dịch vụ đó được khai thác theo nhiều cách khác nhau trong nhiều hệ thống khác nhau trên nhiều môi trường khác nhau Và cùng với nhu cầu thực hiện mua sắm online ngày càng nở rộ nên việc kinh doanh trực tuyến cũng phát triển vượt trội Cụ thể số lượng website đến 2/2017 đạt hơn con số 1 tỉ (hoạt động và không hoạt động) và hơn 3,5 tỉ người dùng internet trên toàn thế giới:
Hình 1.1: Thống kê về số lượng websites (Nguồn: http://www.internetlivestats.com/)
Trang 12- Tại Việt Nam số lượng website chỉ tính trên tên miền vn và com.vn thì chiếm
88% trên tổng số hơn 300 ngàn tên miền được đăng ký và đang duy trì Dưới
đây là số liệu phát triển internet tại Việt Nam đến tháng 5/2015:
Hình 1.2: Số liệu phát triển internet tại Việt Nam
(Nguồn: http://www.thongkeinternet.vn/)
- Song song với sự phát triển mạnh mẻ về số lượng websites thì bên cạnh đó số
lượng websites bị tấn công cũng tăng theo không kém Ước tính trung bình 1.2
giây trên thế giới có 1 website bị tấn công thành công, khoảng 80 ngàn websites
bị tấn công trong 1 ngày (Nguồn: http://www.internetlivestats.com)
- Tại Việt Nam, trung bình mỗi tháng lại có hơn 300 website của các doanh
nghiệp, tổ chức trong nước bị tấn công Và hiện trạng có tới 40% websites tồn
tại các lỗ hổng dễ bị hacker tấn công (Nguồn: Bkav – Tháng 8/2016)
- Hậu quả từ các cuộc tấn công gây ra là không hề nhỏ và ảnh hưởng lớn đến
kinh tế, chính trị, xã hội của một quốc gia Đơn cử gần đây nhất là vào ngày 29
tháng 7 năm 2016, tin tặc đã thực hiện tấn công vào hai cảng hàng không quốc
tế lớn nhất Việt Nam là Nội Bài và Tân Sơn Nhất, sau đó mở rộng ra sân bay
Đà Nẵng, Phú Quốc Nhóm hacker đã chiếm quyền, chuyển hướng website và
thay đổi nội dung thông tin trên các màn hình cũng như website các hãng dẫn
Trang 13đến việc đình trệ các chuyến bay, mất an toàn bay và ngoài ra loạt danh sách khách hàng bị đánh cắp và tung lên mạng, thiệt hại là rất lớn
Trên tình hình thực tế đó nên tôi thực hiện việc nghiên cứu và xây dựng công cụ có thể nhận diện website bị tấn công và thông báo cho người dùng kịp thời khắc phục
- Có nhiều cách website bị tấn công, trong đó có tấn công thay đổi giao diện là cách phổ biến nhất và người dùng lại khó nhận biết kịp thời nhất Người dùng chỉ có thể nhận biết website bị tấn công bằng mắt thường khi truy cập vào website, rất khó để có thể phát hiện và khắc phục sớm
- Ý tưởng luận văn là nghiên cứu và phát triển công cụ đưa ra cảnh báo sớm nhất theo thời gian thực cho người quản trị, người dùng có thể biết được và khắc phục sự cố khi website bị tấn công thay đổi giao diện nhằm giảm thiểu thiệt hại Đặc biệt là có thể phát hiện website bị tấn công từ xa không cần can thiệp trực tiếp trên máy chủ
1.2 Tình hình nghiên cứu
Theo tìm hiểu của tôi, hiện tại đa phần là các nghiên cứu về giải pháp phòng chống, ngăn chặn các cuộc tấn công xảy ra, chưa có nhiều nghiên cứu hay công cụ nào tập trung vào việc nhận diện và cảnh báo đến người dùng đặc biệt là tấn công thay đổi giao diện website từ xa
Dưới đây là một số nghiên cứu, công cụ được triển khai:
1.1.1 Tình hình nghiên cứu trong nước
Dịch vụ giám sát website trực tuyến VNCS Web Monitoring - của Công ty cổ phần công nghệ An ninh không gian mạng Việt Nam (VNCS Tech, thành viên Hanoi Telecom) – có khả năng giám sát và cảnh báo website bị tấn công Theo trang web chính thức của VNCS thì:
- VNCS Web Monitoring được thiết kế để phát hiện các tấn công Website theo thời gian thực, đồng thời là đầu mối để tìm kiếm thông tin các cuộc tấn công Phân tích các nguồn Log từ các trang web để đưa ra các cảnh báo tức thời về các cuộc tấn công Sản phẩm còn đưa ra thông tin việc sử dụng các tài nguyên mạng
o Phát hiện quét website
Trang 14o Các tấn công web như sql, xss…
o Lọc log theo thời gian thực
o Thông tin về hệ thống
- Đây là một bộ giải pháp tổng hợp cho việc giám sát website, bao gồm:
o Quản lý giám sát Log tập trung
Hệ thống VNCS Web Monitoring theo dõi, giám sát tất cả các sự kiện an ninh diễn ra trên tất cả các website Giải pháp đáp ứng các nhu cầu thực tế của người quản trị có thể quản lý được hệ thống website trên 1 giao diện đồng nhất Giúp người quản trị có thể rút ngắn thời gian trong việc phân tích các Log có trên hệ thống
o Khả năng phân tích tự động và cảnh báo theo thời gian thực
Sản phẩm cập nhật các công nghệ mới nhất, và các cuộc tấn công
từ các hãng bảo mật trên thế giới Đồng thời có 1 đội ngũ nghiên cứu và phát triển riêng cho sản phẩm VNCS Web Monitoring Bằng các thuật toán thông minh mà đội R&D phát triển, hệ thống giám sát website có thể tự động phân tích các tình huống tấn công
và sẽ gửi cảnh báo tức thời đến người quản trị khi phát hiện có tấn công vào website Giải pháp này giúp người quản trị không cần can thiệp vào hệ thống Log mà vẫn nhận được các báo cáo tấn công
Các hình thức tấn công mới luôn được đội R&D nghiên cứu và cập nhật sớm nhất để tích hợp vào hệ thống Vì thế hệ thống có thể phát hiện chính xác và kịp thời các tấn công mới
o Hỗ trợ tối đa cho quản trị phân tích sự cố bằng tay
Cung cấp cho người quản trị, công cụ để phân tích chi tiết các cuộc tấn công, người quản trị có thể xem và tùy biến các cảnh báo, đồng thời có thể phân tích chi tiết các cuộc tấn công Người dùng có thể lọc các cuộc tấn công theo thời gian, domain, các IP liên quan đến các cuộc tấn công và các kiểu tấn công Qua đó có thể truy tìm được kẻ tấn công vào hệ thống Xuất ra các báo cáo theo ý muốn của mình
o Khả năng theo dõi và thống kê
Trang 15 Với một giao diện thân thiện và trực quan VNCS Web Monitoring đưa ra các thống kê của người dùng về các hình thức tấn công, các địa chỉ tấn công Đưa ra cái nhìn tổng quan nhất về
hệ thống cũng như các sự kiện mới, số log gửi về trên hệ thống Thông qua các hình thức tấn công, người quản trị có thể lần ra các dấu vết tấn công, để đưa ra các hình thức xử lý thích hợp
o Khả năng giám sát hiện trạng website
Tình trạng website up/down được theo dõi thường xuyên, với giao diện biểu đồ trực quan, cho phép người quản trị theo dõi xem trong 1 khoảng thời gian (6h, 12h, 24h, 1 tuần, 2 tuần, 1 tháng, 2 tháng,…) website bị down bao nhiêu lần Điều này cho phép đánh giá hiện trạng cũng như đường truyền các website
o Khả năng phát hiện tấn công thay đổi giao diện (deface)
Deface Monitor tính năng phát hiện website bị tấn công thay đổi nội dung (deface) Deface là hiện tượng tin tặc chiếm quyền trên website và tiến hành thay đổi các hình ảnh, thông tin trên website Deface không chỉ gây thiệt hại về kinh tế, mà còn ảnh hưởng rất lớn uy tín và hình ảnh của các cơ quan, tổ chức khi tin tức đưa các hình ảnh, thông tin xấu lên website
Đây là một tính năng thực sự rất hữu ích cho người quản trị hệ thống Trên thị trường hiện nay, rất ít các sản phẩm có tính năng này, hoặc như có cũng chưa được tối ưu hoặc tiện lợi cho người
sử dụng Với tính năng phát hiện tấn công deface website, người quản trị hệ thống hoàn toàn có thể yên tâm khi có bất kì sự thay đổi nào bất thường trên hệ thống, VNCS
Web Monitoring sẽ gửi ngay cảnh báo cho quản trị viên (Email, SMS) kèm với ảnh chụp website để xác minh
o Báo cáo về thực trạng hệ thống
Hệ thống VNCS Web Monitoring đưa ra các cuộc tấn công, và cảnh báo đến người dùng, thông qua đó có cái nhìn tổng quan nhất về hệ thống Xuất ra các báo cáo tổng quan nhất
Trang 16 Như vậy, tính năng nhận diện thay đổi giao diện là một phần trong gói giải pháp trên, và thuộc giải pháp nhận diện tấn công tại chỗ kèm theo
hệ thống phần cứng, việc giám sát từ xa vẫn được phát triển nhưng hiện tại vẫn chưa được triển khai
Như đã giới thiệu trong phần mở đầu của luận văn này, hiện tại dự án Xây dựng giải pháp phần mềm “Deface Tracking” hỗ trợ kiểm soát thông tin và bảo mâ ̣t thông tin Giải pháp được nghiên cứu và triển khai thử nghiệm cho Cổng/trang thông tin điê ̣n tử của các cơ quan Nhà nước trên đi ̣a bàn tỉnh Bình Dương Dự
án do PGS.TS Vũ Thanh Nguyên và ThS Đinh Thi ̣ Thu Hương đồng chủ nhiê ̣m với sự tham gia của TS Võ Văn Khang cùng các Thạc sĩ và Kỹ sư khác
- Mục tiêu của nhiệm vụ: Xây dựng quy trình và giải pháp phần mềm hỗ trợ kiểm soát tình tra ̣ng hoa ̣t đô ̣ng của các Cổng/trang thông tin điê ̣n tử, cảnh báo ki ̣p thời khi các Cổng/trang thông tin bi ̣ tấn công thay đổi giao diê ̣n Đưa ra các khuyến cáo về vâ ̣n hành, quản lý nhằm nâng cao khả năng kiểm soát thông tin, bảo mâ ̣t thông tin cho Cổng/trang thông tin điê ̣n tử của các cơ quan nhà nước trên đi ̣a bàn tỉnh Bình Dương Cụ thể:
o Khảo sát, đánh giá hiện trạng thí điểm một cổng/trang TTĐT tiêu biểu: Các điểm yếu, các lỗi về bảo mật hệ thống đang hiện hữu, về quy trình vận hành, khắc phục sự cố và nguy cơ tổn thất cổng/trang TTĐT được lựa chọn
o Xây dựng và triển khai giải pháp cảnh báo “Deface Tracking”, với mục đích cảnh báo kịp thời các tấn công thay đổi giao diện, nội dung quan trọng của cổng/trang TTĐT
o Kiểm thử hệ thống và chuyển giao đơn vị thụ hưởng; xây dựng quy trình vận hành, dự báo và hướng dẫn khắc phục sự cố sau cảnh báo
Như vậy giải pháp trên cũng đáng áp dụng kỹ thuật nhận diện tại chỗ, phân tích trực tiếp trên mã nguồn, dữ liệu,… nơi đặt website
1.1.2 Tình hình nghiên cứu ngoài nước
- Có nhiều nghiên cứu và giải pháp cho việc giám sát website, nhận diện tấn công, phòng ngừa tấn công,… đa số tập trung vào việc giám sát server, an ninh mạng là nhiều hơn, không nhiều công cụ được phát triển phục vụ cho việc nhận dạng và cảnh báo khi website bị tấn công thay đổi nội dung
Trang 17- Một số công cụ trực tuyến hỗ trợ việc giám sát website:
o Trang Versionista địa chỉ https://versionista.com: cho phép kiểm tra 1 hoặc toàn bộ trang trên website của bạn Những thay đổi sẽ được gửi đến người dùng để xem xét
o Trang VisualPing địa chỉ https://visualping.io: người dùng chỉ cần gõ website cần theo dõi, hệ thống cho phép khai báo vùng thông tin cần theo dõi thay vì toàn bộ trang Hệ thống sẽ gửi đến người dùng 2 hình ảnh trước và sau nếu có sự thay đổi để người dùng kiểm tra
o Trang Follow That Page địa chỉ https://www.followthatpage.com: trang ngày cho phép người dùng theo dõi thay đổi trên website của họ nhưng chỉ theo dõi về nội dung văn bản dù là thay đổi nhỏ nhất người dùng cũng sẽ nhận được cảnh báo
o Nổi bật hơn là Trang https://sucuri.net/ giúp người dùng giám sát website từ xa và thực hiện hỗ trợ khôi phục lại website trước khi bị tấn công
o …
- Ngoài ra còn rất nhiều công cụ khác hỗ trợ người dùng giám sát website, tuy nhiên trong phạm vi tìm hiểu của tôi thì hầu hết người dùng chỉ nhận được các thông báo khi website của họ qua email
- Hầu hết các website đều được xây dựng theo thời gian, một phần hoặc toàn bộ website có thể sẽ được điều chỉnh lại Sự thay đổi đó cần được giám sát, nó thể
là thay đổi trong cấu trúc HTML hay đơn giản chỉ là một đoạn văn bản Vì vậy cần phải nhận diện được các thay đổi tự động, cụ thể và hiệu quả [13] Đó là nhận xét của nhóm nghiên cứu thuộc đại học Đức
- Tấn công thay đổi giao diện website thường là thay đổi hoàn toàn giao diện một trang Hacker thường sẽ tấn công vào hệ quản trị cơ sở dữ liệu để đánh cắp mật khẩu và thay đổi giao diện theo mục đích họ muốn cùng bút danh “hacking codename” [14] Nhóm nghiên cứu của trường World of Computer Science and Information Technology Journal cũng đã thực hiện sử dụng mã băm để phân tích phát hiện thay đổi giao diện website [14]
- Tương tự như trên, một nhóm nghiên cứu thuộc International Journal of Computer Science and Information Security đã kế thừa và phát triển mở rộng
Trang 18bằng việc phân tích dữ liệu hình ảnh và text trên một website và từ đó kiểm tra
để đưa ra kết quả về việc tấn công Họ thực hiện lọc nội dung text đơn thuần, loại bỏ các script, html để lưu trữ so sánh, còn hình ảnh họ thực hiện so sánh từng pixel 1 để phân biệt có thay đổi [11]
Nghiên cứu chỉ dừng lại ở mức độ phát hiện thay đổi, một số nghiên cứu phát hiện được thay đổi do tấn công, đa phần chưa đề cập đến việc cảnh báo cho người dùng như thế nào
1.3 Tính khoa học và tính mới của đề tài
- Dựa trên tình hình nghiên cứu trong và ngoài nước thì đề tài này còn khá mới
mẻ và mang tính cấp thiết, cần sớm được phát triển để đưa vào ứng dụng thực
o Thực tế chưa có bộ dữ liệu đầy đủ và chính xác ghi nhận các đặc tính nhận diện sự thay đổi là bị tấn công hay không? Làm thế nào đề lưu trữ và mở rộng việc ghi nhận các đặc tính để dựa vào đó có thể nhận biết sự thay đổi là bình thường hay bất thường
o Các website bị tấn công nếu không được khắc phục sớm có thể sẽ gây ra nhiều thiệt hại khó lường, vì vậy làm thế nào để cảnh báo đến người quản trị sớm nhất theo thời gian thực để có thể sớm khắc phục
- Mở rộng việc thông báo đến người dùng kịp thời nhất bằng việc cảnh báo tức thời sau khi phát hiện ra dấu hiệu cho rằng website bị tấn công
Trang 191.4 Mục tiêu nghiên cứu
- Tiếp cận các nghiên cứu đi trước để kế thừa và áp dụng vào thực tại
- Mục tiêu nghiên cứu chính đó là làm thế nào để có thể xây dựng được công
cụ cảnh báo đến người dùng website của họ đã bị tấn công thay đổi giao diện
- Làm thế nào để có thể nhận diện được website đã bị thay đổi giao diện? Sau đó phân tích các thay đổi và đưa ra quyết định rằng thay đổi đó có phải là do tin tặc tấn công hay không? Hay chỉ là thay đổi bình thường do người dùng thực hiện?
- Cuối cùng là xây dựng hình thức cảnh báo đến người dùng, làm thế nào để họ nhận biết được thông tin một cách sớm nhất để hạn chế được những thiệt hai bởi cuộc tấn công gây ra
1.5 Đối tượng và phạm vi nghiên cứu
- Đối tượng nghiên cứu chính:
o Giải pháp phát hiện thay đổi
o Giải pháp xác định thay đổi là do tấn công
o Giải pháp cảnh báo đến người dùng
- Đối tượng áp dụng chính là các websites
Trang 20CHƯƠNG 2: PHÂN TÍCH VÀ ĐỀ XUẤT MÔ HÌNH GIẢI PHÁP
Tóm tắt chương:
Trong chương này tôi sẽ tập trung vào hai nội dung chính đó là nêu lên những vấn đề cần giải quyết và từ đó đưa ra giải pháp thực hiện Có ba vấn đề chính trong chương này được đề ra đó là làm thế nào để phát hiện được website bị thay đổi và thay đổi đó
là gì?, làm thế nào đưa ra quyết định thay đổi đó là do tấn công hay là do người dùng thay đổi thông thường? Và cuối cùng là nếu phát hiện ra tấn công thì cảnh báo đến người dùng như thế nào? Dựa trên ba vấn đề đó tôi đã đề xuất mô hình giải pháp để
xử lý để đạt được kết quả mà đề tài mong muốn.
2.1 Đặt vấn đề và hướng xử lý
Câu hỏi lớn nhất và cũng là nội dung chính trong đề tài nghiên cứu này đó chính là làm thế nào để phát hiện webiset bị tấn công và thực hiện thông báo cho người dùng biết? Để giải quyết được vấn đề này, tôi xin đặt một số vấn đề sau:
- Làm thế nào để phát hiện website bị thay đổi và thay đổi đó là gì?
- Đưa ra quyết định để phân biệt được thay đổi đó đâu là thay đổi do người dùng và đâu là thay đổi do hacker?
- Cảnh báo đến người dùng bằng cách nào nhanh nhất và đầy đủ nhất?
Dưới đây là các thông tin vì sao tôi lại đặt ra các vấn đề trên
2.1.1 Làm thế nào để biết được website có thay đổi giao diện và thay đổi đó là
gì?
Khái niệm thay đổi giao diện: “Tấn công thay đổi giao diện website là cuộc tấn công làm thay đổi diện mạo của một website (site) hay một trang của website (webpage)”[14]
- Vì nhiều mục đích khác nhau, có thể là các cải thiện website liên tục để phục vụ mục đích marketing tốt hơn, hay cải thiện thứ hạng trên trang Google,… tất cả đều dẫn đến việc cập nhật website diễn ra thường xuyên hơn Do đó cần phải ghi nhận được tất cả các thay đổi phát sinh này và lưu trữ lại để làm cơ sở phân tích
- Như vậy thay đổi trên website là thay đổi những gì? Dựa vào khái niệm trên tôi rút ra được 5 đặc điểm làm ảnh hưởng đến giao diện website:
(1) Hệ thống website không hồi đáp (request timeout)
Trang 21- Khi truy cập một website người bị phải đợi rất lâu và nhận được kết quả là một màng hình trắng, hay thông báo không tìm thấy máy chủ tức là người dùng đang truy cập vào hệ thống đang bị quá tải hoặc bị ngưng hoạt động
- Có nhiều nguyên nhân dẫn đến website không hồi đáp các yêu cầu từ người dùng dẫn đến hệ thống ngưng hoạt động, có thể lỗi này là do đường truyền người dùng có vấn đề, hoặc do server đang quá tải hoặc đã bị sập hoàn toàn Lúc này người dùng truy cập rất chậm hoặc không thể truy cập website Và một trong những kiểu tấn công như thế này vẫn được áp dụng thường xuyên, nó được gọi là “tấn công từ chối dịch vụ - DoS hay tấn công từ chối dịch vụ phân tán - DDos”[1]
- Một cuộc tấn công từ chối dịch vụ hay tấn công từ chối dịch vụ phân tán là một nỗ lực làm cho những người dùng không thể sử dụng tài nguyên của một máy tính Mặc dù phương tiện để tiến hành, động cơ, mục tiêu của tấn công từ chối dịch vụ có thể khác nhau, nhưng nói chung nó gồm có sự phối hợp, sự cố gắng ác ý của một người hay nhiều người để một trang, hay hệ thống mạng không thể sử dụng, làm gián đoạn, hoặc làm cho hệ thống đó chậm đi một cách đáng kể với người dùng bình thường, bằng cách làm quá tải tài nguyên của hệ thống[4] Thủ phạm tấn công từ chối dịch vụ thường nhắm vào các trang mạng hay server tiêu biểu như ngân hàng, cổng thanh toán thẻ tín dụng và thậm chí DNS root servers (một dịch vụ phân giải tên miền gốc) (Nguồn: Theo trang wikipedia)
- Một phương thức tấn công phổ biến kéo theo sự bão hoà máy mục tiêu với các yêu cầu liên lạc bên ngoài, đến mức nó không thể đáp ứng giao thông hợp pháp, hoặc đáp ứng quá chậm Trong điều kiện chung, các cuộc tấn công DoS được bổ sung bởi ép máy mục tiêu khởi động lại hoặc tiêu thụ hết tài nguyên của nó đến mức nó không cung cấp dịch vụ, hoặc làm tắc nghẽn liên lạc giữa người sử dụng và nạn nhân
- Tấn công từ chối dịch vụ có thể được thực hiện theo một số cách nhất định
Có năm kiểu tấn công cơ bản sau đây: [7]
o Nhằm tiêu tốn tài nguyên tính toán như băng thông, dung lượng đĩa cứng hoặc thời gian xử lý
o Phá vỡ các thông tin cấu hình như thông tin định tuyến
Trang 22o Phá vỡ các trạng thái thông tin như việc tự động reset lại các phiên TCP
o Phá vỡ các thành phần vật lý của mạng máy tính
o Làm tắc nghẽn thông tin liên lạc có chủ đích giữa các người dùng và nạn nhân dẫn đến việc liên lạc giữa hai bên không được thông suốt
Hình 2.1: Mô hình thực hiện tấn công từ chối dịch vụ
Như vậy việc xác định thời gian hồi đáp với máy chủ là một trong
những đặc điểm để nhận diện website bị tấn công
(2) Website bị điều hướng về trang website khác (redirect)
- Hiện tượng này là khi người dùng truy cập vào địa chỉ A thì sau khi trình hoạt tải xong thì địa chỉ bị thay đổi thành B, tức là địa chỉ ban đầu người dùng truy cập đã bị chuyển hướng sang địa chỉ khác
- Người dùng thông thường hay sử dụng chuyển hướng một đường dẫn này
về đường dẫn khác với nhiều mục đích khác nhau và các hacker cũng sử dụng chiêu thức này để phục vụ cho các mục đích xấu Cụ thể:
- Để lừa khách với mục đích đánh cắp thông tin, đánh cắp thẻ tín dụng, xuyên tạc nội dung,… hacker điều hướng trang website mà người dùng truy cập về trang mới do chúng tạo ra, nếu người dùng không cẩn thận sẽ bị sập bẫy
- Có nhiều hình thức điều hướng thông qua domain bị tấn công hoặc sử dụng điều hướng thông qua request url, đặc biệt là thông qua các lỗ hổng trình duyệt hay hệ điều hành
Trang 23- Điển hình như lỗ hổng bảo mật tồn tại gần hai mươi năm đó là Redirect to SMB (giao thức chia sẽ dữ liệu) Redirect to SMB được phát triển từ một lỗ hổng trên trình duyệt Internet Explorer do chuyên gia bảo mật Aaron Spangler phát hiện hồi năm 1997 Khi đó, Spangler nhận thấy rằng chỉ cần
gõ một địa chỉ URL bắt đầu bằng từ "File" (thí dụ như file://1.1.1.1/) thì Windows sẽ tiến hành xác thực địa chỉ đó (1.1.1.1) thông qua giao thức SMB (Server Massage Block)[12] Lợi dụng điều này, kẻ xấu có thể ghi lại thông tin đăng nhập của nạn nhân Mặt khác, các địa chỉ URL kiểu này có thể núp bóng dưới dạng hình ảnh, iframe hoặc bất cứ dạng thức media nào hiển thị trên trình duyệt
- SMB là một giao thức thường được dùng để chia sẻ file, máy in và các cổng nối tiếp trong hệ thống mạng Trong những năm qua, nhiều phiên bản của SMB đã được ra đời và theo thống kê, đây là một trong những attack vector phổ biến trong những những vụ tấn công mạng Theo báo cáo trong vụ hack Sony Pictures thì hacker cũng đã thực hiện xâm nhập bằng cách lợi dụng lỗ hổng SMB.[12]
- Và mới đây, chuyên gia bảo mật Brian Wallace và nhóm bảo mật Cylane đã nghiên cứu lỗ hổng Redirect to SMB dựa trên một ứng dụng chat client Nhóm ghi nhận được rằng: “Khi một URL dẫn tới một hình ảnh được nhận, client sẽ cố gắn hiển thị một bản xem trước của hình ảnh đó Lấy cảm hứng
từ nghiên cứu của Aaron cách đây 18 năm, chúng tôi nhanh chóng gởi cho người khác một URL bắt đầu bằng file:// và dẫn tới một máy chủ SMB độc hại Tất nhiên, kết quả là chat client cố gắng load hình ảnh và hệ thống Windows của nhận tiến hành xác thực với máy chủ SMB mà chúng tôi dẫn về.”
- “Chúng tôi đã tạo ra một server HTTP trong Python, dùng một vài dòng startus code HTTP 302 giúp chuyển hướng clients tới file://URL và từ đây, chúng tôi có thể xác nhận rằng một http://URL có thể dẫn tới hành động xác thực từ hệ điều hành.” Tiếp theo đó, hacker chỉ cần tạo ra những hộp thoại nhằm lừa người dùng nhập thông tin cá nhân hoặc yêu cầu xác nhận chứng chỉ nào đó để thực hiện ý đồ xấu [9]
Trang 24Hình 2.2: Sơ đồ một cuộc tấn công lợi dụng lỗ hổng Redirect to SMB
(https://www.cylance.com/redirect-to-smb)
- Các mối đe dọa có thể núp bóng dưới hình thức các quảng cáo độc hại yêu cầu người dùng phải xác thực, hoặc Redirect to SMB có thể được sử dụng trong mạng Wifi công cộng, có thể thực hiện tấn công từ một máy tính xách tay hoặc thậm chí là một điện thoại Android,… Có thể, một trong các khả năng nguy hiểm nhất khi sử dụng Redirect to SMB là thông qua trình iTunes Software Updater của Apple trên Windows Trong trường hợp này, một DNS record bị xâm phạm sẽ chuyển hướng thao tác tải các bản cập nhật sang server SMB, và từ đây, hacker sẽ sử dụng kiểu tấn công Man In The Middle để dò ra được thông tin đăng nhập vào phần mềm của nạn nhân.[12]
Như vậy việc điều hướng website cũng là đặc điểm để xem xét website
có bị tấn công hay không
(3) Thay đổi địa chỉ IP máy chủ [7]
- Cụ thể như website uit.edu.vn được đặt ở máy chủ với IP 192.168.1.17, sau khi bị tấn công, người dùng truy cập vào uit.edu.vn thì lúc này IP lại là
Trang 2527.0.12.29, như vậy rõ ràng địa chỉ website uit.edu.vn đã bị thay đổi nơi đặt
mã nguồn
- Chủ yếu dựa vào lỗ hỏng bảo mật DNS để điều hướng người dùng sang máy chủ khác hoặc website khác do hacker tạo sẵn để lừa người dùng
- Hệ thống DNS thực chất là một tập hợp hệ thống phần cứng và các công cụ phần mềm phục vụ cho nhiệm vụ phân giải tên miền
- Ngoài các hệ thống phần cứng và các công cụ phần mềm chạy dưới dạng dịch vụ thì cần có các giao thức DNS (Bao gồm định dạng gói tin, giao thức truyền, …) để có thể tiến hành trao đổi thông tin giữa máy client với các máy chủ DNS và giữa các máy chủ DNS với nhau
- Chính vì DNS hội tụ đầy đủ các yếu tố: Phần cứng, phần mềm và giao thức như đã trình bày ở trên nên hệ thống DNS luôn luôn tiềm ẩn các lỗ hổng mà hacker có thể sử dụng để khai thác và làm chủ hệ thống, từ đó gây ra các ảnh hưởng tới người dùng
- Kịch bản tấn công hệ thống DNS thường xảy ra là DNS spoofing- đây là một phương pháp tấn công máy tính nhờ đó mà dữ liệu được thêm vào hệ thống cache của các DNS server Từ đó, các địa chỉ IP sai (thường là các địa chỉ IP do hacker chỉ định) được trả về cho các truy vấn tên miền nhằm chuyển hướng người dùng tư một website này sang một website khác
- Để khai thác theo hướng này, hacker lợi dụng lỗ hổng của phần mềm DNS,
do các DNS responses không được xác nhận để đảm bảo chúng được gửi từ các server được xác thực, các bản ghi không đúng đắn sẽ được cache lại và phục vụ cho các user khác
- Ví dụ: Hacker thay thế địa chỉ IP cho một bản ghi DNS trên DNS server thành địa chỉ IP của server mà hacker đang có quyền điều khiển Trên server này, hacker có triển khai một số phần mềm mã độc để khi người dùng bị chuyển qua sẽ dễ dàng bị nhiễm mã độc
- Giả mạo máy chủ DNS là cách một số phần mềm quảng cáo hay trojan thường hay thực hiện Đầu tiên, chúng dựng lên các DNS server, giống với chức năng DNS server thông thường Tuy nhiên, các DNS server này có khả năng điều khiển được để thêm, bớt hay chỉnh sửa các bản ghi DNS
Trang 26nhằm chuyển hướng người dùng tới các địa chỉ IP không chính xác với mục đích: gia tăng quảng cáo, cài mã độc, thay đổi kết quả tìm kiếm…
- Để thực hiện hành vi này, các phần mềm độc hại sau khi được cài vào máy tính người dùng, chúng sẽ tìm cách để thay đổi cấu hình DNS của người dùng thành địa chỉ DNS của phần mềm đã thiết lập từ trước Qua đó, các truy vấn DNS của người dùng thay vì đi qua các DNS server của ISP hoặc
do người dùng thiết lập thì lại đi qua các DNS server của hacker
- Một biến thể của hình thức này chính là việc các phần mềm độc hại thay đổi file host (Trên hệ điều hành Windows) để chỉ định địa chỉ IP cho một số website mà hacker mong muốn
Vậy IP website bị thay đổi là một trong những đặc điểm cần được kiểm tra để nhận diện website bị thay đổi do tấn công
(4) Thay đổi phát sinh lỗi mã nguồn
- Đa phần vì mục đích đánh cắp thông tin hay vì lý do khác mà hacker thực hiện chèn các đoạn mã riêng của họ vào mã nguồn hiện tại và có thể vô tình làm phát sinh lỗi code
- Trường hợp này hiếm gặp ở các cuộc tấn công từ hacker vì nó không mang lại được tính truyền bá thông tin cho người dùng biết vì tình trạng website hiện tại không hoạt động được, chỉ thể hiện các đoạn lỗi code hay các thông báo không truy cập khác
- Tuy nhiên cũng có nhiều cuộc tấn công nhằm vào mã nguồn hệ thống website từ các lỗ hỏng của các mã nguồn, các plugin, addon,… qua đó làm thay đổi mã nguồn website và hoạt động của website không đúng hoặc không thao tác được
- Thay đổi này phần do người dùng trực tiếp thực hiện chỉnh sửa mã nguồn nhưng không kiểm soát được dẫn đến lỗi hay do lập trình viên không đảm bảo chất lượng mã nguồn dẫn đến nhiều lỗi khiến người dùng không thể truy cập thao tác được, ví dụ các lỗi không kết nối được database, lỗi webconfig, lỗi phân quyền truy cập,…
Tuy lỗi mã nguồn không thường xuyên xảy ra do hacker tấn công làm ảnh hưởng đến giao diện nhưng thực tế vẫn tồn tại và việc xác định để báo cho người dùng là cần thiết
Trang 27 (5) Giao diện bị thay đổi (deface website)
- Đây là trường hợp sau cùng khi mà các yêu tố thay đổi trên không xảy ra, thì việc nội dung, giao diện website bị thay đổi là mục đích mà đa phần các cuộc tấn công đều hướng đến với mục đích truyền tải hết nội dung mà chúng muốn từ việc tấn công
- Deface được định nghĩa là tấn công thay đổi nội dung, thông qua một điểm yếu nào đó, hacker sẽ thay đổi nội dung website của nạn nhân Việc thay đổi nội dung này nhằm một số mục đích:
o Mục đích tốt: cảnh báo quản trị viên biết website đang tồn tại lỗ hỏng bảo mật và điểm yếu nghiêm trọng
o Mục đích cá nhân: chứng tỏ năng lực bản thân, gây sự chú ý đến từ mọi người
o Mục đích xấu: lừa đảo, thù hằn, nội dung thay đổi thường là mục đích lăng mạ nạn nhân hoặc liên quan đến chính trị, tôn giáo…
- Có rất nhiều nguyên nhân bị deface, chủ yếu nhất là website tồn tại điểm yếu bảo mật nghiêm trọng khiến cho hacker có thể upload file lên server (ví dụ: bypass, upload, fckeditor), hoặc có quyền đăng nhập vào trang quản trị website (ví dụ: SQL Injection), thậm chí nếu website an toàn vẫn bị deface nếu như hosting khác cùng tồn tại trên 1 server bị tấn công (local attack).[3]
- Các trường hợp website bị tấn công Deface đa số là do :
o Bảo mật xác thực: đặt mật khẩu quản trị quá yếu (không đủ độ dài ký
tự, không có các ký tự khó: viết hoa, ký tự đặc biệt, ), thiếu cơ chế phòng chống, hacker có thể dễ dàng dò được mật khẩu
o Hay người dùng thường cài đặt các module, plugin, extension, trong các mã nguồn mở hiện nay mà không kiểm tra kỹ thông tin nguồn gốc xác thực độ an toàn
- Thông thường tấn công deface chủ yếu là tập trung vào các trang mặc định như: index.php, index.html, home.html, default.html, trangchu.html…
Như vậy đây là đặc điểm thường xuyên bị tấn công và cần được giám sát, phân tích và đánh giá chặt chẻ nhất
2.1.2 Đưa ra quyết định thay đổi là bị tấn công hay không?
Trang 28- Dựa trên những đặc điểm nhận biết các thay đổi ở mục 2.1.1 trên, vậy thì thay đổi đó là bình thường hay bất thường? Là do người dùng dùng thay đổi hàng ngày hay do hacker thay đổi?
- Như website không hồi đáp là chuyện có thể xảy ra trong một số trường hợp thông thường vì nhiều lý do khác nhau, có thể do người dùng đang tạm dừng để phục vụ nâng cấp server, hoặc do máy chủ DNS không phân giải được tên miền, hay do việc giới hạn lưu lượng truy cập vào máy chủ nên vô tình yêu cầu của bạn không nhận được hồi đáp… Vậy làm sao để phân biệt được khi không nhận được hồi đáp là do website của bạn đang bị tấn công,
đã bị tấn công hay chỉ là do người quản trị website chủ động thực hiện
- IP máy chủ bị thay đổi thì có bị xem là đã bị tấn công? Không thể khẳng định được điều đó, vì người dùng có thể thay đổi nơi đặc dịch vụ hosting nên việc thay đổi IP là bình thường, hay một số hệ thống website có lượng truy cập lớn dẫn đến hạ tầng của họ phải được đầu tư, được phân luồng người dùng cho nên cùng website có thể trỏ đến nhiều IP khác nhau và điều
đó cũng là bình thường
- Đặc biệt là việc điều hướng website được người dùng áp dụng khi truy cập vào website của họ, vì nhiều mục đích có thể tốt hoặc không tốt, nhưng đều
do chủ ý của người dùng thực hiện Cụ thể, một người dùng thông thường
có nhiều tên miền nhưng lại muốn dùng chung mã nguồn, chung hosting để giảm chi phí hay vì lý do gì thì họ hoàn toàn điều hướng các tên miền đó về cùng địa chỉ IP Hay vì muốn thay đổi website, hay quảng cáo hay thay thế một link cũ đã bị xóa… người dùng sẽ thực hiện điều hướng link đó về link mới, về link chứa nội dung cần người dùng hướng đến
- Còn việc website bị lỗi code, như phân tích ở mục 2.1.1 thì đa số là do người dùng tự tạo ra, vì những bất cẩn khi cài đặt mã nguồn cho website, nhưng không có nghĩa là không có hacker nào tấn công làm phát sinh lỗi mã nguồn website bạn Vì những thông báo lỗi có thể phần nào giúp cho hacker
có thể khai thác để xâm nhập sâu hơn vào hệ thống của bạn
- Yếu tố sau cùng đó là các thay đổi trên giao diện, nội dung website là việc hết sức bình thường và đối với thị trường online ngày nay, thay đổi, cải tiến thường xuyên nội dung, giao diện là việc mà rất nhiều người đang làm để
Trang 29khách hàng, đọc giả tiếp cận đến website mình nhiều hơn Chính vì lý do đó
mà các thay đổi trên giao diện là vấn đề rất khó để khẳng định được rằng thay đổi đó là do hacker đã gây ra vì mục đích xấu
Vậy làm thế nào để quyết định được các đặc điểm thay đổi đó là do tấn công chứ không phải do người dùng chủ ý thay đổi?
2.1.3 Cảnh bảo đến người dùng như thế nào?
- Giảm thiểu thiệt hại bằng cách khắc phục sớm vấn đề là điều mà người dùng cần khi website của họ bị tấn công, vì vậy làm thế nào để có thể cảnh báo đến người dùng một cách nhanh nhất có thể
- Đa số các công cụ hiện tại được nếu trên mục 1.2 thì các thông báo chủ yếu được thông báo cho người dùng qua email Thực tế thì việc kiểm tra email
có thực sự hiệu quả và giúp cảnh báo đến với họ một cách nhanh nhất!
- Hay liệu có thể giám sát được website liên tục 24/24 và cảnh báo tức thời khi có bất kỳ phát hiện nào liên quan đến website của họ bị tấn công? Điều kiện cần thiết nhất để người dùng có thể nhận được các cảnh báo là gì?
Vấn đề đặc ra là làm cách nào để người dùng nhận được cảnh báo sớm nhất?
2.2 Đề xuất mô hình giải pháp tổng thể
Dựa trên những phân tích về các vấn đề cần giải quyết, tôi xin đề xuất mô hình giải pháp như sau:
2.2.1 Đề xuất hướng giải quyết các vấn đề?
Phát hiện các thay đổi
- Trước khi thực hiện cảnh báo việc đầu tiên cần xử lý đó là thu thập những thông tin cần thiết để từ đó phân tích và đưa ra quyết định Vậy các dữ liệu cần thu thập đó là:
o Ghi nhận lại thông tin ban đầu hay gọi là cấu trúc giao diện của website: IP, tình trạng website, domain và giao diện của website
o Lưu trữ các thông tin ghi nhận được
o Thông tin trên website sẽ liên tục được cập nhật, sau đó dữ liệu tại thời điểm ghi nhận sẽ được so sánh với dữ liệu đã lưu trữ
Trang 30- Nếu có sự khác biệt sau khi so sánh thì dữ liệu khác nhau đó sẽ được đánh giá phân tích dựa trên những đặc điểm được xác nhận là bị tấn công được ghi nhận trước từ đó đưa ra quyết định về kết quả của sự thay đổi này là gì
Phân tích thay đổi để đưa ra quyết định
- Như vậy trước đó cần phải có cơ chế ghi nhận lại các đặc điểm nào được gọi là do tin tặc gây ra Có nhiều website mà tin tặc sử dụng để đăng chiến tích của mình lên đó, cho nên dựa vào đó tôi có thể thu thập và tổng hợp được các yếu tố nhận diện website bị tấn công
- Tuy nhiên bộ dữ liệu các đặc tính nhận diện ngoài việc tự thu nhập và ghi nhận trong quá trình xử lý thì việc cho phép người dùng thông báo để bổ sung thêm, các bổ sung này sẽ cần được xem xét trước khi thực hiện lưu trữ
Đó là đề xuất tôi đưa ra nhằm cải thiện và mở rộng được các đặc điểm nhận diện tấn công phục vụ cho việc phân tích và đưa ra kết quả
Cảnh báo người dùng
- Sau khi khẳng định được website đã bị tấn công, thông tin sẽ được gửi đến người dùng bằng email kèm theo việc phát triển công nghệ hiện nay đa số người dùng đều có thiết bị smart phone bên cạnh nên việc cảnh báo dễ dàng được người dùng tiếp cận hơn Chính vì thế ứng dụng được cài trên smart phone người dùng sẽ là phương tiện hữu ít nhất để có thể nhận được cảnh báo tức thời Và cảnh báo qua SMS cũng sẽ được ưu tiên để sử dụng trong việc cảnh báo này
- Kể từ khi ra đời cho đến nay, thiết bị di động đã không ngừng phát triển qua nhiều giai đoạn, nhiều cải tiến từ hình thức cho đến chức năng Các thiết bị
di động ban đầu với các chức năng cơ bản phục vụ việc nghe gọi, truyền tin với sự xuất hiện ban đầu là điện thoại di động Các điện thoại di động ra đời
đã dánh dấu sự cải tiến vượt bậc trong việc cải tiến sự giao tiếp giữa con người với con người
- Trên thế giới hiện nay, sự phát triển của các thiết bị di động được thể hiện qua những con số tăng trưởng lớn Dưới đây là thống kê về số lượng người dùng thiết bị di động toàn cầu đến tháng 1 năm 2017
Trang 31Hình 2.3: Thống kế người dùng thiết bị di động (Nguồn: http://wearesocial.com/uk/blog/2017/01/digital-in-2017-global-overview)
- Theo báo cáo trên thì hiện có đến gần 5 tỉ người dùng thiết bị di động trên thế giới và dự báo con số này sẽ còn tăng trong những năm tiếp theo Tại Việt Nam Số lượng người dùng các thiết bị điện thoại di động tính đến quý 3/2016 là 25 triệu người dùng Trong đó có 52% sử dụng các thiệt bị smartphone chạy hệ điều hành Android và 20% sử dụng hệ điều hành iOS
Như vậy việc thông báo đến người dùng qua thiết bị di động là cần thiết
và là cách tiếp cận với người dùng nhanh nhất hiện nay
2.2.2 Mô hình giải pháp
Dựa trên hướng giải pháp trên, tôi đã thực hiện mô tả lại mô hình đề xuất giải pháp để xây dựng nên công cụ nhận diện và cảnh báo website bị tấn công
Trang 32Hình 2.4: Mô hình giải pháp đề xuất
Mô hình chia thành 2 đối tượng chính là người dùng và hệ thống:
- Hệ thống cảnh báo:
o Thực hiện 5 nhiệm vụ xử lý chính:
(1) Thực hiện thu thập thông tin từ website và lưu trữ
(2) Lập lịch để tiến hành kiểm tra phát hiện các thay đổi
(3) Phân tích thay đổi và đưa ra quyết định cảnh báo đến người dùng
(4) Thu thập và lưu trữ đặc điểm cảnh báo
(5) Gửi cảnh báo đến người dùng khi phát hiện tấn công
o Xử lý xác định tấn công sẽ thông qua các bước sau:
(1) Lấy dữ liệu hiện tại của website cần kiểm tra
(2) So khớp dữ liệu mới với dữ liệu được lưu trữ để ghi nhận các thay đổi, nếu có thay đổi sẽ chuyển qua bước (3) và ngược lại thì dừng lại
(3) Tiến hành phân tích đặc điểm thay đổi dựa trên dữ liệu đặc điểm đã lưu trữ để đưa ra quyết định Nếu thay đổi có trong
Trang 33bộ nhận diện đặc điểm thì sẽ chuyển qua bước (4) và ngược lại chuyển qua bước (5)
(4) Thực hiện gửi cảnh báo đến người dùng và chuyển qua bước (5)
(5) Lưu trữ lại kết quả và dữ liệu thu thập mới nhất vào hệ thống để phục vụ đợt kiểm tra tiếp theo
o Ngoài ra người dùng có thể thực hiện phản hồi các thông báo hoặc
bổ sung các đặc điểm nhận diện tấn công cho hệ thống thông qua website hoặc ứng dụng
- Ý tưởng trong hệ thống xử lý được kế thừa dựa trên các nghiên cứu trước
đó, cụ thể:
o Bài báo “Detecting website redesigns via template similarity on streams of documents” kế thừa ý tưởng so sánh để phát hiện ra thay đổi
o Bài báo “Implementing a Web Browser with Web Defacement Detection Techniques” sử dụng việc load dữ liệu source của website để lưu trữ
o Bài báo “An Approach to Reveal Website Defacement” kế thừa
về cách so khớp hình ảnh để phát hiện thay đổi
- Đề xuất ý tưởng mới cho hệ thống xử lý đưa ra kết quả:
o Kiểm tra 4 đặc điểm phụ (IP, Domain, Reques timeout và Error Code) trước khi thực hiện so khớp giao diện
o Thực hiện chụp lại toàn bộ ảnh của website để so khớp phát hiện thay đổi thay vì sử dụng mã bâm để so khớp mã nguồn
o Nếu phát hiện thay đổi sau khi chụp ảnh, tiến hành phân tích nội dung và so khớp với các đặc điểm nhận dạng để đưa ra kết quả cảnh báo
Trang 34o Để cải thiện độ chính xác hệ thống cho phép ghi nhận các phản hồi
từ người dùng hay gọi là tăng tính tương tác với người dùng nhiều hơn để thu thập thêm đặc điểm
o Bổ sung hình thức cảnh báo tức thời đến người dùng thông qua ứng dụng mobile bằng kỹ thuật notification
Trang 35CHƯƠNG 3: HIỆN THỰC HÓA MÔ HÌNH GIẢI PHÁP
Tóm tắt chương:
Trong chương này tôi tiến hành hiện thực hóa mô hình giải pháp được mô tả ở chương
2 bằng việc tìm hiểu và lựa chọn các công nghệ phù hợp Từ đó tôi đề xuất mô hình giải pháp kỹ thuật với việc lựa chọn và tích hợp các công nghệ với nhau để tạo nên một framework có khả năng tương thích với nhiều nền tảng, dễ dàng phát triển độc lập, chỉnh sửa, bổ sung và nâng cấp mở rộng cho sau này Mô hình tập trung xây dựng cho 3 ứng dụng chính đó là phần xử lý trung tâm với công nghệ NET C#, ngôn ngữ php cho ứng dụng website và công nghệ Xamarin cho ứng dụng mobile đa nền tảng
Cả 3 ứng dụng đều được kết nối với dữ liệu thông qua dịch vụ WCF service.