www.tinhgiac.com chapter121 tài liệu, giáo án, bài giảng , luận văn, luận án, đồ án, bài tập lớn về tất cả các lĩnh vực...
File System Security HỆ THỐNG TẬP TIN CỦA UNIX Đối với hệ điều hành UNIX, khái niệm ổ đóa khác Sau trình khởi động, toàn thư mục tập tin ‘gắn ‘ lên (mount) tạo thành hệ SUN OS File System Sun Microsystems Inc SunOS 5.6 Generic August 1997 $ df -k Filesystem kbytes used avail capacity Mounted on /dev/dsk/c0t0d0s0 192799 131990 41530 77% / /dev/dsk/c0t0d0s6 962983 477544 427661 53% /usr /proc 0 0% /proc fd 0 0% /dev/fd /dev/dsk/c0t0d0s3 289207 115445 144842 45% /var /dev/dsk/c0t0d0s5 465775 28807 390391 7% /opt /dev/dsk/c0t0d0s7 1290127 233611 1004911 19% /other /dev/dsk/c0t0d0s1 311983 203961 76824 73% /usr/openwin swap 418136 120 418016 1% /tmp /dev/dsk/c0t1d0s2 4124422 2359571 1723607 58% /squid $ Linux File System [citd@server citd]$ df -k Filesystem 1024-blocks Used Available Capacity Mounted on /dev/sda1 447044 45006 378948 11% / /dev/sda6 496627 119068 351909 25% /export /dev/sda5 496627 405042 65935 86% /usr /dev/sda7 492657 329963 137249 71% /var [citd@server citd]$ / -+ ! -/bin ! -/sbin ! -/usr -/usr/bin ! ! /usr/sbin ! ! /usr/local ! ! /usr/doc ! ! -/etc ! -/lib ! -/var -/var/adm ! /var/log ! /var/spool TƯƠNG ỨNG GIỮA DISK PARTITIONS VÀ CẤU TRÚC TẬP TIN / /usr / /usr /usr/home /squid /usr/home /mnt /squid CD /mnt/cdrom GIỚI THIỆU CÁC THƯ MỤC QUAN TRỌNG CỦA UNIX / (THƯ MỤC GỐC ) /bin /sbin /usr/bin /usr/sbin /var /var/log /var/adm /home /export/home (SUNOS) Quyền sở hữu tập tin thư mục Unix (directory and file permission and ết lệnh ls -l ownership) -rw-r—r— fido users 163 Dec 14:31 myfile tập tin hay thư mục tạo ra, mang owner ûa người tạo Phần quyền dành cho user, ụ thuộc vào giá trò umask ask quyền truy nhập tậ Ví dụ : [tnminh@pasteur tnminh]$ umask 002 [tnminh@pasteur tnminh]$ echo “tao mot file” > tmp [tnminh@pasteur tnminh]$ ls -l total 5472 -rw-rw-r tnminh tnminh 13 Oct 21:55 tmp [tnminh@pasteur /etc]$ umask 022 [tnminh@pasteur tnminh]$ echo “tao mot file khac”>tmp1 [tnminh@pasteur tnminh]$ ls -l -rw-rw-r tnminh tnminh 13 Oct 21:55 tmp -rw-r r tnminh tnminh 18 Oct 21:59 tmp1 Dạng nhò phân quyền truy nhập tập tin thư mục Quyền truy nhập tập tin chia thành ba nhóm số cho chủ nhân (user), nhóm (group) lại (others) read permission write permission Execute permission Như : or —-: No permissions at all or r—: read-only or -w-: write-only (rare) or —x: execute or rw-: read and write or r-x: read and execute or -wx: write and execute (rare) or rwx: read, write, and execute Thay đổi thuộc tính tập tin thư mục Cách thay đổi tương đối : chmod g+w myfile thêm khả write cho group cuûa myfile chmod o-x myfile bớt khả chạy others myfile Cách thay đổi tuyệt đối : chmod 644 myfile => myfile có quyền rw-r r-Đối với admin, nên dùng cách tuyệt đối an toàn Đối với thư mục, thao tác hoàn toàn tương đương chown cho phép đổi người sở hữu tập tin, Chgrp cho phép đổi nhóm tập tin, ftp (2) • Chép ls vào ~ftp/bin với quyền 111 • Tạo thư mục ~ftp/pub với quyền 577, owner ftp Anonymous connection dùng ftp account • Hiện nay, nếuchúng ta cài đặt wu-ftp, quyền thư mục làm tự động • Ví dụ ftp config RedHat 6.0 • [tnminh@pateur /home]$ ls -l • total • drwxr-xr-x root root • drwxr-xr-x root samba nobody 1024 Mar 21 1999 ftp 1024 Apr 16 1999 ftp (3) • [tnminh@pateur /home]$ ls -l ftp • total • d x x x root root 1024 Nov 02:15 bin • d x x x root root 1024 Nov 02:15 etc • drwxr-xr-x root • dr-xr-sr-x root root ftp 1024 Nov 02:15 lib 1024 Mar 21 1999 pub • [tnminh@pateur /home]$ • [root@pateur etc]# more ~ftp/etc/passwd • root:*:0:0::: • bin:*:1:1::: • operator:*:11:0::: • ftp:*:14:50::: • nobody:*:99:99::: • [root@pateur etc]# ftp (4) : /etc/ftpusers • /etc/ftpusers chứa account không dược nối vào qua ftp, ví dụ root, bin … • Ví dụ /etc/ftpusers Linux Redhat 6.0 • [root@pateur /tmp]# more /etc/ftpusers • root • bin • daemon • adm • lp • sync •shutdown •halt •mail •news •uucp •operator •games •nobody •[root@pateur /tmp]# •Tập tin /etc/shells chứa shells mà user sử dụng bash, sh, ash, bsh tftp • Do tftp không đòi hỏi password, ý vấn đề bảo mật với tftp • Tftp SUNOS trước 4.0 có lỗi cho phép get tập tin, /etc Cần thay version Domain Name System (DNS) • Lỗi DNS DNS server client không kiểm tra xem trả lời mà có từ server mà hỏi hay từ nguồn Server cache thông tin sai lạc sử dụng có câu hỏi • Ví dụ, kẻ xâm nhập nói cho server IP máy họ máy mà bạn tin tưởng (trusted) máy học rlogin không qua password • BIND Version 4.9 có sửa lỗi kể • Trên số OS (ví dụ SUNOS 4.x), trình lookup/double reverse lookup tự động thực Tức DNS tìm IP-> Name Name -> IP kiểm tra IP xem có khớp không Tuy nhiên phương pháp không loại bỏ hoàn toàn lỗi DNS Social Engineering attack • DNS thường cho nhiều thông tin mạng nội tên máy, kiểu máy … Kẻ xâm nhập với thông tin có mạo nhận kỹ thuật viên bảo hành đến yêu cầu coi máy hỏi password • Làm không cho kẻ xâm nhập nhiều thông tin ? Có phương án làm DNS server; đặt firewall có nhiều thông tin DNS thứ hai nằm có số thông tin tối thiểu cho kết nối mạng Hai trường HINFO TXT thường chứa nhiều thông tin hoàn toàn cho nội Real DNS server DNS Client DNS Client P A C K E T F I L T E R Internet Fake DNS server DNS Client Setup fake and real servers • Fake server primary server server cho domain bạn Primary server cần phải có đủ thông tin máy cần nối trực tiếp Internet www, ftp, news … servers Các thông tin phải cho phép làm double reverse lookup ngày phát triển ftp, mail servers phục vụ sau trình double reverse lookup thành công • Real DNS server có chứa forwarders directive trỏ fake server real server slave server Như real server hỏi fake server với address mà • Real server có tất chi tiết mạng nội để trả lời cho DNS client mạng nội mà không người tìm thông tin Ngay DNS client máy có Fake DNS server hỏi vào real server thoâng qua resolv.conf SYSLOG /etc/syslog.conf| The facility is one of the following keywords: auth, auth-priv, cron, daemon, kern, lpr, mail, mark, news, security (same as auth), syslog, user, uucp and local0 through local7 The keyword security should not be used anymore and mark is only for internal use and therefore should not be used in applications Anyway, you may want to specify and redirect these messages here The facility specifies the subsystem that produced the message, i.e all mail programs log with the mail facility (LOG_MAIL) if they log using syslog The priority is one of the following keywords, in ascending order: debug, info, notice, warning, warn (same as warning), err, error (same as err), crit, alert, emerg, panic (same as emerg) The keywords error, warn and panic are deprecated and should not be used anymore The priority defines the severity of the message Nói chung, /var/adm/messages chứa thông tin liên quan tới trình logon Đặc biệt cần phải ý đến phần login root Nên có quy tắc chung login với account thường su cần thiết để biết người sử dụng quyền root Có thể config /etc/syslog.conf để log thông tin qua máy khác SYSLOG (2) /etc/syslog.conf # Log all kernel messages to the console # Logging much else clutters up the screen #kern.* /dev/console # Log anything (except mail) of level info or higher # Don't log private authentication messages! *.info;mail.none;news.none;authpriv.none /var/log/messages # The authpriv file has restricted access authpriv.* /var/log/secure # Log all the mail messages in one place mail.* /var/log/maillog # Everybody gets emergency messages, plus log them on another # machine *.emerg * /etc/syslog.conf # Save mail and news errors of level err and higher in a # special file uucp,news.crit /var/log/spooler # Save boot messages also to boot.log local7.* /var/log/boot.log # # INN # news.=crit /var/log/news/news.crit news.=err /var/log/news/news.err news.notice /var/log/news/news.notice [root@pateur /tmp]# TCPDUMP • tcpdump tiện ích cho phép theo dõi mối nối (connections) Đây công cụ mạnh cho phép bảo trì mạng thông tin, đồng thời theo dõi có toan tính thâm nhập • Một số options thường dùng : Lấy thông tin hình • Bằng số lệnh, người xâm nhập chép nội dung hình người khác • xwd -display victim:0 -root >screen.out • xwud -in screen.out Summary • Xem xét /etc/inetd.conf, bỏ service không cần thiết, bastion host Thay đổi user service thành user "yếu " hơn, ví dụ finger chạy với nobody, • Kiểm tra kỹ cài đặt ftp, thử khả write (upload) anonymous ftp, • Kiểm tra phiên sendmail, /bin/mail, named, finger, tftp, • Cấu hình hệ thông syslog • Theo dõ connection tcpdump chương trình tương đương