Nghiên cứu tìm hiểu hệ thống bảo vệ trong hệ điều hành linux

22 9 0
Nghiên cứu tìm hiểu hệ thống bảo vệ trong hệ điều hành linux

Đ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

Linux là một phần mềm Hệ điều hành mã nguồn mở đã và đang phát triển rất mạnh mẽ trên thế giới. Nó đã tạo ra một sự bùng nổ trong tin học và ngày càng trở nên phổ biến hiện nay. Các ưu điểm mà hệ điều hành này mang lại là vô cùng to lớn, tuy nhiên ở Việt Nam hệ điều hành này vẫn chưa được nhiều người biết đến và chưa nhiều người sử dụng một cách thành thạo nó như các hệ điều hành khác (Windows là một hệ điều hành rất nổi tiếng mà phần lớn máy tính ở Việt Nam được cài đặt và sử dụng). Kể từ khi Linux được phát triển một cách rộng rãi và nhanh chóng, đặc biệt là trong các giao dịch kinh doanh quan trọng, bảo mật là một vấn đề quyết định sự sống còn của Linux, tìm hiểu những khái niệm cơ bản, những phương pháp đảm bảo an ninh cho hệ thống máy tính sử dụng hệ điều hành này là những nội dung chính mà nhóm chúng em sẽ trình bày trong phần bài tập lớn của nhóm. Để hoàn thành bài tập lớn này chúng em đã tham khảo rất nhiều tài liệu về hệ điều hành Linux trong đó chủ yếu là ở tài liệu (Running Linux, 4th Edition). Vì thời gian làm bài tập lớn của chúng em có phần hơi hạn hẹp do đó kết quả vẫn còn nhiều thiết sót.

