2.2.7. Một số lệnh của UNIX có thể khai thác để xâm nhập hệ thống
pwd: Hiển thị thƣ mục làm việc hiện tại. Để thay đổi thƣ mục, tƣơng tự nhƣ
với hệ điều hành DOS, có thể dùng lệnh cd [tên thư mục].
/ UserID
DES*/So sánh Chọn
ls: liệt kê các thƣ mục con của thƣ mục ta đang đứng. Để liệt kê các tên file trong một thƣ mục dùng lệnh ls [tên thƣ mục].
ls-l: Hiển thị toàn bộ thƣ mục ở dạng đầy đủ (không gian đĩa sử dụng cho thƣ mục, quyền truy nhập đối với chủ, group, các user khác; thuộc loại file, thƣ mục, block file hay character file, thời gian cập nhật lần cuối, tên thƣ mục hay tên file).
chmod: Với các tham số [who+,-, = r,w,x] lệnh thay đổi quyền đối với một thƣ mục hay một file. Trong đó: who: qui định u - user; g - group; o - những ngƣời dùng khác, a - tất cả. Dấu +: thêm quyền, -: bớt quyền; =: gán.
cat: Đọc nội dung file.
passwd: lệnh để thay đổi mật khẩu. Lệnh này có hiệu lực chỉ khi thời gian của mật khẩu cũ đã đủ để thay đổi.
grep: Các tham số [chuỗi ký tự] [tên file]. Lệnh này tìm file có chứa [chuỗi ký tự].
mv [tên file] [tên thƣ mục]: Đổi tên file hoặc chuyển tới thƣ mục khác.
diff [tên file1] [tên file2]: Chỉ ra sự khác nhau giữa hai file 1 và file 2.
cp [tên file1] [tên file2]: Copy file1 sang tệp file2.
su[tên đăng nhập]: Cho phép chuyển giữa user - superuser - user . Lệnh này sẽ đƣợc giám sát trong /usr/adm/sulog và file này thƣờng đƣợc ngƣời quản trị hệ thống giám sát rất chặt chẽ. Ngƣời quản trị hệ thống sẽ biết rõ ai (userID) đã chuyển sang account sysadm vào lúc nào.
who: Hiển thị các user khác trong hệ thống.
2.2.8. File thông tin ngƣời dùng trong hệ thống (passwd file)
File thông tin ngƣời dùng trong hệ thống hay file mật khẩu đƣợc đặt trong /etc/passwd chứa các tên đăng nhập của mọi ngƣời dùng gồm cả các tài khoản của các superuser và mật khẩu của họ (không phải dạng rõ). Đối với phiên bản mới SVR3 Unix đã tăng cƣờng an ninh bằng cách chuyển tất cả các mã mật khẩu từ file này sang etc/shadow và chỉ cho phép đọc file đó từ root.
Khi dùng lệnh đọc nội dung file này ta sẽ thấy hình dạng file nhƣ sau: root: D943/sys34:0:1:0000:/:
sysadm:kd54doPerate:0:0:administration:usr/admin:/bin/rsh checkfsys:Locked;:0:0:check file system:/usr/admin:/bin/rsh john:chips11,43:34:3:john scezerend:/usr/john:
Các trƣờng đƣợc phân cách bằng dấu ":". Trong một dòng có thể có tới 7 trƣờng, trong dòng sysadm account, các trƣờng có ý nghĩa nhƣ sau:
Nếu biết đƣợc nội dung file nhƣ trên (giả sử rằng mật khẩu ở dạng rõ), ta có thể dùng lệnh su để thay đổi từ user bình thƣờng thành superuser nhƣ sau:
$ su sysadm password:k54doPerate
Mục mật khẩu của tài khoản checksys là Locked, nhƣng đó không phải là mật khẩu mà có nghĩa là tài khoản checksys không thể truy nhập từ xa. Dấu ";" và khoảng trống là một ký tự mã chƣa dùng đến.
Tuổi mật khẩu:
Nếu ngƣời quản trị sử dụng chọn lựa tuổi mật khẩu thì ngƣời dùng bắt buộc phải thay đổi mật khẩu sau một khoảng thời gian định kỳ. Một ngƣời dùng có thể đƣợc chỉ ra khi nào có thể thay đổi mật khẩu, khi nào bắt buộc phải thay đổi mật khẩu bằng cách xem file etc/passwd.
Ví dụ: john:chips11,43:34:3:John Scezerend:/usr/john:
Có nghĩa là john phải thay đổi mật khẩu ít nhất là 4 tuần một lần và giữ mật khẩu tối thiểu trong 3 tuần.
2.2.9. Shadow passwd
Nếu chế độ shadow đƣợc sử dụng, trƣờng mật khẩu sẽ đƣợc thay bằng dấu x. Khi đó file /etc/passwd sẽ có dạng nhƣ sau:
root:x:0:1:0000:/:
sysadm:x:0:0:administration:/usr/admin:/bin/rsh
Mật khẩu tƣơng ứng sẽ đƣợc lƣu ở một tệp khác, thƣờng là File /etc/shadow, chỉ đƣợc cấp quyền đọc cho root (ngƣời quản trị hệ thống). Tệp shadow có dạng sau:
root:D943/sys34:5288:: cathy:masai1:5055:7:120
Trƣờng đầu tiên là userid, trƣờng thứ hai là mật khẩu dạng mã (mật khẩu sẽ là NONE nếu đăng nhập từ xa là không đƣợc phép), trƣờng thứ 3 là mã thông tin chứa
sysadm: kd54doPerate: 0: 0: administration: usr/admin: /bin/rsh
GroupID Thƣ mục gốc Shell sử dụng Tên đăng nhập Mật khẩu UserID Tên thƣờng gọi
thời gian mật khẩu đƣợc thay đổi lần cuối cùng, trƣờng thứ 4 và 5 chứa số ngày tối thiểu và tối đa để thay đổi mật khẩu.
Việc chuyển từ passwd sang shadow là một bƣớc cải tiến gây nhiều khó khăn cho việc tấn công hệ thống. Nếu trƣớc đây, passwd đƣợc cấp quyền truy nhập chỉ đọc cho tất cả mọi ngƣời dùng hợp pháp của hệ thống, thì nay shadow file chỉ đƣợc gán quyền chỉ đọc cho root (ngƣời dùng khởi tạo các biến liên quan đến môi trƣờng làm việc của mọi ngƣời dùng. Nói cách khác là ngƣời xác thực và cấp quyền sử dụng tài nguyên).
2.2.10. Tìm mật khẩu trong UNIX
Bƣớc quan trọng nhất trƣớc khi tìm mật khẩu UNIX là khai thác tập tin /etc/passwd. Một trong những cách thông dụng nhất để lấy tập tin này là dùng giao thức TFTP (Trivial File Transfer Protocol). TFTP thƣờng đƣợc dùng để khởi động các trạm làm việc không đĩa cứng khởi động hoặc các thiết bị mạng chẳng hạn nhƣ các bộ định tuyến và là một giao thức có tính năng bảo mật kém.
Ví dụ: tftp 192.168.202.35
tftp> connect 192.168.202.35
tftp> get/etc/passwd /tmp/passwd.cracklater tftp> quit
Hoặc cũng có thể dùng giao thức FTP (File Transfer Protocol) là một giao thức hết sức phổ dụng ngày nay để tải lên và tải xuống các tập tin từ các hệ thống từ xa. Nhiều hệ phục vụ FTP cho phép truy cập nặc danh, cho phép mọi ngƣời dùng đăng nhập hệ phục vụ FTP không cần thẩm định quyền. Thƣờng thì hệ thống tập tin bị hạn chế vào một nhánh cụ thể trong cây thƣ mục nhƣng cũng có những hệ phục vụ FTP nặc danh cho phép ngƣời dùng xuyên qua cả cấu trúc thƣ mục. Do đó, có thể tải xuống các tập tin cấu hình quan trọng nhƣ /etc/passwd.
Thu thập đƣợc các thông tin ngƣời dùng chính là bƣớc khởi đầu đoán mật khẩu để giành đƣợc quyền truy cập một hệ UNIX. Để truy nhập vào hệ thống, thƣờng ngƣời ta dùng cách đoán từng cặp userid và mật khẩu để giành quyền truy cập tới các dịch vụ phổ dụng nhất nhƣ: Telnet; FTP; các lệnh từ xa (“R” commands) nhƣ rlogin, rsh; Secure Shell (SSH); Post Office Protocol (POP); Hyper Text Transport Protocol (HTTP/HTTPS)
Với tập tin này ta còn có thể đọc đƣợc các ngƣời dùng trực tiếp và mã mật khẩu của họ cùng nhiều thông tin hữu ích khác phục vụ quá trình tìm mật khẩu rõ để truy cập tới các tài nguyên cá nhân của ngƣời dùng.
2.3. Hệ điều hành Sun Solaris 2.3.1. Giới thiệu 2.3.1. Giới thiệu
Môi trƣờng hệ điều hành Solaris là nền tảng của những công ty hàng đầu trên thế giới. Có độ ổn định cao, an toàn và mang tính khả thi, hệ thống Solaris đáp ứng đƣợc nhu cầu hiện tại và bắt kịp những sản phẩm mới trong tƣơng lai.
Trong thế giới mà sự thành công đòi hỏi nhịp độ tăng trƣởng của mạng theo hàm số mũ, hệ điều hành Solaris mang lại khả năng và một trục xƣơng sống xuyên suốt mà bất cứ công ty nào muốn thành công đều cần đến để mở rộng hoạt động kinh doanh. Hệ điều hành Solaris mềm dẻo và đầy sức mạnh sẽ giúp chúng ta làm điều đó. Các khoá học về hệ điều hành Solaris của Sun Microsystems sẽ mang lại cho chúng ta kiến thức và kỹ năng làm việc, tạo nền tảng hiện tại và tƣơng lai của chúng ta trong thế giới của máy chủ Unix chuyên nghiệp, của mạng Intranet/Internet và các dịch vụ định hứơng trên mạng.
Sun nổi tiếng với quan điểm hệ điều hành không phụ thuộc vào ngƣời cung cấp năm 2004, Sun chính thức công bố hệ điều hành mới Solaris 10 đa nền tảng với 600 tính năng mới và đƣợc cung cấp miễn phí hoàn toàn.
Hệ điều hành Solaris 10 đƣợc mong đợi bao lâu nay đã đƣợc Sun Microsystems, Inc. Giới thiệu hôm 15/12/2004 tại Hà Nội. Theo ông Lionel Lim, Phó Chủ tịch kiêm Tổng Giám đốc điều hành Sun Microsystem tại khu vực Nam Á, Solaris 10 sẽ giúp loại bỏ sự lãng phí rất lớn các tài nguyên của hệ thống tính toán của các doanh nghiệp trên toàn cầu do sử dụng những công nghệ không đạt yêu cầu, chƣa đủ tính bảo mật và tạo ra một giai đoạn mới trong tốc độ xử lý và khả năng khai thác tài nguyên của hệ thống tính toán với độ bảo mật ở mức quốc phòng.
Solaris 10 là hệ điều hành Unix nhanh nhất mà Sun đã từng cung cấp, nhanh hơn 40% so với Solaris 9 trong tốc độ xử lý của máy chủ Web trên cả SPARC và x86. Sun có kế hoạch phát triển Solaris 10 trên các hệ thống sử dụng bộ xử lý SPARC, x86, AMD64 và EM64T. Solaris 10 là nền tảng cho các hệ thống từ nhiều nhà cung cấp khác nhau nhƣ Dell, Fujitsu, Fujitsu Siemens Computers, IBM và HP.
2.3.2. Hƣớng nghiên cứu
Cung cấp một tập hợp đầy đủ các chức năng an toàn và mô tả bốn mức bảo vệ trong SolarisTM:
- Mức 1: Bao gồm các tính năng và công cụ giúp những ngƣời quản trị kiểm soát chặt chẽ những ngƣời đăng nhập hệ thống.
- Mức 2: Mô tả các công cụ cho phép những ngƣời quản trị thiết lập giải pháp an toàn tổng thể cho hệ thống.
- Mức 3: Gồm các dịch vụ phân tán an toàn (Secure Distributed Services) và những nền tảng phát triển (Developers Platforms), mô tả cách Solaris hỗ trợ các cơ chế xác thực và mã hoá khác nhau.
- Mức 4: Mô tả các công cụ điều khiển truy nhập tới mạng vật lý.
2.3.3. Nhu cầu cấp thiết đảm bảo an ninh, an toàn
Việc các trung tâm dữ liệu đứng độc lập cùng với các yêu cầu an toàn hoàn toàn tập trung đang giảm đi nhanh chóng trong các môi trƣờng tính toán tập thể hiện đại đã đƣợc nói đến nhiều. Các môi trƣờng phân tán hiệu năng cao và ƣu thế hơn về giá cả, trong đó các hệ thống khách đƣợc tách khỏi các server trên mạng đang không ngừng tăng lên. Thêm vào đó, các mối liên kết giữa các tổ chức thƣơng mại, cá nhân và chính phủ trên toàn thế giới đang mở rộng cộng đồng ngƣời dùng, họ có khả năng truy nhập tới những tài nguyên nội bộ của công ty.
Đồng thời, những ngƣời dùng ngày càng thông thạo và phức tạp hơn. Đáng tiếc, một số ngƣời đã dùng hiểu biết của họ với những mục đích không chính đáng. Mặc dù những hacker nổi tiếng luôn đƣợc đăng tải trên thông tin đại chúng, nhƣng các nghiên cứu cho thấy phần lớn những hành động xâm phạm máy tính không bị phát hiện. Những xu hƣớng này đã làm nảy sinh những thay đổi về căn bản trong các yêu cầu an toàn đối với liên kết toàn cầu.
Không có gì ngạc nhiên khi mà an toàn nổi lên nhƣ là một vấn đề cốt lõi đối với các công ty mong muốn tận dụng những lợi ích trong việc thực thi các hệ thống phân tán toàn cầu, mà không làm nguy hiểm tới tính bí mật và toàn vẹn của thông tin nhạy cảm. Vì thế, những ngƣời quản trị hệ thống và mạng phải có khả năng lựa chọn những sản phẩm đáp ứng đầy đủ các tính năng nhằm vào những nhu cầu an toàn hay thay đổi của họ.
Giải pháp Solaris của Sun đƣa ra một tập các tính năng an toàn hoàn chỉnh đầy đủ phù hợp với các yêu cầu khác nhau của các môi trƣờng tính toán tập thể hiện thời:
• Nó đƣa ra các công cụ tự động đơn giản hoá cấu hình trạng thái an toàn của hệ thống và thông báo những điểm có thể bị mất an toàn.
• Nó cung cấp các dịch vụ file và thƣ mục đƣợc phân phối an toàn và cơ sở
cho việc phát triển các ứng dụng an toàn.
• Nó đáp ứng các chuẩn quan trọng của Mỹ và quốc tế cũng nhƣ các tính năng
an toàn Internet gần đây nhất.
• Cuối cùng, các sản phẩm nhóm thứ ba bổ sung vào cái mà trƣớc đó Sun đã
2.3.4. Solaris: Một giải pháp an toàn
Solaris của Sun bảo vệ chống lại những xâm nhập trái phép bằng một giải pháp an toàn hệ thống và mạng theo nhiều hƣớng. Sơ đồ bảo vệ Solaris bốn mức cho phép những ngƣời giám quản:
• Điều khiển ngƣời có thể đăng nhập vào hệ thống
• Điều khiển khả năng truy nhập tài nguyên hệ thống để tự động ghi chép của
những ngƣời dùng và các chƣơng trình.
• Thực thi các dịch vụ tệp và thƣ mục đƣợc phân phối an toàn và cung cấp những cơ sở cho việc phát triển các ứng dụng và dịch vụ an toàn.
• Điều khiển truy nhập tới mạng vật lý.
Sau đây mô tả chi tiết hơn về bốn hƣớng an toàn Solaris.
2.3.5. Điều khiển đăng nhập trên Solaris (Mức 1)
Mức thứ nhất của điều khiển an toàn Solaris bao gồm các tính năng và công cụ giúp những ngƣời giám quản kiểm soát chặt chẽ những ngƣời có thể đăng nhập vào hệ thống. Trọng tâm của mục tiêu này là việc sử dụng một mật khẩu có thể dùng để kiểm tra định danh của ngƣời đang cố gắng vào mạng. Nói cách khác, nếu ai đó có mật khẩu đƣợc xem là của riêng anh ta, thì nó có thể chứng minh rằng cá nhân đang cố gắng đăng nhập quả thực là "đáng tin cậy" và ngầm hiểu là đã đƣợc cấp "quyền" đăng nhập hệ thống.
Đƣơng nhiên, hệ thống không thể xác định nếu mật khẩu đang bị một ngƣời khác không phải chủ nhân của nó sử dụng. Điều này chỉ ra rằng việc bảo vệ các mật khẩu là cực kỳ quan trọng. Solaris có nhiều tính năng điều khiển việc tạo, sử dụng và lƣu trữ an toàn các mật khẩu. Những tính năng này đƣợc hiểu một cách chung chung là các tính năng quản lý mật khẩu, và chúng bao gồm:
Xác nhận mật khẩu: Solaris so sánh mật khẩu ngƣời dùng cung cấp với mật khẩu đã đặt và lƣu trữ của ngƣời dùng đó trong một file đặc biệt (“Xem file mật khẩu
bóng - Shadow password”). Nếu các mật khẩu tƣơng hợp, thì ngƣời dùng đƣợc phép
vào mạng.
Định thời gian có hiệu lực của mật khẩu: Solaris cho phép ngƣời giám quản đặt ngày hết hạn của các mật khẩu. Solaris sẽ cảnh báo ngƣời dùng mật khẩu sắp hết hạn và yêu cầu đặt một mật khẩu mới. Khi mật khẩu hết hạn, nếu không đặt một mật khẩu mới, thì mọi cố gắng vào mạng sẽ bị từ chối.
Không cho phép mật khẩu cũ: Lâu lâu, một mật khẩu bị lặp lại, có nhiều khả năng ai đó sẽ tìm ra nó. Tính năng này ngăn chặn ngƣời dùng sử dụng lại mật khẩu đã dùng trƣớc đây.
Định tính mật khẩu: Solaris giúp đảm bảo rằng chúng ta sẽ tạo đƣợc một mật khẩu khó phỏng đoán hơn. Nó làm điều này bằng cách kiểm tra xem mật khẩu có đủ số lƣợng ký tự và/hoặc ký hiệu hay không.
Che file mật khẩu: File "ẩn" (đƣợc gọi là /etc./shadow) lƣu tất cả những mật khẩu ngƣời dùng và chỉ có thể đọc từ gốc (root). Trƣớc khi thực hiện che file mật khẩu, những ngƣời hợp pháp khác có thể truy nhập file mật khẩu.
Định thời hạn tài khoản: Điều này cho phép ngƣời giám quản hệ thống đặt ngày hết hạn một tài khoản. Sau ngày hết hạn, tài khoản không còn hiệu lực.
Dòng sản phẩm quản lý an toàn của Sun tạo điều kiện cho các sản phẩm của Solaris có nhiều hạn chế đăng nhập hơn. Một số ví dụ nhƣ sau:
Hạn chế số giờ truy nhập: Điều này nghĩa là những ngƣời dùng nào đó không đƣợc phép vào mạng trong thời gian mà ngƣời giám quản hệ thống đã định trƣớc, ví dụ nửa đêm khi không có ai xung quanh.
Không cho phép vào mạng sau nhiều lần vô hiệu: Điều này ngăn chặn những ngƣời dùng (và chƣơng trình) phỏng đoán mật khẩu bằng việc thử đăng nhập nhiều lần.
Tự động khoá màn hình và ra khỏi mạng: Sau một khoảng thời gian quy định không làm gì, trạm làm việc tự động khoá màn hình hoặc ra khỏi mạng.
Những điều khiển tăng cƣờng đối với đặc quyền root/su: Yêu cầu ai đó cung cấp những mật khẩu đặc biệt để truy nhập những đặc quyền root và superuser.