Bastion host là những máy mà ở đó, công tác bảo vệnó được cán bộquản trị
mạng đặc biệt quan tâm. Bastion host thường có những đặc điểm sau :
• Internet có thể“nhìn thấy” bastion host. Trong trường hợp bastion host là
cổng ra vào mạng của chúng ta nhưgateway ngoài, tất cảcác kết nối vào hệ
thống máy chủcủa chúng ta đều phải đi qua bastion host và dĩnhiên, tất cả
Internet đều có thểkết nối với máy này.
• Bastion host ít khi được bảo vệbởi thiết bịkhác chống lại các tấn công
thông qua mạng. Trong nhiều trường hợp nhiệm vụbản thân bastion là bảo
vệmáy khác.
• Bastion phải có khảnăng tựbảo vệ. Các quản trịviên phải thiết kếbastion
host sao cho khó có thể“bẻ” khóa đểxâm nhập vào nhất. Đặc biệt, các nguy
cơbịxâm nhập tới quyền root phải giảm xuống tối thiểu.
• Bastion host luôn được giảthiết là bịxâm nhập. Do bastion host là những
lớp phòng thủ đầu tiên, nên nó có nguy cơbịxâm nhập lớn nhất. Trong các
thiết kếfirewall, chúng ta phải luôn đánh giá được mức độthiệt hại cũng
nhưkhảnăng phục hồi bastion host một khi nó bịxâm nhập.
• Hoạt động của bastion host cần được kiểm soát chặt chẽnhất. Các quản trị
viên phải chú ý tới hệthống log, các công cụkiểm tra tính toàn vẹn của hệ
thống tập tin của bastion host đểphát hiện sớm nhất các ý định xâm nhập,
hay việc xâm nhập các máy này.
21 trang |
Chia sẻ: tuandn | Lượt xem: 2462 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Đề tài An toàn và bảo mật hệ thống thông tin - Tập 4: Xây dựng bastion host, dự thảo quy chế sử dụng mạng Đại học quốc gia TP HCM, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 1
ÑAÏI HOÏC QUOÁC GIA THAØNH PHOÁ HOÀ CHÍ MINH
--------------------
ÑEÀ TAØI NGHIEÂN CÖÙU TROÏNG ÑIEÅM CAÁP ÑHQG:
AN TOAØN VAØ BAÛO MAÄT HEÄ THOÁNG THOÂNG TIN
Taäp 4: Xaây döïng bastion host.
Döï thaûo quy cheá söû duïng maïng ÑHQG-HCM
Chuû nhieäm ñeà taøi:
Trònh Ngoïc Minh
Cô quan chuû trì:
Trung taâm Phaùt trieån Coâng ngheä thoâng tin, ÑHQG-HCM
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 2
CÁN BỘ THỰC HIỆN ĐỀ TÀI
Trực tiếp triển khai đề tài:
CN NGÔ THƯ CHÍ
TS TRỊNH NGỌC MINH
ThS LÊ HOÀI NGHĨA
CN THÁI NGUYỄN HOÀNG NHÃ
KS TRẦN CAO TĨNH
KS NGUYỄN ANH TUẤN
Cố vấn kỹ thuật
GS TSKH HOÀNG KIẾM
Tài chính và văn phòng
CN BÙI MỘNG THÚY
CN TRẦN THỊ PHƯƠNG TRANG
Địa chỉ liên lạc:
Trịnh Ngọc Minh
ĐHQG-HCM
Số 3 Công trường quốc tế, Quận 3,
Thành phố Hồ Chí Minh
Tel 823 5834/Fax 825 8627
Email : tnminh@vnuhcm.edu.vn
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 3
I. ỨNG DỤNG CỦA BASTION HOST TRONG MẠNG TIN HỌC
I.1 BASTION HOST LÀ GÌ ?
Bastion host là những máy mà ở đó, công tác bảo vệ nó được cán bộ quản trị
mạng đặc biệt quan tâm. Bastion host thường có những đặc điểm sau :
• Internet có thể “nhìn thấy” bastion host. Trong trường hợp bastion host là
cổng ra vào mạng của chúng ta như gateway ngoài, tất cả các kết nối vào hệ
thống máy chủ của chúng ta đều phải đi qua bastion host và dĩ nhiên, tất cả
Internet đều có thể kết nối với máy này.
• Bastion host ít khi được bảo vệ bởi thiết bị khác chống lại các tấn công
thông qua mạng. Trong nhiều trường hợp nhiệm vụ bản thân bastion là bảo
vệ máy khác.
• Bastion phải có khả năng tự bảo vệ. Các quản trị viên phải thiết kế bastion
host sao cho khó có thể “bẻ” khóa để xâm nhập vào nhất. Đặc biệt, các nguy
cơ bị xâm nhập tới quyền root phải giảm xuống tối thiểu.
• Bastion host luôn được giả thiết là bị xâm nhập. Do bastion host là những
lớp phòng thủ đầu tiên, nên nó có nguy cơ bị xâm nhập lớn nhất. Trong các
thiết kế firewall, chúng ta phải luôn đánh giá được mức độ thiệt hại cũng
như khả năng phục hồi bastion host một khi nó bị xâm nhập.
• Hoạt động của bastion host cần được kiểm soát chặt chẽ nhất. Các quản trị
viên phải chú ý tới hệ thống log, các công cụ kiểm tra tính toàn vẹn của hệ
thống tập tin của bastion host để phát hiện sớm nhất các ý định xâm nhập,
hay việc xâm nhập các máy này.
I.2 SỬ DỤNG BASTION HOST TRONG NHỮNG NHIỆM VỤ NÀO ?
Nếu chúng ta có kết nối Internet và sử dụng dịch vụ của Internet, chắc chắn
chúng ta phải xây dựng các máy chủ công cộng. Đây là các máy chủ mà mọi người
ngoài, kể cả ngay lẫn gian, đều biết sự tồn tại và có thể kết nối với máy tính này.
Chúng ta thường gọi đây là các máy chủ Public.
Trong tất cả các sơ đồ bức tường lửa (ta sẽ gọi là firewall trong báo cáo này)
đều có những điểm thiết yếu (check point) như máy chủ thực hiện gateway trong hoặc
ngoài. Đây là các máy tính hay thiết bị mà kẻ xâm nhập phải “đi qua” khi muốn xâm
nhập hoặc mở rộng xâm nhập vào hệ thống của chúng ta.
Trong môi trường làm việc của các trường đại học, chúng ta cần có những máy
tính lớn để sinh viên có thể làm việc trên đó. Đây là các máy chủ mà khả năng bị xâm
nhập cũng như bị tấn công là rất lớn do số lượng người sử dụng đông và đặc biệt
người sử dụng là các thanh niên có trình độ kỹ thuật cao mà lại chưa chín chắn.
Những máy chủ chứa các cơ sở dữ liệu quan trọng, nhạy cảm là những máy chủ
cần được bảo vệ đặc biệt. Phần cấu hình hệ thống của các máy này cũng quan trọng
như cấu hình cơ sở dữ liệu vì nếu hệ thống bị xâm nhập, dữ liệu có thể bị tải về máy kẻ
xâm nhập hoặc mật khẩu kết nối dữ liệu bị nghe lén.
Chúng tôi cho rằng tất cả các máy chủ ở những vị trí kể trên đều nên được cấu
hình như những bastion host. Cấu hình một cách cẩn thận như vậy có thể làm giảm
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 4
tiện lợi trong quá trình vận hành, nhưng đảm bảo hệ thống hoạt động ổn định, an toàn
và dữ liệu được nguyên vẹn.
Hiện nay, những mạng tin học lớn với kinh phí đầy đủ thường sử dụng các thiết
bị chuyên dụng như Router, Pix Firewall làm gateway ngoài. Đây là mô hình với độ an
toàn cao do khả năng khai thác sơ hở các thiết bị này thấp. Tuy nhiên, những mạng
nhỏ thường sử dụng các máy tính làm các nhiệm vụ này. Khi đó, cấu hình những máy
tính này một cách an toàn là một vấn đề búc xúc đối với các quản trị viên. Trong mọi
trường hợp, các máy chủ dữ liệu luôn là máy chủ cần được thiết kế, cấu hình như các
bastion host.
Mục tiêu của phần tài liệu sau là nêu lên một số phương pháp, kinh nghiệm cấu
hình một máy kiểu bastion host. Quyết định đặt cho bastion host làm nhiệm vụ gì, ở vị
trí nào trong mạng là do quản trị viên quyết định phù hợp với tình hình cụ thể của
mạng tin học do mình phụ trách.
II. CÀI ĐẶT BASTION HOST.
Nội dung của tài liệu này là sự kết hợp giữa các kiến thức được miêu tả trong
cuốn “Building Internet Firewalls” của nhà xuất bản O’Reilly và kinh nghiệm của
chúng tôi trong quá trình nghiên cứu.
II.1 Một số nguyên tắc cần tuân thủ khi xây dựng bastion host.
Đơn giản hóa tối đa. Bastion host càng đơn giản bao nhiêu, chúng ta càng dễ quản lý
bấy nhiêu. Bastion cần có ít account và dịch vụ nhất có thể được. Nhìn chung ta phải
xóa bớt các dịch vụ được cài mặc định.
Ghi lại cấu hình gốc trước khi nối mạng. Quá trình cài máy chủ phải thực hiện trực
tiếp trên bàn phím của máy chủ. Sau khi cài đặt xong, phải lưu ngay signature của hệ
thống tập tin qua tripwire và bảng các system call qua kstat. Các dữ liệu này cần
được lưu lại cẩn thận, tốt nhất là vào CDROM. Máy chủ chỉ được nối vào mạng sau
khi quá trình này hoàn tất.
Luôn sẵn sàng rằng bastion host đã bị xâm nhập. Bastion host phải hoạt động trong
điều kiện rủi ro cao, vì vậy mặc dù ta cố gắng nhiều, bastion vẫn có khả năng cao bị
xâm nhập ở các mức độ khác nhau. Chúng ta cần có các phương án xử lý khi máy chủ
bị xâm nhập. Đặc biệt cần thiết kế sao cho khi bastion bị xâm nhập mà ta chưa phát
hiện ra, khả năng xâm nhập sâu hơn vào hệ thống mạng, các máy chủ khác là ít nhất.
II.2 Lựa chọn phần cứng và hệ điều hành cho bastion host
• Các bastion host thường là các gaetway, các máy chủ dữ liệu hay các máy chủ
phục vụ cho các dịch vụ Internet như DNS, mail, Web … Do đó ta phải chọn
các phần cứng chất lượng cao, có khả năng hoạt động liên tục và ổn định. Máy
bastion host nên có CDROM để dễ dàng cho việc cài đặt hệ thống mới khi cần
thiết.
• Hệ điều hành trên bastion phải là hệ điều hành quen biết đối với các nhân viên
quản trị. Do chúng ta sẽ phải đương đầu với nhiều tình huống trên bastion host,
một hệ điều hành mới lạ hoặc ít quen biết sẽ cản trở công việc rất nhiều. Sau
đây chúng tôi sẽ trình bày phần xây dựng bastion host cho máy chủ Linux.
II.3 CÀI ĐẶT BASTION HOST LINUX
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 5
Chọn phiên bản. Hiện tại khi chúng tôi viết những dòng này, RedHat Linux 7.1 là
phiên bản mới nhất và ít lỗi được công bố nhất. Tuy nhiên chúng ta cũng nên bỏ chút
thời gian và tìm trên Internet những sơ hở có thể có của phiên bản này để có phương
án đề phòng. Ví dụ, với một chút thời gian tìm kiếm qua www.google.com với các từ
khóa như RedHat 7.1, vulnerability, exploit ... chúng tôi đã tìm ra được một số lỗi rất
mới như lỗi cho phép một user thường chiếm quyền root thông qua dịch vụ Samba.
Bằng cách tải về và thử trên máy của mình, chúng tôi thấy thông tin trên là chính xác
và thực sự là nguy hiểm vì một user bất kỳ trên máy có thể trở thành root thông qua
chương trình khai thác lỗi này. Trong trường hợp này, tốt nhất chúng ta không cài
Samba mà phải tìm phiên bản Samba có sửa chữa. Ví dụ như trường hợp cụ thể đối
với Samba của RedHat 7.1, ta có thể tìm thấy phiên bản sửa chữa tại địa chỉ
Trang sau cho thấy
danh sách các phiên bản sửa đổi. Rõ ràng là máy chủ của chúng ta không thể nào an
toàn nếu ta không thực hiện các sửa chữa này.
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 6
Red Hat Linux 7.0 Security Advisories
Date
Name
Synopsis
2001-10-19 openssh-clients (RHSA-2001-114) Updated openssh packages available
2001-10-17 diffutils (RHSA-2001-116) Updated diffutils packages available
2001-10-16 kernel (RHSA-2001-130) New kernel 2.2 packages are available
2001-10-16 squid (RHSA-2001-113) New squid packages available to fix FTP-based DoS
2001-10-09 openssh-clients (RHSA-2001-114) Updated openssh packages available
2001-10-05 samba-client (RHSA-2001-086) New Samba packages available for Red Hat Linux 5.2, 6.2, 7 and 7.1
2001-09-27 squid (RHSA-2001-113) New squid packages available to fix FTP-based DoS
2001-09-07 xinetd (RHSA-2001-109) Updated xinetd package available for Red Hat Linux 7 and 7.1
2001-09-06 man (RHSA-2001-072) Updated man package fixing GID security problems.
2001-09-06 fetchmail (RHSA-2001-103) Updated fetchmail packages available
2001-09-06 sendmail-cf (RHSA-2001-106) New sendmail packages available which fix a local root exploit
2001-08-09 openldap (RHSA-2001-098) Updated OpenLDAP packages available for Red Hat Linux 6.2, 7, and 7.1
2001-08-09 krb5-configs (RHSA-2001-100) Updated Kerberos 5 packages now available
2001-08-09 telnet (RHSA-2001-099) New telnet packages available to fix buffer overflow vulnerabilities
2001-07-19 squid (RHSA-2001-097) New squid packages for Red Hat Linux 7.0
2001-07-18 openssl-devel (RHSA-2001-051) Updated openssl packages available
2001-07-13 procmail (RHSA-2001-093) Updated procmail packages available for Red Hat Linux 5.2, 6.2, 7 and 7.1
2001-07-10 vim (RHSA-2001-008) Updated vim packages available
2001-07-09 xloadimage (RHSA-2001-088) New xloadimage packages available
2001-06-25 samba-client (RHSA-2001-086) New Samba packages available for Red Hat Linux 5.2, 6.2, 7 and 7.1
2001-06-22 XFree86 (RHSA-2001-071) New updated XFree86 packages available
2001-06-11 LPRng (RHSA-2001-077) LPRng fails to drop supplemental group membership
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 7
2001-06-07 gnupg (RHSA-2001-073) Updated GnuPG packages available
2001-05-09 minicom (RHSA-2001-067) Updated minicom packages available
2001-04-23 gftp (RHSA-2001-053) gftp format string vulnerability corrected
2001-04-19 mgetty-sendfax (RHSA-2001-050) Updated mgetty packages available
2001-04-17 kernel 2.2.19 (RHSA-2001-047) Linux kernel 2.2.19 now available, provides security fixes, enhancements
2001-04-16 netscape (RHSA-2001-046) New netscape packages available (Red Hat Linux 7.1 added)
2001-04-08 xntp3 (RHSA-2001-045) Network Time Daemon (ntpd) has potential remote root exploit
2001-04-02 openssh-clients (RHSA-2001-041) Updated openssh packages available
2001-03-23 stunnel (RHSA-2000-137) Updated stunnel packages available for Red Hat Linux 7
2001-03-21 licq (RHSA-2001-022) Updated licq packages fixing security problems available
2001-03-16 rpm-devel (RHSA-2001-016) rpm-4.0.2 for all Red Hat platforms and releases.
2001-03-14 sgml-tools (RHSA-2001-027) Updated sgml-tools packages fix insecure temporary file handling
2001-03-13 slrn (RHSA-2001-028) buffer overflow in slrn
2001-03-13 mutt (RHSA-2001-029) New mutt packages fix IMAP vulnerability/incompatibility
2001-03-02 sudo (RHSA-2001-018) Updated sudo packages fixing buffer overrun available
2001-03-02 joe (RHSA-2001-024) Updated joe packages are available for Red Hat Linux 5.2, 6.x and 7.
2001-02-19 vixie-cron (RHSA-2001-014) New vixie-cron packages available
2001-02-07 xemacs-el (RHSA-2001-010) Updated XEmacs packages available for Red Hat Linux 7
2001-01-29 bind-devel (RHSA-2001-007) Updated bind packages available
2001-01-25 php-manual (RHSA-2000-136) Updated PHP packages available for Red Hat Linux 5.2, 6.x, and 7
2001-01-23 mysql-devel (RHSA-2001-003) Updated mysql packages available for Red Hat Linux 7
2001-01-11 glibc-common (RHSA-2001-001) glibc file read or write access local vulnerability
2000-12-20 stunnel (RHSA-2000-137) Updated stunnel packages available for Red Hat Linux 7
2000-12-19 slocate (RHSA-2000-128) New slocate packages available to fix local group slocate compromise
2000-12-19 rp_pppoe (RHSA-2000-130) Updated rp-pppoe packages fixing denial of service attack are available.
2000-12-06 ed (RHSA-2000-123) stunnel format-string syslog
2000-12-01 tcsh (RHSA-2000-121) Updated tcsh packages are now available for Red Hat Linux.
2000-12-01 PAM (RHSA-2000-120) Updated PAM packages available.
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 8
2000-11-27 bind (RHSA-2000-107) Updated bind packages fixing DoS attack available
2000-11-27 nss_ldap (RHSA-2000-024) Updated nss_ldap packages are now available.
2000-11-27 cyrus_sasl (RHSA-2000-094) Updated cyrus-sasl packages available for Red Hat Linux 7
2000-11-27 apache, php, mod_perl, auth_ldap (RHSA-2000-088) Updated apache, php, mod_perl, and auth_ldap packages available.
2000-11-27 usermode (RHSA-2000-075) Updated usermode packages available
2000-11-27 gnorpm (RHSA-2000-072) Updated gnorpm packages are available for Red Hat Linux 6.1, 6.2, and 7.0
2000-11-27 pine, imap (RHSA-2000-102) Updated pine and imap packages are available for Red Hat Linux 5.2, 6.x and 7
2000-11-27 modutils (RHSA-2000-108) new modutils release addresses more local root compromise possibilities
2000-11-27 Netscape (RHSA-2000-109) New Netscape packages available
2000-11-26 ncurses (RHSA-2000-115) New ncurses packages fixing buffer overrun available
2000-11-26 ghostscript (RHSA-2000-114) ghostscript uses mktemp instead of mkstemp, and uses an improper LD_RUN_P
2000-10-20 gnupg (RHSA-2000-089) Updated gnupg packages available
2000-10-18 iputils (RHSA-2000-087) Potential security problems in ping fixed.
2000-10-09 usermode (RHSA-2000-075) Updated usermode packages available
2000-10-06 esound (RHSA-2000-077) esound contains a race condition
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 9
Các distribution Linux/Sun cũng có những Website chuyên lưu trữ các bản sửa lỗi.
Sau đây là các nhà phân phối quen thuộc đối với giới CNTT của Việtnam:
Debian GNU/Linux
Mandrake Linux
Patches and Security Advisories
Security Configuration Scripts
RedHat Linux
Patches and Security Advisories
Security Configuration Scripts
SuSE Linux
Solaris
Patches ftp://sunsolve1.sun.com/pub/patches/
Cài đặt. Sau khi lựa chọn nhà phân phối, phiên bản của Hệ điều hành và các sử
đổi (patche), chúng ta có thể tiến hành cài đặt. Chúng tôi sẽ đề cập tới cài đặt
RedHat 7.1. Nên sử dụng cài đặt theo chế độ text. Các gói được cài đặt chắc chắn
sẽ phải thay đổi trong quá trình cấu hình máy chủ. Nên cài một số tiện ích mc,
iptables, tcpdump, secure shell. Lưu ý tạo đĩa mềm cho phép khởi động máy chủ
bằng đĩa mềm đề phòng trường hợp khởi động qua ổ cứng có trục trặc.
Hiệu chỉnh. Đây là khâu chính của quá trình cài đặt máy chủ bastion host. Phần
miêu tả sau đây nhằm mục đích cấu hình một máy chủ với các dịch vụ Web, DNS,
Mail, CSDL Oracle.
Rà soát các dịch vụ mạng khởi động trong quá trình boot. Với tiện ích
setup -> system services, ta có thể quyết định các dịch vụ sẽ được khởi động cùng
với máy chủ. Quá trình này cũng có thể thực hiện trực tiếp qua việc xóa bớt các
link đến các script khởi động trong /etc/rc3.d (giả thiết chúng ta sẽ cho máy chủ
hoạt động ở level 3). Ví dụ ta có thể chọn các dịch vụ sau để khởi động: crond,
apmd, gpm, httpd, iptables, named, network, sendmail, sshd, syslog và oracle.
Rà soát các dịch vụ mạng khởi động bởi inetd. Xem xét lại tập tin
/etc/xinetd.conf. Ít nhất cần loại trừ dịch vụ telnet, ftp, POP3 vì đây là các dịch vụ
không sử dụng chức năng mã hóa dữ liệu trênm đường truyền. Nhìn chung ta có
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 10
thể bỏ toàn bộ các dịch vụ kết nối thông qua inetd và không khởi động inetd cùng
với hệ thống như đã miêu tả ở phần trên.
Tạo các nhóm người sử dụng cần thiết. Tạo ra 3 group trong hệ
thống: staff, dbadmin, visitor. Những user nào có quyền quản trị hệ thống
thì sẽ được vào group admin, những user nào quản trị cơ sở dữ liệu sẽ được
vào group dbadmin, những user còn lại sẽ được cho vào group visitor.
Điểm khác biệt cơ bản giữa group admin và các group còn lại là các user
thuộc group admin sẽ có khả năng thi hành nhiều chương trình có setuid
hơn các user thuộc các group còn lại. Các lệnh sau cho phép hình thành 3
nhóm kể trên.
/usr/sbin/groupadd –g 100 admin
/usr/sbin/groupadd –g 200 dbadmin
/usr/sbin/groupadd –g 300 visitor
Hiệu chỉnh khả năng thực hiện các chương trình sở hữu bởi root và có
setuid. Đây là một thao tác rất quan trọng vì khai thác lỗi các chương trình sở
hữu bởi root và có setuid là một phương pháp phổ cập nhất cho phép chiếm quyền
root của máy chủ. Hạn chế được phương thức này, máy chủ có khả năng bị xâm
nhập nhưng không bị khống chế hoàn toàn. Trước tiên, ta tìm tất cả các chương
trình dạng này
find / -perm –4000 –user root –exec ls –l {} ‘;’ 2>/dev/null
-rwsr-xr-x 1 root root 37764 Apr 5 2001 /usr/bin/at
-rws--x--x 2 root root 795092 Mar 24 2001 /usr/bin/suidperl
-rws--x--x 2 root root 795092 Mar 24 2001 /usr/bin/sperl5.6.0
-rwsr-xr-x 1 root root 14332 Feb 6 2001 /usr/bin/rcp
-rwsr-xr-x 1 root root 10844 Feb 6 2001 /usr/bin/rlogin
-rwsr-xr-x 1 root root 7796 Feb 6 2001 /usr/bin/rsh
-rwsr-xr-x 1 root root 34588 Mar 10 2001 /usr/bin/chage
-rwsr-xr-x 1 root root 36228 Mar 10 2001 /usr/bin/gpasswd
-r-s--x--x 1 root root 13536 Jul 12 2000 /usr/bin/passwd
-rws--x--x 1 root root 13048 Apr 8 2001 /usr/bin/chfn
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 11
-rws--x--x 1 root root 12600 Apr 8 2001 /usr/bin/chsh
-rws--x--x 1 root root 5460 Apr 8 2001 /usr/bin/newgrp
-rwsr-xr-x 1 root root 195472 Apr 9 2001 /usr/bin/ssh
-rwsr-xr-x 1 root root 21312 Mar 9 2001 /usr/bin/crontab
-rwsr-xr-x 1 root root 7300 Apr 4 2001 /usr/bin/kcheckpass
---s--x--x 1 root root 81020 Feb 24 2001 /usr/bin/sudo
-rwsr-xr-x 1 root root 18256 Dec 2 2000 /usr/sbin/traceroute
-r-sr-xr-x 1 root root 417828 Mar 3 2001 /usr/sbin/sendmail
-rwsr-xr-x 1 root root 6392 Apr 7 2001 /usr/sbin/usernetctl
-rws--x--x 1 root root 20696 Feb 15 2001 /usr/sbin/userhelper
-rws--x--x 1 root root 6040 Mar 31 2001 /usr/X11R6/bin/Xwrapper
-rwsr-xr-x 1 root root 22620 Jan 16 2001 /bin/ping
-rwsr-xr-x 1 root root 56444 Mar 22 2001 /bin/mount
-rwsr-xr-x 1 root root 24796 Mar 22 2001 /bin/umount
-rwsr-xr-x 1 root root 14112 Jan 16 2001 /bin/su
-r-sr-xr-x 1 root root 14960 Apr 8 2001 /sbin/pwdb_chkpwd
-r-sr-xr-x 1 root root 15448 Apr 8 2001 /sbin/unix_chkpwd
và sau đó chuyển (move) tất cả các chương trình này vào một thư mục riêng, ví dụ
như /suid-bin/. Trong /suid-bin/, ta nên tạo các thư mục con /suid-bin/bin, /suid-
bin/sbin, /suid-bin/usr/bin,/suid-bin/usr/sbin ... và đặt các chương trình setuid từ
/bin vào /suid-bin/bin; /sbin vào /suid-bin/sbin ... cho dễ quản lý. Tại các vị trí gốc
(origine) của chương trình, ta tạo các link symbolic về các vị trí mới của chương
trình. Ví dụ /usr/ping -> /suid-bin/bin/ping. Chú ý rằng sau thao tác này, không
còn một chương trình sở hữu bởi root có setuid lại nằm ngoài thư mục /suid-bin.
Những chương trình setuid cần thiết sẽ được cấu hình để sử dụng một cách hạn
chế bởi root và nhóm admin. Còn một số chương trình khác không hoặc chưa
thực sự cần thiết sẽ bị xóa hoặc bỏ setuid bit. Ví dụ các tiện ích sau là cần thiết :
mount, ping, su, umount, pwdb_chkpwd, unix_chkpwd , at, crontab, passwd ,
sendmail, named, httpd ... Để hạn chế quyền thực thi về nhóm admin, ta cần 2
An toàn và bảo mật hệ thống thông tin
ket qua security tap 4f 12