Ngun lí hệ điều hành – Nhóm 15 BỘ CƠNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÀI TẬP LỚN MÔN: NGUYÊN LÝ HỆ ĐIỀU HÀNH MÔN : NGUYÊN LÝ HỆ ĐIỀU HÀNH ĐỀ TÀI: Nghiên cứu tìm hiểu hệ thống bảo vệ hệ điều hành Linux Nhóm sinh viên thực : Nhóm 13 Lớp : DH Hệ Thơng Thơng Tin – K6 Giáo viên hướng dẫn : Nguyễn Thanh Hải Năm 2012 Ngun lí hệ điều hành – Nhóm 15 BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN BÀI TẬP LỚN MÔN: NGUYÊN LÝ HỆ ĐIỀU HÀNH ĐỀ TÀI: Nghiên cứu tìm hiểu hệ thống bảo vệ hệ điều hành Linux Nhóm sinh viên thực : Nhóm 13 Nguyễn Đức Đạo Trần Văn Hằng Vương Sỹ Tuấn Lê Văn Cảnh Vũ Xuân Hải Năm 2012 Nguyên lí hệ điều hành – Nhóm 15 LỜI MỞ ĐẦU Linux phần mềm Hệ điều hành mã nguồn mở phát triển mạnh mẽ giới Nó tạo bùng nổ tin học ngày trở nên phổ biến Các ưu điểm mà hệ điều hành mang lại vô to lớn, nhiên Việt Nam hệ điều hành chưa nhiều người biết đến chưa nhiều người sử dụng cách thành thạo hệ điều hành khác (Windows hệ điều hành tiếng mà phần lớn máy tính Việt Nam cài đặt sử dụng) Kể từ Linux phát triển cách rộng rãi nhanh chóng, đặc biệt giao dịch kinh doanh quan trọng, bảo mật vấn đề định sống cịn Linux, tìm hiểu khái niệm bản, phương pháp đảm bảo an ninh cho hệ thống máy tính sử dụng hệ điều hành nội dung mà nhóm chúng em trình bày phần tập lớn nhóm Để hồn thành tập lớn chúng em tham khảo nhiều tài liệu hệ điều hành Linux chủ yếu tài liệu (Running Linux, 4th Edition) Vì thời gian làm tập lớn chúng em có phần hạn hẹp kết cịn nhiều thiết sót Kính mong thầy nhận xét đóng góp ý kiến để nhóm hồn thiện tập Chân thành cảm ơn thầy ! Nguyên lí hệ điều hành – Nhóm 15 Chương I Quan điểm hệ thống bảo mật, kiểu công mạng Quan điểm hệ thống bảo mật Có quan điểm đắn, cơng hệ thống bảo mật khó Phương tiện hướng tới câu chuyện giật gân liên quan tới hệ thống bảo mật, đặc biệt chúng bao gồm công ti viện nghiên cứu nỗi tiếng Mặt khác, quản lí bảo mật thách thức mặt kĩ thuật công việc tốn nhiều thời gian Rất nhiều người dùng Internet giữ cách nhìn hệ thống họ giữ liệu khơng có giá trị, bảo mật không nhiều Số khác nỗ lực thật nhiều để bảo vệ hệ thống họ khỏi việc sử dụng trái phép Dù bạn nằm nhóm bạn nên nhận thức ln có rủi ro, nguy hiểm mà bạn trở thành nạn nhân cơng bảo mật Có nhiều lí do, chẳng hạn thích cơng vào hệ thống bảo mật bạn Giá trị liệu hệ thống bạn số đó, thảo luận khác phần sau Hệ thống bảo mật truyền thống tập trung vào hệ thống truy cập thơng qua thiết bị cuối kết nối console Trong lĩnh vực nguy hiểm lớn cách tiêu biểu đến từ bên tổ chức sở hữu hệ thống, dạng bảo mật tốt bảo vệ mức vật lí, nơi mà console, thiết bị cuối host "phịng" bị khóa Thậm chí hệ thống máy tính khởi động kết nối vào mạng, truy cập hạn chế Các mạng sử dụng thường đắt để truy cập, bị đóng mà khơng cho phép kết nối tới host từ nơi Các kiểu công mạng a) Denial of service (DoS) (Từ chối dịch vụ) Loại công làm giảm phá vỡ dịch vụ hệ thống b) Intrusion (Xâm nhập) Loại công truy cập vào hệ thống cách đoán mật vạch trần dịch vụ (service) Một kẻ xâm nhập truy cập vào hệ thống, chúng Nguyên lí hệ điều hành – Nhóm 15 phá hỏng ăn cắp liệu hay sử dụng hệ thống đích để tiến hành cơng khác host khác c) Snooping (Rình mị) Loại công bao gồm việc chặn liệu người dùng khác nghe ngóng mật thông tin nhạy cảm khác Đôi loại công bao gồm việc sửa đổi liệu Snooping thường bao gồm việc nghe trộm kết nối mạng, thực cách vạch trần hệ thống để chặn thư viện lời gọi hệ thống mà mang thông tin nhạy cảm (thông tin cá nhân, mật hay thông tin tín dụng ) d) Viruses, worms, and Trojan Horses (Virus, sâu Trojan Horses) Những loại công loại dựa vào hành động người sử dụng hệ thống để chạy chương trình cung cấp kẻ cơng Các chương trình nhận thư điện tử, từ website, hay chí vài chương trình nhìn bề ngồi tưởng vơ hại nhận Internet cài vào máy cục Một cách chung, DoS công chủ yếu việc tự tạo số lượng lớn yêu cầu (request) bất thường tới dịch vụ cung cấp hệ thống Sự công ạt hành động làm hệ thống host dốc hết nhớ, sức mạnh tính tốn hay băng thông mạng Và kết quả, yêu cầu xa khác tới hệ thống bị từ chối, làm giảm hiệu suất hệ thống xuống mức khơng thể sử dụng Để cơng thực được, kẻ công phải công dịch vụ thiết kết nghèo nàn có khả tự tạo số lượng yêu cầu (request) vượt khả dịch vụ đáp ứng Một dạng quỉ quyệt công DoS DDoS, từ chối dịch vụ phân tán Trong dạng công này, số lượng lớn máy tính làm nguyên nhân tạo yêu cầu tới dịch vụ Điều làm tăng nguy hại công DoS theo hai hướng: cách chơn vùi đích cơng với lượng lớn yêu cầu, cách ẩn thủ phạm đằng sau hàng ngàn người tham gia khơng có ý thức Bằng việc sử dụng lượng lớn máy chủ từ tiến hành cơng làm cho cơng Ngun lí hệ điều hành – Nhóm 15 DDoS trở nên khó khăn để điều khiển nhiều cứu chữa xảy Thậm chí người mà khơng có liên quan với trạng thái liệu họ nên bảo vệ họ khỏi dạng công này, để giảm thiểu tối đa mức nguy hiểm việc trở thành kẻ tịng phạm khơng có ý thức cơng DDoS chống lại khác Dạng thứ hai công, gọi cracking, dạng mà hầu hết người tiếp xúc vấn đề bảo mật Các công ty tổ chức thường lưu trữ thông tin nhạy cảm họ hệ thống máy tính nối mạng truy cập với Một ví dụ chúng liên quan tới người dùng Internet trung bình lưu trữ thơng tin chi tiết thẻ tín dụng website Nơi mà khuyến khích cá nhân không lương thiện cố truy cập ăn cắp sử dụng sai mục đích, lạm dụng loại thông tin nhạy cảm Đôi biện pháp mà sử dụng để chống lại truy cập bất hợp pháp làm sập dịch vụ tài tình, khéo léo, hợp đạo đức Thiết kế chế xâm nhập thường yêu cầu hiểu biết vững hệ thống đích để khám phá lỗ hổng Thường thường, một chế xâm nhập khám phá ra, đóng gói dạng gọi rootkit, tập hợp chương trình kịch mà sở hữu với chút hiểu biết sử dụng để khai thác lỗ hổng bảo mật Khoảng rộng lớn yếu kẻ xâm nhập chạy "script kiddies" mà sử dụng xâm nhập đóng gói trước mà khơng cần hiểu biết thực tế hệ thống mà chúng công Chúng ta thảo luận cách khác để bảo vệ hệ thống phần Nguyên lí hệ điều hành – Nhóm 15 Chương II Các bước ban đầu để thiết lập hệ thống bảo mật Linux Sử dụng chế độ bảo mật mặc định Kernel Trước tiên ta cần đặt câu hỏi Kernel gì? Khái niệm kernel nói đến phần mềm, ứng dụng mức thấp (low-level) hệ thống, có khả thay đổi linh hoạt để phù hợp với phần cứng Chúng tương tác với tất ứng dụng hoạt động chế độ user mode, cho phép q trình khác – hay cịn gọi server, nhận thông tin từ thành phần khác qua inter-process communication (IPC) Trong Kernel số hệ thống Linux có cấu hình sẵn vài Rules chuẩn với mục đích cung cấp thơng số để cấu hình cho hệ thống dành cho Admin khơng có nhiều kinh nghiệm bảo mật hệ thống Các File thơng số thường chứa /proc/sys Về giao thức IPV4, bên /proc/sys/net/ipv4 cung cấp tính bản: icmp_echo_ignore_all: Vơ hiệu hố tất u phản hồi ICMP ECHO Sử dụng tuỳ chọn bạn khơng muốn hệ thống trả lời u cầu Ping icmp_echo_ignore_broadcasts: Vơ hiệu hố tất yêu cầu phản hồi ICMP ECHO Broadcast Multicast Tuỳ chọn sử dụng để ngăn chặn nguy hệ thống bạn bị lợi dụng khai thác cho công DDOS ip_forward: Cho phép hay không cho phép chuyển tiếp IP giao diện mạng hệ thống bạn Tuỳ chọn sử dụng bạn muốn Server hoạt động Router ip_masq_debug: Kích hoạt hay vơ hiệu hố q trình gỡ lỗi cho IP Masquerading tcp_syncookies: Tuỳ chọn sử dụng để bảo vệ hệ thống bạn chống công sử dụng kỹ thuật ngập SYN gây kinh hoàng thời Internet rp_filter: Chứng thực xác định địa IP nguồn hợp lệ Tuỳ chọn sử dụng để bảo vệ hệ thống bạn chống lại công giả mạo địa IP "IP Spoof" secure_redirects: Chỉ chấp nhận chuyển tiếp thông điệp ICMP cho Gateway tin tưởng danh sách Ngun lí hệ điều hành – Nhóm 15 log_martians: Ghi lại Packet không xử lý bở Kernel accept_source_route: Xác định xem liệu có phải Source Routed Packet chấp nhận hay từ chối Để an toàn bạn lên vơ hiệu hố tính Trong hệ thống Redhat, /etc/sysctl.conf chứa thông tin thiết bị mặc định xử lý khởi động hệ thống, thơng số đọc, điều khiển thực thi /usr/bin/sysctl Nếu bạn muốn vơ hiệu hố tính "ip_foward" đơn giản bạn việc sử dụng lệnh: root@localhost# echo “0” > /proc/sys/net/ipv4/ip_forward Tương tự để kích hoạt tính bạn việc thay giá trị "0" "1"… Ngắt kết nối tới mạng không mong muốn Bước việc bảo mật cho hệ thống Linux ngắt kết nối hay vơ hiệu hóa tất mạng ma dịch vụ mà bạn không cần Một cách bản, cổng mạng mà hệ thống chờ kết nối nguy hiểm, khai thác bảo mật dựa vào mạng ma sử dụng cổng Cách nhanh để tìm cổng mở sử dụng netstat -an, (tuy nhiên bỏ vài dòng): # netstat -an Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0.0.0.0:7120 0.0.0.0:* LISTEN tcp 0 0.0.0.0:6000 0.0.0.0:* LISTEN tcp 0 0.0.0.0:22 0.0.0.0:* LISTEN Ở thấy hệ thống nghe ngóng cho kết nối cổng 7120, 600 22 Nhìn vào /etc/services, sử dụng -p với lệnh netstat, thường tiết lộ mạng ma giao tiếp với cổng Trong trường hợp X font server, X Window System server SSH Nếu bạn nhìn thấy nhiều cổng khác mở - cho thứ telnetd, sendmail tự hỏi bạn xem liệu bạn có thực cần deamons chạy khơng Qua thời gian, vấn đề bảo mật bộc lộ, bạn có nhiều kinh nghiệm việc theo dõi tất cập nhật bảo mật, khơng hệ thống bạn bị tổn thương từ công Bởi vậy, telnetd, ftpd, rshd tất bảo Nguyên lí hệ điều hành – Nhóm 15 gồm gửi mật thông qua mạng Internet cho việc chứng thực, giải pháp tốt sử dụng sshd, mã hóa liệu sử dụng chế chứng thực mạnh Thậm chí bạn chưa bảo sử dụng telnetd để chạy hệ thống bạn ý kiến hay trường hợp cố tìm cách phá vỡ Ngắt dịch vụ thường phải chỉnh sửa file cấu hình tương ứng cho phân phối bạn khởi động lại hệ thống Trên hệ thống Red Hat, ví dụ, nhiều deamons bắt đầu kịch thư mục /etc/rc.d/init.d Đổi tên gỡ bỏ file kịch ngăn chặn deamons tương ứng từ lúc khởi động Những deamon khácđược khởi động inetd xinetd việc trả lời kết nối mạng; sửa cấu hình hệ thống giới hạn tập hợp daemon chạy hệ thống bạn Nếu bạn thực cần dịch vụ chạy máy bạn (chẳng hạn X server), tìm cách để ngăn chặn kết nối tới dịch vụ từ máy chủ khơng mong muốn, chẳng hạn, an toàn phép kết nối ssh từ máy chủ tin tưởng, chẳng hạn từ máy mạng nội bạn Trong trường hợp X server X font server, mà chạy nhiều máy Linux, thường khơng có lí phép kết nối tới daemon từ thứ ngồi mạng cục Lọc kết nối tới daemon thực TCP wrapper IP filtering, mô tả phần sau Vô hiệu hóa Service khơng sử dụng Để tránh tình trạng có lỗ hổng bảo mật sau bạn lên vơ hiệu hố gỡ bỏ chương trình, Service khơng dùng đến hệ thống Bạn sử dụng công cụ quản lý để hiển thị danh sách gói phần mềm cài đặt để thực việc (Redhat Package Manager - Linux ) Về bản! Service định nghĩa hoạt động inetd (trên số hệ thống Linux xinetd) Nội dung Service định nghĩa hoạt động inetd chứa /etc/inetd.conf Mỗi Service định nghĩa đằng sau ký tự "#" Bạn vơ hiệu hố Service khơng sử dụng Thư mục /etc/rc*.d /etc/rc.d/rc* nơi chứa Shell Script thông số để điều khiển thực Network Service suốt thời gian hoạt động Ngun lí hệ điều hành – Nhóm 15 Bạn xố bỏ hết thứ liên quan đến Service mà bạn không cần sử dụng Đối với hệ thống Redhat, SuSE, Mandrake bạn sử dụng lệnh: root@localhost#chkconfig list root@localhost#chkconfig del Để hiển thị Service hoạt động xoá bỏ Service mà bạn muốn Bạn muốn kiểm tra xem Service thực gõ bỏ khỏi hệ thống chưa? /bin/netstat -a -p inet Trên Redhat, SuSE, Mandrake chương trình sử dụng để quản lý gói phần mềm /bin/rpm (Redhat Package Manager) Trên Debian /usr/bin/dpkg (Debian Package ) Dưới số dòng lệnh dùng để quản lý gói phần mềm Dịng đầu rpm dòng thứ hai dpkg: Gỡ bỏ gói phần mềm: root@localhost# rpm -e root@localhost# dpkg -r Liệt kê danh sách gói cài đặt: root@localhost# rpm -qvl root@localhost# dpkg -c Liệt kê danh sách gói cài đặt với thơng tin chi tiết cho gói: root@localhost# rpm -qvia root@localhost# dpkg -l Liệt kê thơng tin xác File gói định: root@localhost# rpm -qvpl root@localhost# dpkg -c Hiển thị thông tin gói phần mềm: root@localhost# rpm -qpi root@localhost# dpkg -I Kiểm tra tính tồn vẹn cho gói phần mềm: root@localhost# rpm -Va root@localhost# debsums -a 10 Ngun lí hệ điều hành – Nhóm 15 Cài đặt gói phần mềm mới: root@localhost# rpm -Uvh root@localhost# dpkg -i Sử dụng TCP Wrapper Trước Server FTP chạy Đầu tiên tcpd xác định địa nguồn cho phép, kết nối gửi đến Syslog để đối chiếu sau Nếu bạn muốn vơ hiệu hố tất Service, bạn việc thêm dòng sau vào File /etc/host.denny ALL:ALL Để gửi E-mail đến nhà quản trị hệ thống thông báo lần kết nối bị thất bại, bạn thêm vào dòng sau: ALL: ALL: /bin/mail \ -s “%s connection attempt from %c” admin@mydom.com Nếu bạn muốn cho phép địa tin cậy chạy dịch vụ mà họ phép, bạn chỉnh sửa nội dung File /etc/host.allow sshd: magneto.mydom.com, juggernaut.mydom.com in.ftpd: 192.168.1 Để đảm bảo an tồn bạn lên kiểm sốt điều khiển q trình truy nhập cách cẩn thận Sử dụng tcpdchk để kiểm tra truy nhập File, sử dụng Syslog để ghi lại lần đăng nhập thất bại Bạn lên điều khiển truy nhập cho hệ thống theo nguyên tắc: Sự truy cập thực Client/Deadmon có địa phù hợp với nội dung cho phép /etc/hosts.allow An toàn cho giao dịch mạng Có nhiều dịch vụ mạng truyền thống giao tiếp thông qua giao thức văn khơng mã hố, TELNET, FTP, RLOGIN, HTTP, POP3 Trong giao dịch người dùng với máy chủ, tất thơng tin dạng gói truyền qua mạng hình thức văn khơng mã hố Các gói tin dễ dàng bị chặn chép điểm đường Việc giải mã gói tin dễ dàng, cho phép lấy thông tin tên người dùng, mật thông tin quan trọng khác Việc sử dụng giao dịch mạng mã hố khiến cho việc giải mã thơng tin 11 Ngun lí hệ điều hành – Nhóm 15 trở nên khó giúp bạn giữ an tồn thơng tin quan trọng Các kỹ thuật thông dụng IPSec, SSL, TLS, SASL PKI Quản trị từ xa tính hấp dẫn hệ thống UNIX Người quản trị mạng dễ dàng truy nhập vào hệ thống từ nơi mạng thông qua giao thức thông dụng telnet, rlogin Một số công cụ quản trị từ xa sử dụng rộng rãi linuxconf, webmin dùng giao thức khơng mã hố Việc thay tất dịch vụ mạng dùng giao thức khơng mã hố giao thức có mã hố khó Tuy nhiên, bạn nên cung cấp việc truy cập dịch vụ truyền thống HTTP/POP3 thông qua SSL, thay dịch vụ telnet, rlogin SSH Chương III Linux Firewall An tồn hệ thống ln ln vấn đề sống cịn mạng máy tính firewall thành phần cốt yếu cho việc đảm bảo an ninh Một firewall tập hợp qui tắc, ứng dụng sách đảm bảo cho người dùng truy cập dịch vụ mạng mạng bên an toàn kẻ cơng từ Internet hay từ mạng khác Có hai loại kiến trúc firewall : Proxy/Application firewall filtering gateway firewall Hầu hết hệ thống firewall đại loại lai (hybrid) hai loại Nhiều công ty nhà cung cấp dịch vụ Internet sử dụng máy chủ Linux Internet gateway Những máy chủ thường phục vụ máy chủ mail, web, ftp, hay dialup Hơn nữa, chúng thường hoạt động firewall, thi hành sách kiểm sốt Internet mạng cơng ty Khả uyển chuyển khiến cho Linux thu hút thay cho hệ điều hành thương mại Tính firewall chuẩn cung cấp sẵn kernel Linux xây dựng từ hai thành phần : ipchains IP Masquerading Linux IP Firewalling Chains chế lọc gói tin IP Những tính IP Chains cho phép cấu hình máy chủ Linux filtering gateway/firewall dễ dàng Một thành phần quan trọng khác kernel IP Masquerading, tính chuyển đổi địa mạng (network address translation- NAT) mà che 12 Ngun lí hệ điều hành – Nhóm 15 giấu địa IP thực mạng bên Để sử dụng ipchains, bạn cần thiết lập tập luật mà qui định kết nối cho phép hay bị cấm Chú ý: Các gói Ipfw(ipfilters/iptable) hệ điều hành BSD cung cấp hoạt động tương tự Ipchains Dùng cơng cụ dị tìm để khảo sát hệ thống Thâm nhập vào hệ thống cần có chuẩn bị Hacker phải xác định máy đích tìm xem port mở trước hệ thống bị xâm phạm Q trình thường thực cơng cụ dị tìm (scanning tool), kỹ thuật để tìm máy đích port mở Dị tìm bước hacker sử dụng trước thực cơng Bằng cách sử dụng cơng cụ dị tìm Nmap, hacker rà khắp mạng để tìm máy đích bị cơng Một xác định máy này, kẻ xâm nhập dị tìm port lắng nghe Nmap sử dụng số kỹ thuật cho phép xác định xác loại máy kiểm tra Bằng cách sử dụng cơng cụ hacker thường dùng, người quản trị hệ thống nhìn vào hệ thống từ góc độ hacker giúp tăng cường tính an tồn hệ thống Có nhiều cơng cụ dị tìm sử dụng như: Nmap, strobe, sscan, SATAN, Nmap Là chữ viết tắt "Network exploration tool and security scanner" Đây chương trình quét hàng đầu với tốc độ cực nhanh cực mạnh Nó quét mạng diện rộng đặc biệt tốt mạng đơn lẻ NMAP giúp bạn xem dịch vụ chạy server (services/ports:webserver,ftpserver,pop3, ), server dùng hệ điều hành gì, loại tường lửa mà server sử dụng, nhiều tính khác Nói chung NMAP hỗ trợ hầu hết kỹ thuật quét : ICMP (ping aweep), IP protocol, Null scan, TCP SYN (half open), NMAP đánh giá công cụ hàng đầu Hacker nhà quản trị mạng giới Quét an toàn Nmap số cơng cụ qt an tồn sử dụng rộng rãi sẵn có Nmap cổng quét mà chống lại nhân tố, cách khác tàn phá đến mạng bạn Nó có 13 Ngun lí hệ điều hành – Nhóm 15 thể phát sinh nhiều kiểu gói mà thăm dị ngăn xếp TCP/IP hệ thống bạn Nmap phát sinh danh sách cổng mở dịch vụ hệ thống bạn,thâm nhập firewalls, cung cấp tin quấy rầy, không tin cậy chạy host bạn Nmap security có sẵn : http://www.insecure.org Tuy nhiên, sử dụng công cụ thay cho người quản trị có kiến thức Bởi việc dị tìm thường dự báo công, site nên ưu tiên cho việc theo dõi chúng Với cơng cụ dị tìm, nhà quản trị hệ thống mạng phát mà hacker thấy dị hệ thống Phát xâm nhập qua mạng Nếu hệ thống bạn có kết nối vào internet, bạn trở thành mục tiêu bị dị tìm lỗ hổng bảo mật Mặc dù hệ thống bạn có ghi nhận điều hay khơng khơng đủ để xác định phát việc dị tìm Một vấn đề cần quan tâm khác công gây ngừng dịch vụ (Denial of Services - DoS), làm để ngăn ngừa, phát đối phó với chúng bạn khơng muốn hệ thống bạn ngưng trệ Hệ thống phát xâm nhập qua mạng (Network Intrusion Detection System NIDS) theo dõi thơng tin truyền mạng phát có hacker cố xâm nhập vào hệ thống (hoặc gây gây vụ cơng DoS) Một ví dụ điển hình hệ thống theo dõi số lượng lớn yêu cầu kết nối TCP đến nhiều port máy đó, phát có thử tác vụ dị tìm TCP port Một NIDS chạy máy cần theo dõi máy độc lập theo dõi tồn thơng tin mạng Các cơng cụ kết hợp để tạo hệ thống phát xâm nhập qua mạng Chẳng hạn dùng tcpwrapper để điều khiển, ghi nhận dịch vụ đăng ký Các chương trình phân tích nhật ký hệ thống, swatch, dùng để xác định tác vụ dị tìm hệ thống Và điều quan trọng cơng cụ phân tích thơng tin mạng để phát công DoS đánh cắp thông tin tcpdump, ethereal, ngrep, NFR (Network Flight Recorder), PortSentry, Sentinel, Snort, 14 Ngun lí hệ điều hành – Nhóm 15 Khi thực hệ thống phát xâm nhập qua mạng bạn cần phải lưu tâm đến hiệu suất hệ thống sách bảo đảm riêng tư Kiểm tra khả bị xâm nhập Kiểm tra khả bị xâm nhập liên quan đến việc xác định xếp lỗ hổng an ninh hệ thống cách dùng số công cụ kiểm tra Nhiều cơng cụ kiểm tra có khả khai thác số lỗ hổng tìm thấy để làm rõ trình thâm nhập trái phép thực Ví dụ, lỗi tràn đệm chương trình phục vụ dịch vụ FTP dẫn đến việc thâm nhập vào hệ thống với quyền „root‟ Nếu người quản trị mạng có kiến thức kiểm tra khả bị xâm nhập trước xảy ra, họ tiến hành tác vụ để nâng cao mức độ an ninh hệ thống mạng Có nhiều cơng cụ mạng mà bạn sử dụng việc kiểm tra khả bị xâm nhập Hầu hết trình kiểm tra dùng cơng cụ tự động phân tích lỗ hổng an ninh Các cơng cụ thăm dị hệ thống để xác định dịch vụ có Thơng tin lấy từ dịch vụ so sánh với sở liệu lỗ hổng an ninh tìm thấy trước Các cơng cụ thường sử dụng để thực kiểm tra loại ISS Scanner, Cybercop, Retina, Nessus, cgiscan, CIS, Kiểm tra khả bị xâm nhập cần thực người có trách nhiệm cách cẩn thận Sự thiếu kiến thức sử dụng sai cách dẫn đến hậu nghiêm trọng lường trước Đối phó hệ thống bị cơng Gần đây, loạt vụ công nhắm vào site công ty lớn Yahoo!, Buy.com, E-Bay, Amazon CNN Interactive gây thiệt hại vô nghiêm trọng Những công dạng công gây ngừng dịch vụ "Denial-OfService" mà thiết kế để làm ngưng hoạt động mạng máy tính hay website cách gửi liên tục với số lượng lớn liệu tới mục tiêu công khiến cho hệ thống bị công bị ngừng hoạt động, điều tương tự hàng trăm người gọi không ngừng tới số điện thoại khiến liên tục bị bận 15 Ngun lí hệ điều hành – Nhóm 15 Trong khơng thể tránh nguy hiểm từ công, khuyên bạn số bước mà bạn nên theo bạn phát hệ thống bạn bị công Chúng đưa số cách để giúp bạn bảo đảm tính hiệu qủa hệ thống an ninh bước bạn nên làm để giảm rủi ro đối phó với công Những bước lên làm hệ thống bị cơng: * Tập hợp nhóm để đối phó với cơng: * Nhóm phải bao gồm nhân viên kinh nghiệm, người mà giúp hình thành kế hoạch hành động đối phó với cơng * Dựa theo sách quy trình thực an ninh cơng ty, sử dụng bước thích hợp thông báo cho người hay tổ chức cơng * Tìm giúp đỡ từ nhà cung cấp dịch vụ Internet quan phụ trách an ninh máy tính: * Liên hệ nhà cung cấp dịch vụ Internet bạn để thông báo cơng Có thể nhà cung cấp dịch vụ Internet bạn chặn đứng công * Liên hệ quan phụ trách an ninh máy tính để thơng báo cơng * Tạm thời dùng phương thức truyền thông khác (chẳng hạn qua điện thoại) trao đổi thông tin để đảm bo kẻ xâm nhập chặn lấy thông tin * Ghi lại tất hoạt động bạn (chẳng hạn gọi điện thoại, thay đổi file, ) * Theo dõi hệ thống quan trọng qúa trình bị cơng phần mềm hay dịch vụ phát xâm nhập (intrusion detection software/services) Điều giúp làm giảm nhẹ công phát dấu hiệu công thực sự quấy rối nhằm đánh lạc hướng ý bạn(chẳng hạn công DoS với dụng ý lãng ý bạn thực công nhằm xâm nhập vào hệ thống bạn) Sao chép lại tất files mà kẻ xâm nhập để lại hay thay đổi (như đoạn mã chương trình, log file, ) * Liên hệ nhà chức trách để báo cáo vụ công Những bước nên làm để giảm rủi ro đối phó với cơng tương lai : * Xây dựng trao quyền cho nhóm đối phó với cơng * Thi hành kiểm tra an ninh đánh giá mức độ rủi ro hệ thống 16 Nguyên lí hệ điều hành – Nhóm 15 * Cài đặt phần mềm an tồn hệ thống phù hợp để giảm bớt rủi ro * Nâng cao khả an tồn máy tí * Các bước kiểm tra để giúp bạn bảo đảm tính hiệu hệ thống an ninh * Kiểm tra hệ thống an ninh cài đặt : chắn tính đắn sách an ninh có cấu hình chuẩn hệ thống * Kiểm tra tự động thường xuyên : để khám phá “viếng thăm” hacker hay hành động sai trái nhân viên công ty * Kiểm tra ngẫu nhiên: để kiểm tra sách an ninh tiêu chuẩn, kiểm tra hữu lỗ hổng phát (chẳng hạn lỗi thông báo từ nhà cung cấp phần mềm) * Kiểm tra đêm file quan trọng: để đánh giá toàn vẹn file sở liệu quan trọng * Kiểm tra tài khoản người dùng: để phát tài khoản không sử dụng, không tồn tại, * Kiểm tra định kỳ để xác định trạng thái hệ thống an ninh bạn 17 Nguyên lí hệ điều hành – Nhóm 15 Chương IV Thiết lập tường lửa Iptables cho Linux Giới thiệu Iptables * Khái niệm: Iptables tường lửa ứng dụng lọc gói liệu mạnh, miễn phí có sẵn Linux Netfiter/iptables gồm phần Netfiter nhân Linux iptables nằm nhân Linux Iptables chịu trách nhiệm giao tiếp người dung Netfiter để đẩy luật người dùng vào cho Netfiter xử lí Netfiter tiến hang lọc gói liệu mức Ip Netfiter làm việc trực tiếp nhân, nhanh không làm giảm tốc độ hệ thống * Cấu trúc Iptables chia làm bảng (table): bảng filter dùng để lọc gói liệu, bảng nat dùng để thao tác với gói liệu NAT nguồn hay NAT đích, bảng mangle dùng để thay đổi thơng số gói IP bảng conntrack dùng để theo dõi kết nối Mỗi table gồm nhiều mắc xích (chain) Chain gồm nhiều luật (rule) để thao tác với gói liệu Rule ACCEPT (chấp nhận gói liệu), DROP (thả gói), REJECT (loại bỏ gói) tham chiếu (reference) đến chain khác Lập cấu hình Iptables cho máy chủ phục vụ web Giả sử máy chủ phục vụ Web kết nối mạng trực tiếp vào Internet qua card mạng eth0, địa IP 1.2.3.4 Bạn cần lập cấu hình tường lửa cho Iptables đáp ứng yêu cầu sau: - Cổng TCP 80 (Web-HTTP) mở cho người truy cập web - Cổng 21 (FTP) mở cho webmaster (dùng để upload file lên public_html) - Cổng 22 (SSH) mở cho admin (cung cấp shell `root` cho admin để nâng cấp & patch lỗi cho server cần) - Cổng UDP 53 (DNS) để phục vụ tên miền (đây ví dụ) 18 Nguyên lí hệ điều hành – Nhóm 15 - Chỉ chấp nhận ICMP PING tới với code=0x08, loại packet lại bị từ chối a) Thiết lập tham số cho nhân echo > /proc/sys/net/ipv4/tcp_syncookies echo 10 > /proc/sys/net/ipv4/tcp_fin_timeout echo 1800 > /proc/sys/net/ipv4/tcp_keepalive_time echo > /proc/sys/net/ipv4/tcp_window_scaling echo > /proc/sys/net/ipv4/tcp_sack echo > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts echo > /proc/sys/net/ipv4/ conf/eth0/accept_source_route tcp_syncookies=1 bật chức chống DoS SYN qua syncookie Linux tcp_fin_timeout=10 đặt thời gian timeout cho q trình đóng kết nối TCP 10 giây tcp_keepalive_time=1800 đặt thời gian giữ kết nối TCP 1800 giây b) Nạp Module cần thiết cho iptable Để sử dụng Iptables, cần phải nạp trước Module cần thiết Ví dụ muốn dùng chức LOG Iptables, phải nạp Module ipt_LOG vào trước lệnh # modprobe ipt_LOG MODULES="ip_tables iptable_filter ipt_LOG ipt_limit ipt_REJECT ipt_state for i in $MODULES; c) Nguyên tắc đặt luật "Drop trước, Accept sau" Đây nguyên tắc mà bạn nên tuân theo Đầu tiên đóng hết cổng, sau mở dần cách cổng cần thiết Cách tránh cho bạn gặp sai sót đặt luật cho Iptables d) Lọc ICMP vào chặn ngập lụt PING LOG Iptables ghi vào file /var/log/firewall.log Bạn phải sửa lại cấu hình cho SYSLOG sau: #vi/etc//etc/syslog.conf/var/log/firewall.log # /etc/rc.d/init.d/syslogd restart Đối với gói ICMP đến, đẩy qua chain CHECK_PINGFLOOD để kiểm tra xem đamg bị ngập lụt PING hay không, sau cho phép gói vào Nếu bị ngập lụt PING, môđun LOG tiến hành ghi nhật kí mức giới hạn limit $LOG_LIMIT limit-burst $LOG_LIMIT_BURST, gói PING ngập lụt bị thả hết 19 Ngun lí hệ điều hành – Nhóm 15 e) Reject quét cổng TCP UDP Ở bạn tạo sẵn chain reject quét cổng, đẩy vào chain INPUT sau Đối với gói TCP, reject gói TCP với cờ SYN=1 cịn gói UDP, reject gói ICMP `port-unreachable` f) Phát quét cổng Nmap Đối với gói TCP đến eth0 mở kết nối khơng đặt SYN=1 chuyển sang chain DETECT_NMAP Đây gói khơng hợp lệ qt cổng nmap kênh ngầm Chain DETECT_NMAP phát hầu hết kiểu quét Nmap tiến hành ghi nhật kí mức limit $LOG_LIMIT -limit-burst $LOG_LIMIT_BURST Ví dụ để kiểm tra quét XMAS, bạn dùng tùy chọn tcp-flags ALL FIN,URG,PSH nghĩa cờ FIN, URG PSH bật, cờ khác bị tắt Các gói qua chain DETECT_NMAP sau bị DROP hết g) Chặn ngập lụt SYN Gói mở TCP với cờ SYN set hợp lệ không ngoại trừ khả gói SYN dùng để ngập lụt Vì vậy, dây bạn đẩy gói SYN cịn lại qua chain CHECK_SYNFLOOD để kiểm tra ngập lụt SYN 20

Ngày đăng: 04/12/2023, 22:30

Tài liệu cùng người dùng

Tài liệu liên quan