1. Trang chủ
  2. » Công Nghệ Thông Tin

CHUYÊN ĐỀ CHUYÊN ĐỀ TIN HỌC TÌM HIỂU AN TOÀN VÀ BẢO MẬT TRÊN HỆ ĐIỀU HÀNH LINUX. TÌM HIỂU CÁC CƠ CHẾ BẢO MẬT TRONG HỆ THỐNG LINUX.

72 31 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 72
Dung lượng 1,66 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

LỜI NÓI ĐẦU Vấn đề Security (hay bảo mật) luôn là một trong các yếu tố phải có độ ưu tiên cao khi phát triển bất cứ một hệ thống máy tính nào. Từng có một câu nói vui cho rằng Một hệ thống máy tính chỉ thực sự an toàn nếu nó được ngắt kết nối với mạng internet, tắt nguồn và chôn sâu 2 mét dưới mặt đất. Nhận định này tất nhiên là hoàn toàn đúng, tuy nhiên chắc chắn không một ai muốn mua một hệ thống máy tính về sử dụng mà lại muốn làm như vậy cả . Thực tế chúng ta luôn không ngừng nghiên cứu và cải thiện các giải pháp hàng ngày, hàng giờ để khiến cho chiếc máy tính của chúng ta vẫn có thể sử dụng, và hạn chế tối đa khả năng truy cập từ bên ngoài. Ngày nay, hầu hết các thiết bị máy tính đều được kết nối với mạng internet hoặc kết nối với nhau qua mạng cục bộ. Mục đích chính của việc này là để chia sẻ thông tin với nhau, nhằm làm tăng sự hiểu biết cho mọi người sử dụng máy tính trên thế giới. Mọi việc sẽ trở nên đơn giản hơn nếu mỗi người chúng ta khi chia sẻ thông tin đều là vì mục đích tốt đẹp. Vậy nhưng thực tế thì không như vậy, thế giới này có 7 tỉ người, mỗi người lại có những suy nghĩ khác nhau, họ có thể chia sẻ bất cứ thứ gì họ muốn, hoặc thậm chí có thể đánh cắp các thông tin không được phép truy cập. Nếu kẻ phá hoại (bao gồm truy cập trái phép thông tin và sử dụng thông tin cho mục đích xấu) không chỉ đơn giản là tấn công 1 vài người nhỏ lẻ, thay vào đó những kẻ này lại hướng mục tiêu tấn công vào các tổ chức, các công ty với lượng thông tin rất lớn, liên quan đến nhiều tổ chức khác thì điều này sẽ gây rất nhiều ảnh hưởng, thiệt hại nghiêm trọng. Chính vì vậy, vấn đề bảo mật luôn không ngừng được nghiên cứu và cải tiến liên tục, và hệ thống bảo mật trên dòng hệ điều hành Linux cũng không ngoại lệ. Nó có sẵn một số biện pháp tăng cường tính bảo mật tuyệt vời và hữu ích. Trân trọng giới thiệu cùng quý vị thầy cô giáo, các bậc phụ huynh và các bạn đọc cùng tham khảo, trải nghiệm tài liệu: CHUYÊN ĐỀ CHUYÊN ĐỀ TIN HỌC TÌM HIỂU AN TOÀN VÀ BẢO MẬT TRÊN HỆ ĐIỀU HÀNH LINUX. TÌM HIỂU CÁC CƠ CHẾ BẢO MẬT TRONG HỆ THỐNG LINUX. Chân trọng cảm

Trang 1

TƯ LIỆU CHUYÊN MÔN TIN HỌC.

Giáo dục học

Trang 2

LỜI NÓI ĐẦU Vấn đề Security (hay bảo mật) luôn là một trong các yếu tố

phải có độ ưu tiên cao khi phát triển bất cứ một hệ thống máy tính nào.Từng có một câu nói vui cho rằng Một hệ thống máy tính chỉ thực sự

an toàn nếu nó được ngắt kết nối với mạng internet, tắt nguồn và chônsâu 2 mét dưới mặt đất Nhận định này tất nhiên là hoàn toàn đúng, tuynhiên chắc chắn không một ai muốn mua một hệ thống máy tính về sửdụng mà lại muốn làm như vậy cả ^^ Thực tế chúng ta luôn khôngngừng nghiên cứu và cải thiện các giải pháp hàng ngày, hàng giờ đểkhiến cho chiếc máy tính của chúng ta vẫn có thể sử dụng, và hạn chếtối đa khả năng truy cập từ bên ngoài Ngày nay, hầu hết các thiết bịmáy tính đều được kết nối với mạng internet hoặc kết nối với nhau quamạng cục bộ Mục đích chính của việc này là để chia sẻ thông tin vớinhau, nhằm làm tăng sự hiểu biết cho mọi người sử dụng máy tính trênthế giới Mọi việc sẽ trở nên đơn giản hơn nếu mỗi người chúng ta khichia sẻ thông tin đều là vì mục đích tốt đẹp Vậy nhưng thực tế thìkhông như vậy, thế giới này có 7 tỉ người, mỗi người lại có những suynghĩ khác nhau, họ có thể chia sẻ bất cứ thứ gì họ muốn, hoặc thậm chí

có thể đánh cắp các thông tin không được phép truy cập Nếu kẻ pháhoại (bao gồm truy cập trái phép thông tin và sử dụng thông tin chomục đích xấu) không chỉ đơn giản là tấn công 1 vài người nhỏ lẻ, thayvào đó những kẻ này lại hướng mục tiêu tấn công vào các tổ chức, cáccông ty với lượng thông tin rất lớn, liên quan đến nhiều tổ chức khácthì điều này sẽ gây rất nhiều ảnh hưởng, thiệt hại nghiêm trọng Chính

vì vậy, vấn đề bảo mật luôn không ngừng được nghiên cứu và cải tiến

Trang 3

liên tục, và hệ thống bảo mật trên dòng hệ điều hành Linux cũng

không ngoại lệ Nó có sẵn một số biện pháp tăng cường tính bảo mậttuyệt vời và hữu ích

Trân trọng giới thiệu cùng quý vị thầy cô giáo, các bậc phụhuynh và các bạn đọc cùng tham khảo, trải nghiệm tài liệu:

CHUYÊN ĐỀ

CHUYÊN ĐỀ TIN HỌC TÌM HIỂU AN TOÀN VÀ BẢO MẬT

TRÊN HỆ ĐIỀU HÀNH LINUX

TÌM HIỂU CÁC CƠ CHẾ BẢO MẬT

TRONG HỆ THỐNG LINUX.

Chân trọng cảm ơn!

Trang 5

1-CHUYÊN ĐỀ TIN HỌC

TÌM HIỂU AN TOÀN VÀ BẢO MẬT TRÊN HỆ ĐIỀU HÀNH LINUX

MỤC LỤC

DANH MỤC HÌNH VẼ 2

DANH MỤC CÁC BẢNG 3

LỜI MỞ ĐẦU 4

CHƯƠNG I: TỔNG QUAN HỆ ĐIỀU HÀNH LINUX 5

I.1 Linux là một hệ điều hành tương tự như hệ điều hành 5

I.2 Những ưu điểm kỹ thuật nổi bật của Linux 5

I.3 Nhược điểm của Linux 7

CHƯƠNG II BẢO VỆ, QUẢN LÝ TÀI NGUYÊN PHÂN QUYỀN TRONG LINUX 9

II.1 Hệ thống ghi nhật ký 9

II.2 Quyền truy nhập như thư mục và file 12

II.3 Một số lệnh thay đổi chế độ truy cập 19

II.4 Một số phần mềm bảo mật khác trên Linux 21

II.4.1 Linux sXid 21

II.4.2 Linux Logcheck 21

II.4.3 Linux Tripwire 2.2.1 22

CHƯƠNG III: AN TOÀN HỆ THỐNG, KERNEL 23

III.1 Người dùng và vấn đề truy cập hệ thống 23

III.1.1 Vấn đề xác thực người dùng 23

III.1.2 Tài khoản Root 25

III.1.3 Các tài khoản đặc biệt 27

III.1.4 Ngăn chặn bất kỳ người sử dụng nào chuyển thành root bằng lệnh "su" 28

III.2 Tăng cường bảo mật cho kernel (LIDS) 29

CHƯƠNG IV AN TOÀN VỚI CÁC GIAO DỊCH TRÊN MẠNG 38

IV.1 Linux Firewall 38

Trang 6

IV.2 Cấu hình tập tin quan trọng 38

IV.2.1 Tập tin "/etc/inetd.conf" 38

IV.2.2 Tập tin "/etc/host.conf" 38

IV.2.3 Tập tin "/etc/services" 39

KẾT LUẬN 41

TÀI LIỆU THAM KHẢO 42

DANH MỤC HÌNH VẼ

Hình 2.1 Cơ chế tổ chức tài nguyên trên Linux

Hình 2.2: Sơ đồ hệ thống file nhật ký

Hình 2.3 : Hình ảnh thể hiện vị trí VFS

Hình 2.4: Diễn tả cơ chế phân quyền của một file

Hình 2.5: 10 ký tự đầu tiên của dãy

Hình 2.6: Chế độ truy cập bit

Hình 2.7: Ký tự đặc biệt đối với lệnh chmod

Hình 4.1: Sơ đồ Netfilter/Iptables

Hình 4.2: Sơ đồ lọc và xử lý gói trong iptables

Hình: 4.3 Đường đi của gói dữ liệu

DANH MỤC CÁC BẢNG

Trang 7

Bảng 1: Các kiểu thư mục trong Linux

Bảng 2: Hệ 8 áp dụng cách tính

Bảng 3: Chế độ truy cập ban đầu (mặc định)

Bảng 4 : Các loại queues và chain cùng chức năng của nó

Trang 8

LỜI MỞ ĐẦU

Ngày nay, nhu cầu trao đổi dữ liệu qua mạng máy tính trở nên

vô cùng quan trọng trong mọi hoạt động xã hội, song song với sự pháttriển bùng nổ của mạng máy tính nói chung và mạng Internet nói riêngthì nguy cơ phải đối mặt với hàng loạt các đe dọa tiềm tàng như virus,sâu máy tính, các kiểu tấn công, xâm nhập, vv…là rất lớn Vấn đề bảođảm an ninh, an toàn cho thông tin trên mạng ngày càng là mối quantâm hàng đầu của các công ty, các tổ chức, các nhà cung cấp dịch vụ.Việc bảo vệ an toàn dữ liệu là một vấn đề cấp thiết, vì vậy việc lựachọn một hệ điều hành phù hợp, có khả năng bảo mật tốt, độ tin cậycao là rất quan trọng Hệ điều hành Linux ra đời mang theo nhiều đặctính an toàn bao hàm các cơ chế bảo mật, cùng với tính chất của một

mã nguồn mở đã được đánh giá là một trong những hệ điều hành bảomật tốt nhất hiện nay Hơn nữa, Linux server là một trong nhữngthách thức lớn đối với tình trạng xâm nhập bất hợp pháp

Mục tiêu của đề tài là nghiên cứu tìm hiểu cơ chế bảo mật trong

hệ điều hành Linux, qua đó thấy được tầm quan trọng của cơ chế khithực hiện các vấn đề bảo mật

Trang 9

CHƯƠNG I: TỔNG QUAN HỆ ĐIỀU HÀNH LINUX

Hệ điều hành Linux là một khái niệm mới được sử dụng cáchđây ít năm khi sử dụng hệ điều hành này thì nhất thiết không thểkhông tìm hiểu một cách tổng quát

I.1 Linux là một hệ điều hành tương tự như hệ điều hành

Phiên bản đầu tiên do Linux Torvalds viết vào năm 1991 khi còn

là sinh viên, đưa ra trên cơ sở cải tiến phiên bản Unix có tên Minix dogiáo sư Andrew S.Tanenbaum xây dựng và phổ biến và nhóm lậptrình viên tình nguyện từ khắp nơi trên Internet viết và đang hoànthiện dần dần Linux

Là hệ điều hành mô phỏng Unix, xây dùng trên nhân kernel vàcác gói phần mềm mã nguồn mở, được công bố dưới bản quyền củaGPL (General Public Licence) Giống như UNIX Linux gồm ba thànhphần chính nhân Kernel, shell và cấu trúc file

I.2 Những ưu điểm kỹ thuật nổi bật của Linux

Linux là một hệ điều hành mã nguồn mở, như vậy chi phí sẽ rẻhơn so với các phần mềm truyền thống, mặt khác rất dễ nâng cấp, cảitiến (do cung cấp mã nguồn kèm theo) Chính vì thế, phát triển phầnmềm mã nguồn mở có thể tận dụng được những công nghệ tiên tiến cósẵn trên thế giới, cải tiến cho phù hợp với người Việt Nam, tiết kiệmđược rất nhiều công sức so với việc phát triển từ đầu, có thể tùy ý sửachữa theo ý mình

Trang 10

Linh hoạt, uyển chuyển

Có thể chỉnh sửa Linux và các ứng dụng trên đó sao cho phù hợpvới mình nhất Việc Việt hóa Windows được xem là không thể nếunhư không có sự đồng ý và hỗ trợ của Microsoft Tuy nhiên với Linuxthì có thể làm được điều này một cách đơn giản hơn Mặt khác, doLinux được một cộng đồng rất lớn những người làm phần mềm cùngphát triển trên các môi trường, hoàn cảnh khác nhau nên tìm mộtphiên bản phù hợp với yêu cầu của riêng mỗi cá nhân sẽ không phải làmột vấn đề quá khó khăn

Bên cạnh Windows đòi hỏi cấu hình cài đặt cao thì tính linh hoạtcủa Linux còn được thể hiện ở chỗ nó tương thích được với rất nhiềumôi trường, và có thể chạy trên nhiều nền tảng Hiện tại, ngoài Linuxdành cho server, máy tính để bàn, nhân Linux (Linux kernel) cònđược nhúng vào các thiết bị điều khiển như máy tính palm, robot Phạm vi ứng dụng của Linux được xem là rất rộng rãi

Độ an toàn cao

Trong Linux có một cơ cấu phân quyền hết sức rõ ràng Chỉ có

"root" (người dùng tối cao) mới có quyền cài đặt và thay đổi hệ thống.Ngoài ra Linux cũng có cơ chế để một người dùng bình thường có thểchuyển tạm thời sang quyền "root" để thực hiện một số thao tác Điềunày giúp cho hệ thống có thể chạy ổn định và tránh phải những sai sótdẫn đến sụp đổ vì hệ thống Trong những phiên bản Windows gầnđây, cơ chế phân quyền này cũng đã bước đầu được áp dụng, nhưng

so với Linux thì vẫn kém chặt chẽ hơn

Trang 11

Ngoài ra chính tính chất "mở" cũng tạo nên sự an toàn củaLinux Nếu như một lỗ hổng nào đó trên Linux được phát hiện thì nó

sẽ được cả cộng đồng mã nguồn mở cùng sửa và thường thì chỉ sau24h sẽ có thể cho ra bản sửa lỗi Trong Linux mọi thứ đều công khai,người quản trị có thể tìm hiểu tới mọi ngõ ngách của hệ điều hành,điều đó cũng có nghĩa là độ an toàn được nâng cao

Thích hợp cho quản trị mạng

Linux có rất nhiều ưu điểm thỏa mãn đòi hỏi của một hệ điềuhành mạng: tính bảo mật cao, chạy ổn định, các cơ chế chia sẻ tàinguyên tốt Giao thức TCP/IP mà ngày nay vẫn thường thấy chính làmột giao thức truyền tin của Linux (sau này mới được đưa vàoWindows)

Chạy thống nhất trên các hệ thống phần cứng

Cho dù có rất nhiều phiên bản Linux được các nhà phân phốikhác nhau ban hành nhưng nhìn chung đều chạy khá ổn định trên mọithiết bị phần cứng từ Intel 486 đến những máy Pentium mới nhất, từnhững máy có dung lượng RAM chỉ 4MB đến những máy có cấu hìnhcực mạnh (tất nhiên là tốc độ sẽ khác nhau nhưng về nguyên tắc vẫn

có thể chạy được) Nguyên nhân là Linux được rất nhiều lập trình viên

ở nhiều môi trường khác nhau cùng phát triển (không như Windowschỉ do Microsoft phát triển) và sẽ gặp nhiều người có "cùng cảnh ngộ"như nhau, như vậy dễ dàng tìm được các driver tương ứng với thiết bịcủa mỗi người

Trang 12

I.3 Nhược điểm của Linux

Đòi hỏi người dùng phải thành thạo

Trước kia việc sử dụng và cấu hình Linux được xem là một côngviệc chỉ dành cho những chuyên gia Hầu như mọi công việc đều thựchiện trên các dòng lệnh và phải cấu hình nhờ sửa trực tiếp các file.Mặc dù trong những phiên bản gần đây, hệ điều hành Linux đã cónhững cải tiến đáng kể, nhưng so với Windows thì tính thân thiện củaLinux vẫn còn là một vấn đề lớn

Tính tiêu chuẩn hóa

Linux được phát hành miễn phí nên bất cứ ai cũng có thể tựmình đóng gói, phân phối theo những cách riêng Hiện tại có khánhiều bản Linux phát triển từ một nhân ban đầu cùng tồn tại như:RedHat, SuSE, Knoppix Người dùng phải tự so sánh xem bản nào làphù hợp với mình Điều này có thể gây khó khăn cho người dùng, nhất

là những người còn có kiến thức về tin học hạn chế

Số lượng các ứng dụng chất lượng cao trên Linux còn hạn chế

Mặc dù Windows có sản phẩm nào thì Linux cũng gần như cóphần mềm tương tự (VD: OpenOffice trên Linux tương tự nhưMSOffice, hay GIMP tương tự như Photoshop, v v ) Tuy nhiên chấtlượng những sản phẩm này là chưa thể so sánh được với các sản phẩmviết cho Windows

Ngoài ra, một số nhà sản xuất phần cứng không có driver hỗ trợLinux

Trang 13

CHƯƠNG II BẢO VỆ, QUẢN LÝ TÀI NGUYÊN PHÂN QUYỀN TRONG LINUX

Linux là hệ điều hành quản lý tài nguyên theo cây thư mục Nó không có khái niệm phân vùng như windows Linux quan niệm đó không tồn tại Linux sắp xếp mọi dữ liệu trong máy tính trên một "cây thư mục duy nhất”

Tài nguyên, ứng dụng trên Linux lưu giữa thiết đặt nội tại trong bản thân nó trên cơ sở phân cấp người dùng Tức là nó sẽ tạo ra nhữngmodul được đặt trong các thư mục có quyền truy cập khác nhau Khi người dùng đăng nhập máy tính ở cấp độ nào thì ứng dụng chỉ truy cập đến modul trong thư mục mà họ có quyền truy cập

Hình 2.1 Cơ chế tổ chức tài nguyên trên Linux

II.1 Hệ thống ghi nhật ký

Khi hệ điều hành bị tắt đột ngột, trong hệ thống file xuất hiệnlỗi do file đang ghi dở, địa chỉ chưa được cập nhập … Nếu hệ thốngfile đang dùng không thuộc loại hệ thống file nhật ký (ext2,…), khíkhởi động lại, hệ điều hành sẽ phát hiện được lần tắt bị lỗi (uncleanshutdown ) trước đó và tự động dùng phần mềm FSCK (file systemcheck) để soát và sửa lỗi Nếu ổ cứng lớn, quá trình chạy FSCK sẽ khálâu và lỗi khá nặng FSCK không sửa được sẽ báo cho hệ điều hànhkhởi động vào chế độ single user mode đẻ người dùng sửa Hệ thống

Trang 14

file nhật ký JFS tránh việc hỏng hệ thống file bằng cách ghi một nhật

ký Nhật ký là một file riêng ghi lại mọi thay đổi của hệ thống file vàomột vùng đệm Sau từng khoảng thời gian định trước, những thay đổi

đó được thực hiện chính thức vào hệ thống file Nếu giữ khoảng thờigian đó, hệ thống bị tắt đột ngột, file nhật ký sẽ dùng để khôi phục lạicác thông tin chưa lưu và tránh làm hỏng metadata của hệ thống file.(Metadata của hệ thống gồm các thông tin về cấu trúc dữ liệu trên ổcứng: ngày giờ tạo, xóa file vào thư mục, tang giảm dung lượng file,chủ nhân của file …)

Tóm lại, hệ thống file nhật ký là hệ thống file tự chữa lỗi bằngcách dùng một file nhật ký lưu lại mọi thay đổi trước khi thay đổi đóđược thực hiện thực sự vào hệ thống file

Hình 2.2: Sơ đồ hệ thống file nhật ký

Hệ thống file ext2

Hệ thống file của Linux có tên là Ext2, được cải tiến từ hệ thốngfile ban đầu của Linux là Ext thừa hưởng từ Minix Hệ thống file

Trang 15

Minix có dung lượng tối đa là 64MB và tên file là 14 ký tự Ext2 hỗtrợ hệ thống file 2GB và file 255 ký tự nhưng lại bị hạn chế về tốc độ.Ext2 hỗ trợ 4TB, tên file 255 ký tự đồng thời khắc phục được nhữngkhuyết điểm trên.

Kiếm trúc Ext2 dùng cấu trúc dữ liệu được gọi là nút định dạng(Inode) để tham chiếu và định vị file cũng như các dữ liệu tương ứng.Bảng Inode chứa các thông tin gồm các loại file Kích thước, quyềntruy cập, cho đến những khỗi dữ liệu liên quan và các thuộc tính khác

Hệ thống file này tổ chức đĩa thành các nhóm khối, trong đó chứa cảthông tin của Inode và các khối dữ liệu tương ứng

Nhân Linux dùng lớp hệ thống file ảo (Virtual File System viếttắt là VFS) để tương tác với hệ thống file và thực hiện các tác vụ xuấtnhập đĩa Điều này mang lại cho Linux khả năng hỗ trợ nhiều hệ thốnfile khác nhau như DOS, FAT16, FAT32…

Hình 2.3 : Hình ảnh thể hiện vị trí VFS

Trang 16

Khi được khởi động hệ điều hành luôn luôn dùng một chươngtrình để kiểm tra tính toàn vẹn của hệ thống file, đó là trình fsck Nếuphát hiện hệ thống file có dấu hiệu bất thường hoặc chưa đượcunmount, do các nguyên nhân như mất điện hoặc hệ thống bị treo độtngột trong khi đang chạy, lúc đó fsck sẽ quét lại toàn bộ hệ thống file

để cố gắng khôi phục lại dữ liệu Quá trình kiểm tra và khôi phục lại

dữ liệu (nếu có) nhanh hay chậm phụ thuộc vào dung lượng của ổcứng, và với những hệ thống có dung lượng lưu trữ rất lớn như hiệnnay (từ hàng chục đến hàng trăm gigabyte) thì phải mất hàng giờ đểquét lại toàn bộ hệ thống ổ cứng Cách làm này được áp dụng trên các

hệ thống file Unix chuẩn ufs (Sun & HP) hoặc ext2 mà Linux đang sửdụng Nếu hệ thống file có khả năng ghi lại (log) được các hoạt động

mà hệ điều hành đã và đang thao tác trên dữ liệu thì hệ thống xác địnhđược ngay những file bị sự cố mà không cần phải quét lại toàn bộ hệthống file, giúp quá trình phục hồi dữ liệu trở nên tin cậy và nhanhchóng hơn Hệ thống file như vậy được gọi là journaling file system

Cách thức journaling file system

- Ghi nhận các lần cập nhật trên file system thành các thao tác(transaction)

- Mọi transaction đều phải được ghi nhận trong log file

- Một transaction được coi là hoàn tất (commit) đã được ghinhận đầy đủ trong log file (lúc này file system có thể chưađược cập nhật)

- Khi file system được cập nhật với đầy đủ mọi tác vụ trongtransaction thì transaction được xóa đi trong log file

Trang 17

- Nếu file system bị hỏng thì hệ điều hành dựavào cáctransaction trong log file đểsửa chữa và khôi phục.

Hệ thống file ext3 chính là kiểu hệ thống file của Linux có sửdụng JSF được phát triển từ hệ thống fil ext2

II.2 Quyền truy nhập như thư mục và file

Mỗi file và thư mục trong Linux đều có một chủ sở hữu và mộtnhóm sở hữu, cũng như một tập hợp các quyền truy nhập Cho phépthay đổi các quyền truy nhập và quyền sở hữu file và thư mục nhằmcung cấp truy nhập nhiều hơn hay ít hơn Tính chất kiểm soát truy cập

hệ thống file Linux được thực hiện bằng cách sử dụng bộ dữ liệu,được bảo tồn riêng cho từng file này là dữ liệu chung gọi các chế độtruy cập, hoặc gọi là các mod của file Các chế độ là một phần của file,giữ lại những thông tin trong các hệ thống file đó Một file của chế độkiểm soát truy cập có ba lớp:

Users : những người dùng sở hữufile

Group : những nhóm sở hữu file

Other : tất cả những người dùng trên hệ thống

Thông tin về một file có dạng sau (được hiện ra theo lệnh hiệndanh sách file ls -l):

Trang 18

Hình 2.4: Diễn tả cơ chế phân quyền của một file

Trong đó, dãy 10 ký tự đầu tiên mô tả kiểu file và quyền truynhập đối với file đó Theo mặc định, người dùng tạo một file chính làngười chủ (sở hữu) của file đó và là người có quyền sở hữu nó Ngườichủ của file có đặc quyền thay đổi quyền truy nhập hay quyền sở hữuđối với file đó Tất nhiên, một khiđó chuyển quyền sở hữu của mìnhcho ngườidùng khácthì người chủ cũ không được phép chuyển quyền

sở hữu và quyền truy nhập được nữa

Tập hợp một chuỗi có 10 ký tự đó giới thiệu trên đây được chia

ra làm 4 phần: kiểu file, các quyền truy nhập đến file của chủ sở hữu,của nhóm sở hữu và người dùng khác

Có một số kiểu file trong Linux Ký tự đầu tiên trong tập hợp 10

ký tự mô tả kiểu file và quyền truy nhập sẽ cho biết file thuộc kiểu nào(chữ cái đó được gọi là chữ cái biểu diễn) Bảng dưới đây sẽ liệt kêcác kiểu file, thư mục trong Linux:

Chữ cái biểu diễn Kiểu file ,thư mục

Trang 19

d Thư mục (directory)

b File liểu khối (block- type special

file)

c File ký tự ( charater-type special file)

l Liên kết tượng trưng(symbolic link)

p File đường ống (pipe)

- File bình thường (regular file)

Bảng 1: Các kiểu thư mục trong Linux

Chín ký tự tiếp theo trong chuỗi là quyền truy nhập được chia ralàm ba nhóm tương ứng với quyền truy nhập của người sử hữu, nhóm

sở hữu và người dùng khác

Hình 2.5: 10 ký tự đầu tiên của dãy

Trang 20

Để hiểu được chính xác quyền truy nhập có ý nghĩa như thế nàođối với hệ thống máy tính phải chú ý, Linux luôn coi mọi thứ là file.Nếu cài đặt một ứng dụng, nó cũng sẽ được xem như mọi chươngtrình khác, trừ một điều, hệ thống nhận biết rằng một ứng dụng là mộtchương trình khả thi, tức là nó có thể chạyđược Một bức thư gửi làmột dạng file văn bản bình thường, nhưng nếu thông báo cho hệ thốngbiết đó là một chương trình khả thi, hệ thống sẽ cố để chạy chươngtrình (và tất nhiên là lỗi)

Có ba loại quyền truy nhập chính đối với thư mục/file, đó là: đọc(read - r), ghi (write - w) và thực hiện (execute - x) Quyền đọc chophép người dùng có thể xem nội dung của file với rất nhiều chươngtrình khác nhau, nhưng họ sẽ không thể thay đổi, sửa chữa hoặc xóabất kỳ thông tin nào trong đó Tuy nhiên, họ có thể sao chép file đóthành file của họ và sửa chữa file bản sao

Quyền ghi là quyền truy nhập tiếp theo Người sử dụng vớiquyền ghi khi truy nhập vào file có thể thêm thông tin vào file Nếu cóquyền ghi và quyền đọc đối với một file, có thể soạn thảo lại file đó -quyền đọc cho phép xem nội dung, và quyền ghi cho phép thay đổinội dung file Nếu chỉ có quyền ghi, sẽ thêm được thông tin vàofile,nhưng lại không thể xem được nội dung của file

Loại quyền truy nhập thứ ba là quyền thực hiện, quyền này chophép người dùng có thể chạy được file, nếu đó là một chương trìnhkhả thi Quyền thực hiện độc lập với các quyền truy nhập khác, vì thếhoàn toàn có thể có một chương trình với quyền đọc và quyền thựchiện, nhưng không có quyền ghi Cũng có trường hợp một

Trang 21

chươngtrình chỉ có quyền thực hiện, có nghĩa là người dùng có thểchạy ứng dụng, nhưng không thể xem được cách nó làm việc hay saochép nó

Thông thường, chủ sở hữu là người tạo ra file này Các file củanhóm này thường được thiết lập để tạo sự mặc định của nhóm Nhóm

có quyền sở hữu cho biết quyền cho các nhóm thành viên Nhữngngười khác sử dụng là những người không phải là thành viên của cácfile của nhóm và không phải là file của người được trao quyền Đốivới mỗi một lớp trong ba lớp của người sử dụng, các chế độ truy cậpxác định ba loại quyền khác nhau áp dụng cho các file và thư mục

Chế độ truy cập

Ba quyền đọc, ghi, thực thi cho phép áp dụng cho ba lớp khác nhaucủa người sử dụng: người sử dụng, nhóm, và khác Đọc, viết, và thựcthi sự cho phép được hiển thị trong hình:

Trang 22

bộ nhớ sau khi hoàn tất chươngtrình đang chạy.

Chín bit còn lại giới hạn quyền truy cập cho các đối tượng đó làngười sở hữu, nhóm sở hữu, và người dùng và nhóm khác theo thứ tựlần lượt ba bít một cho từng nhóm

Trang 23

Sự hạn chế trường hợp về quyền truy nhập thư mục được giảithích Giả sử chỉ có quyền đọc trên thư mục, khi đó sẽ xem được cónhững file hay thư mục nào trong thư mục nhưng lại không thể xem

cụ thể nội dung của một file hay thư mục có trên thư mục đó vì khôngtìm được nó Hoặc giả sử có quyền thực hiện - quyền này sẽ cho phéptìm được file có trên thư mục - nhưng lại không có quyền đọc đối vớimột thư mục, vậy thì khó có thể để biết được trong thư mục có nhữngfile nào

Có thể tính quyền của thư mục hay file bằng cách quy đổi ra hệbát phân:

Bảng 2: Hệ 8 áp dụng cách tính

Mặc định, khi tạo thư mục hoặc file, hệ thống sẽ tự gán quyềnban như sau khi người chưa thay đổi quyền truy cập cho thư mục hoặcfile đó:

Trang 24

Bảng 3: Chế độ truy cập ban đầu (mặc định)

II.3 Một số lệnh thay đổi chế độ truy cập

Thay đổi quyền sở hữu file với lệnh chown

Để thay đổi quyền sở hữu đối với một file, hãy sử dụng lệnhchown với có pháp như sau:

chown [tuy chon][chon][nhom] <file >

Lệnh này cho phép thay chủ sở hữu file Nếu chỉ có tham số vềchủ, thì người dùng ch sẽ có quyền sở hữu file và nhóm sở hữu khôngthay đổi

Nếu theo sau tên người chủ là dấu "." và tên của một nhóm thìnhóm đó sẽ nhóm sở hữu file Nếu chỉ có dấu "." và nhóm mà không

có tên người chủ thì chỉ có quyền sở hữu nhóm của file thay đổi, lúcnày, lệnh chown có tác dụng giống như lệnh chgrp

Thay đổi quyền sở hữu nhóm với lệnh chgrp

Các file (và người dùng) cũng thuộc vào các nhóm, đây làphương thức truy nhập file thuận tiện cho nhiều người dùng nhưngkhông phải tất cả người dùng trên hệ thống Khi đăng nhập, mặc định

sẽ là thành viên của một nhóm được root thiết lập tạo tài khoản ngườidùng Cho phép một người dùng thuộc nhiều nhóm khác nhau, nhưngmỗi lần đăng nhập chỉ là thành viên của một nhóm Để thay đổi quyền

sở hữu nhóm đối với một hoặc nhiều file, hãy sử dụng lệnh chgrp với

có pháp như sau: chgrp [tùy-chọn] {nhóm| reference=nhómR}

<file >

Trang 25

Lệnh này cho phép thay thuộc tính nhóm sở hữu của file theo tênnhóm được chỉ ra trực tiếp theo tham số nhóm hoặc gián tiếp quathuộc tính nhóm của file có tên là nhóm R.

Thay đổi quyền truy cập file với lệnh chmod

Chế độ truy cập có thể được thay đổi với chmod lệnh, tươngđương chế độ truy cập tượng trưng hoặc truy cập vào chế độ kỹ thuậtchi tiết

Hình 2.7: Ký tự đặc biệt đối với lệnh chmod

II.4 Một số phần mềm bảo mật khác trên Linux

II.4.1 Linux sXid

Các thuộc tính SUID/SGID có thể trở thành một mối nguy chovấn đề bảo mật và an toàn của hệ thống Để giảm các rủi ro này, trướcđây đã xóa các bit từ các chương trình được sở hữu bởi root mà sẽkhông yêu cầu nhiều quyền sử dụng, nhưng tương lai các file tồn tạikhác có thể cài đặt với bit được bật lên khi không có sự thông báo củangười quản trị SXid là một chương trình theo dõi hệ thống suid/sgidđược thiết kế chạy từ cron trên một nguyên lý cơ bản Cơ bản là theo

Trang 26

dõi bất kỳ sự thay đổi nào trong các thư mục và các file SUID vàSGID Nếu có bất kỳ một điều gì mới trong các thư mục hay file, cácthư mục và file này sẽ thay đổi bit hoặc các mode khác sau đó sẽ tựđộng thực hiện việc tìm kiếm tất cả suid/sgid trên máy server và thôngbáo về chúng

II.4.2 Linux Logcheck

Một công việc quan trọng trong thế giới bảo mật và an toàn làphải kiểm tra thường xuyên các file xuất ra các kết quả theo dõi hệthống (logfile) Thông thường các hoạt động hằng ngày của ngườiquản trị hệ thống không cho phép người dùng có thời gian để thựchiện những công việc này và có thể mang đến nhiều vấn đề Giải thíchtính chất log check Kiểm tra theo dõi và ghi nhận các sự kiện xảy rathì rất quan trọng Đó là những người quản trị của hệ thống nhận biếtđược các sự kiện này do vậy có thể ngăn chặn các vấn đề chắc chắnxảy ra nếu có một hệ thống kết nối với internet Thật không may chohầu hết logfile là không có ai kiểm tra var log đó, mà thường đượckiểm tra khi có sự kiện nào đó xảy ra Điều này logcheck sẽ giúp đỡ

và giải quyết tất cả các vấn đề trên

II.4.3 Linux Tripwire 2.2.1

Một tiến trình cài đặc Red Hat Linux Server tiêu biểu xử lýkhoảng 30.400 file Vào thời điểm các nhà quản trị hệ thống không thểkiểm tra tính toàn vẹn của tất cả các file, và nếu một kẻ tấn công nào

đó truy cập máy server, thì họ có thể cài đặt hay hiệu chỉnh các file mà

Trang 27

không dễ nhận biết những điều này Do khả năng của sự cố trên màmột số các chương trình được tạo ra để đáp ứng loại vấn đề này

Tripwire làm việc ở tầng cơ bản nhất, bảo vệ các máy server vàcác máy trạm làm việc mà chúng được cấu thành mạng hợp nhất.Tripwite làm việc bằng cách trước tiên là quét một máy tính và tạomột cơ sở dữ liệu của các file của hệ thống, một dạng số hoá

“snapshot” của hệ thống trong hệ thống bảo mật đó biết Người sửdụng có thể cấu hình Tripwire một cách rất chính xác, chỉ trừ file vàthư mục sở hữu riêng cho mỗi máy để theo dõi, hay tạo một dạng mẫuchuẩn mà có thể sử dụng trên tất cả các máy trong mạng

Một khi cơ sở dữ liệu tạo ra, một người quản trị hệ thống có thểdùng Triwire để kiểm tra toàn vẹn của hệ thống ở bất kỳ thời điểmnào Bằng cách quét một hệ thống hiện hành và so sánh thông tin với

dữ liệu lưu trữ trong sở dữ liệu, Triwire phát hiện và báo cáo bất kỳviệc thêm vào, xoá bớt, hay thay đổi tới hệ thống bên ngoài các ranhgiới bên ngoài được chỉ định Nếu việc thay đổi là hợp lệ thì quản trị

hệ thống có thể cập nhật cơ sở dữ liệu biến với thông tin mới Nếu cácthay đổi cố tình làm hại được tìm thấy, thì người quản trị hệ thống sẽbiết ngay các phần nào của các thành phần của mạng đó bị ảnh hưởng.Phiên bản Tripwire này là một sản phẩm có các phần được cải tiếnđáng kể so với phiên bản Tripwire trước đó

CHƯƠNG III: AN TOÀN HỆ THỐNG, KERNEL

Trang 28

III.1 Người dùng và vấn đề truy cập hệ thống

Linux quản lý quyền người dùng rất chặt chẽ Ở Windows userbình thường (và các chương trình) thường có quyền làm bất cứ điều gìtới hệ thống Nếu người dùng muốn phá luôn hệ điều hành vì dữ liệuquý giá của bạn vừa bị virus "ngốn" mất, bạn có thể vào thư mục của

hệ thống và xoá bất cứ thứ gì bạn thích: Windows sẽ không phàn nàn.Tất nhiên, lần tới khởi động bạn sẽ gặp nhiều vấn đề Nhưng hãy nghĩrằng nếu bạn có thể xoá mọi thứ bạn muốn: các chương trình kháccũng xoá được, hoặc làm hệ thống rối tung lên Linux không cho phépđiều này Mỗi lần một người dùng muốn làm gì đó ảnh hưởng tới hệđiều hành, bạn phải có mật khẩu của nhà quản trị (nếu bạn không phảinhà quản trị hệ thống, bạn không thể làm được) Virus cũng không thể

tự do xoá mọi thứ trong máy vì chúng không có quyền

Mỗi user trong Linux đều chỉ được cấp quyền trên hệ thống ởmột mức độ tối giản nhất, chỉ được truy cập một số thư mục cũng nhưmột số tiền trình của user đó

III.1.1 Vấn đề xác thực người dùng

Trong Linux, file /etc/passwd là file lưu thông tin user của hệthống, khi ta tạo một user mới thì linux sẽ add thêm 1 bản ghi mới vàofile này Bạn dùng lệnh để show quyền truy cập file này thì thấy filenày có 1 đặc điểm là tất cả người dùng trong hệ thống đều có thể đọcđược (‘r’)

[root@localhost ~]# ll /etc/passwd

-rw-r r 1 root root 1373 Apr 1 13:50 /etc/passwd

Trang 29

Điều này khá nhạy cảm vì thông tin user sẽ bị phơi bày trước bất

kỳ user nào trong hệ thống Tuy nhiên thuộc tính ‘r’ là cần thiết vì một

số ứng dụng và tool hệ thống cần đọc file này thì mới chạy chính xác

Nếu để password lưu trữ trong /etc/passwd thì cũng rất nguyhiểm, mặc dù có thể mã hóa mật khẩu bằng 1 thuật toán băm (Vì tất cảuser trong hệ thống đều đọc được)

Vì vậy, cần lưu trữ password người dùng trong 1 file mà chỉ

‘root’ mới đọc được Giải pháp mà Linux đưa ra là bổ xung 1 file tên

là /etc/shadow để lưu trữ mật khẩu người dùng File /etc/shadow nàychỉ truy cập được bởi ‘root’

Bây giờ, thử xem nội dung file /etc/shadow

[root@localhost ~]# cat /etc/shadow

mario:

$1$0XJ4dcSP$wpBqBzQSmIppMPEjeYP8K/:16161:0:99999:7:::

1 Trường đầu tiên, đó chính là username mario

2 Trường thứ 2 đó là trường password đã được mã

hóa $1$0XJ4dcSP$wpBqBzQSmIppMPEjeYP8K/ Đây chính xác là

trường tôi cần quan tâm và cần khai thác ở bài post này

Nội dung password đã được mã hóa

$1$0XJ4dcSP$wpBqBzQSmIppMPEjeYP8K/ có ý nghĩa:

Trường đầu tiên, cho biết thuật toán sử dụng để băm(trong ví dụnày là 1 – MD5 hashing algorithm)

Trang 30

$1 = MD5 hashing algorithm.

$2 = Blowfish Algorithm is in use

$2a = eksblowfish Algorithm

$5 = SHA-256 Algorithm

$6 = SHA-512 Algorithm

Trường thứ 2 là một chuỗi dữ liệu ngẫu nhiên(random data haycòn gọi là salt) được sinh ra để kết hợp với mật khẩu người dùng(user

password), để tăng sức mạnh băm(trong ví dụ này là 0XJ4dcSP)

Trường thứ 3 là giá trị băm của salt + user password(trong ví dụ

này là wpBqBzQSmIppMPEjeYP8K/)

Khi bạn login vào hệ thống, bạn nhập user/password Hệ thống

sẽ sử dụng giá trị salt của user + password mà bạn nhập vào để tạo ra

1 chuỗi mã hóa Nếu chuỗi mã hóa này trùng với chuỗi mã hóa trongfile /etc/shadow thì user login thành công

Như vậy, Linux khác hoàn toàn với windows về giao thức xácthực người dùng Trong windows sử dụng cơ chế xác thực LM-LANMANAGER (password là 14 kí tự chuẩn, sử dụng DES hash) được sửdụng trong bản windows server 2003 trở về trước Sau đó là các cơchế xác thực cho nhiều kí tự trong password hơn như NTLM – NTLAN MANAGER, NTLMv1 AUTHENTICATION (sử dụng thuậttoán băm MESSAGE DIGEST MD4), NTLMv2AUTHENTICATION (sử dụng thuật toán băm MD5)

Trang 31

Đồng thời windows chứa mật khẩu bởi các Registry cùng vớitoàn bộ thông tin ứng dụng, thiết đặt chức năng, thông tin thiết bị…Trong khi Linux không có Registry và được lưu ở các thư mục/etc/passwd và /etc/shadow.

III.1.2 Tài khoản Root

Tài khoản root là được gán quyền nhiều nhất trên một hệ thống.Tài khoản "root" không có một hạn chế bảo mật nào Điều này cónghĩa là hệ thống cho rằng ta biết những gì ta đang làm, và sẽ thựchiện chính xác những gì ta yêu cầu - không có câu hỏi nào được đặt ra

về những điều đó Chính vì vậy, nó rất rễ dàng với một câu lệnh nhậpsai có thể sẽ xóa sạch tất cả các tập tin hệ thống Vì vậy khi sử dụngtài khoản này ta phải tuyệt đối cẩn thận tránh những lỗi lầm đáng tiếc

Để phục vụ cho các lý do bảo mật không cần phải log-in vào máyserver của ta như là "root" Hơn nữa, nếu ta không có làm việc trênmọi server của ta, thì đừng nên vào và ra khỏi hệ thống như là "root"-điều này là rất dở

Mặc dù được lưu ý là không nên vào hệ thống với account là

"root" và logout khi không làm việc trên mọi server, tuy nhiên vẫn cónhững người quản trị hệ thống vẫn còn lưu lại màn hình login như

"root" hay quên ra khỏi hệ thống (logout) sau khi kết thúc công việccủa họ hoặc rời khỏi các máy trạm không cùng với tài khoản nào Đểgiải quyết vấn đề này ta tạo một bash shell tự động logout sau khikhông được dùng trong một khoảng thời gian Để thực hiện điều đó, taphải đặc biến đặc biệt của Linux được đặt tên là "TMOUT" tới thời

Trang 32

gian tính bằng giây không có thao tác nào được nhập vào trước khilogout.

Chỉnh sửa tập tin profile của ta "vi /etc/profile" và thêm dòngsau vào một nơi nào đó bên dưới dòng chứa "HISTFILESIZE=" trongtập tin này:

TMOUT=7200

Giá trị mà chúng ta nhập vào cho biến "TMOUT=" là được tínhbằng giây và biểu thị 2 giờ (60*60=3600*2=7200 giây) Điều quantrọng là hãy ghi chú rằng nếu ta quyết định đặt dòng trên vào trong tậptin "/etc/profile", khi đó việc tự động logout sau 2 giờ nếu không cócác hành động nào sẽ được áp dụng cho tất cả mọi người sử dụng trên

hệ thống Nếu ta thích điều khiển việc tự động logout chỉ cho một user

cụ thể nào đó ta có thể đặt biến này trong tập tin riêng ".bashrc" củahọ

Sau khi tham số này đã được đặt lại trên hệ thống, ta phải logout

và login lại lần nữa (như root) cho việc thay đổi có tác dụng

III.1.3 Các tài khoản đặc biệt

Có một điều quan trọng là cần vô hiệu hóa tất cả các tài khoảnmặc định của nhà sản xuất mà không dùng trong hệ thống (một số tàikhoản tồn tại mặc nhiên ngay cả khi không cài đặt các dịch vụ liênquan trên mọi server) Việc này nên được kiểm tra sau mỗi lần nângcấp hay cài đặt phần mềm mới Linux cung cấp các tài khoản này chocác hoạt động hệ thống khác nhau, cụ thể không cần nếu các dịch vụkhông được cài đặt trên hệ thống server Nếu không cần các tài khoản

Trang 33

nào, thì xóa chúng Ta có càng nhiều tài khoản thì việc truy cập hệthống sẽ dễ dàng hơn Một số các các người dùng không sử dụng trên

hệ thống như: adm, Ip, sync, news, uucp… Và các groups như: dip,adm, Ip, sync, news, uucp…

Bit không thay đổi có thể được dùng để ngăn chặn việc xóa ngẫunhiên hay ghi chồng lên một tập tin cần được bảo vệ Nó cũng ngănchặn một ai đó tạo một biểu tượng liên kết tới tập tin này, mà nó lànguồn tấn công xoay quanh việc xóa "/etc/passwd", "/etc/group" hay

"/etc/gshadow"

Để đặt bit không thay đổi trên các mật khẩu và các nhóm tập tin(/etc/shadow, /etc/passwd, /etc/group….) , dùng lệnh sau:

[root@localhost /[# chattr +i [tên-file]

Ghi chú: Trong tương lai, nếu có ý định thêm hay xóa các người

sử dụng, tập tin passwd, các nhóm người sử dụng, hay các tập tingroup, thì phải gỡ bỏ bit không làm thay đổi trên tất cả các tập tin đó,nếu không sẽ không thể thay đổi được gì Nếu như ta cũng có dự địnhcài đặt một chương trình RPM sẽ tự động thêm một người sử dụngmới vào các tập tin passwd hay group đã đặt bit không thay đổi, ta sẽnhận được một thông điệp lỗi suốt quá trình cài đặt, khi không gỡ bỏbit không làm thay đổi từ các tập tin đó

III.1.4 Ngăn chặn bất kỳ người sử dụng nào chuyển thành root bằng lệnh "su"

Lệnh su cho phép trở thành những người sử dụng tồn tại trên hệthống, Ví dụ có thể trở thành "root" tạm thời và thi hành các lệnh như

Trang 34

một super-user "root" Nếu không muốn bất kỳ ai chuyển thành roothay hạn chế "su" với một số người sử dụng nào đó, ta thêm vào haidòng như sau vào đầu tập tin cấu hình "su" trong thư mục

"/etc/pam.d" Nên giới hạn những người được phép chạy lệnh "su" đểthành tài khoản root

Soạn thảo tập tin su (vi /etc/pam.d/su) và thêm vào hai dòng sauvào phía trên đầu tập tin:

auth sufficient /lib/security/pam_rootok.so debug

auth required /lib/security/pam_wheel.so group=wheel

Có nghĩa là chỉ có những người sử dụng là thành viên của nhóm

"wheel" có thể dùng lệnh su chuyển thành root; nó cũng bao gồmlogging Chú ý rằng nhóm "wheel" là một tài khoản đặc biệt trên hệthống mà cũng có thể được dùng cho mục đích này Mánh khóe nàyđược kết hợp với việc chỉ rõ các thiết bị TTY nào mà root được phéplogin vào sẽ cải tiến rất nhiều việc bảo mật trên hệ thống

III.2 Tăng cường bảo mật cho kernel (LIDS)

Mặc dù thừa hưởng những đặc tính của hệ thống UNIX và khá

an ninh hơn một số hệ điều hành khác, hệ thống GNU/Linux hiện nayvẫn tồn tại những nhược điểm sau:

Quyền của user ‘root’ có thể bị lạm dụng User ‘root’ có thể dễdàng thay đổi bất kỳ điều gì trên hệ thống

Nhiều file hệ thống có thể dễ dàng bị sửa đổi Nhiều file hệthống quan trọng như /bin/login có thể bị sửa đổi bởi hacker để cho

Trang 35

phép đăng nhập không cần mật khẩu Nhưng những file loại này lạihiếm khi nào thay đổi trừ phi khi nâng cấp hệ thống

Các module có thể được dùng để chặn kernel “Loadable KernelModule” là một thiết kế tốt để tăng cường tính uyển chuyển, linh hoạtcho kernel Nhưng sau khi một module được nạp vào kernel, nó sẽ trởthành một phần của kernel và có thể hoạt động như kernel nguyênthủy Vì vậy, các chưng trình mục đích xấu có thể được viết dạngmodule và nạp vào kernel, rồi sau đó hoạt động như một virus

Các process không được bảo vệ Các process như web server cóthể trở thành mục tiêu bị tấn công của hacker sau khi thâm nhập hệthống

Để cải thiện tính an ninh cho các server Linux, chúng ta cần cómột kernel an toàn hơn Điều này có thể thực hiện được bằng cách sửađổi kernel nguyên thuỷ bằng các ‘patch’ tăng cường tính an ninh cho

hệ thống Các patch này có các tính năng chính yếu sau:

Bảo vệ – bảo vệ các file hệ thống quan trọng khỏi sự thay đổingay cả với user root Bảo vệ các process quan trọng khỏi bị ngừngbởi lệnh ‘kill’ Chặn các tác vụ truy cập IO mức thấp (RAW IO) củacác chương trình không được phép

Phát hiện – Phát hiện và cảnh báo với người quản trị khi server

bị scan Cũng như khi có các tác vụ trên hệ thống vi phạm các luật(rules) định trước

Trang 36

Đối phó – Khi phát hiện sự vi phạm trên hệ thống, các ghi nhậnchi tiết sẽ được thực hiện cũng như có thể ngừng lập tức phiên làmviệc gây ra

Một vài công cụ sửa đổi kernel được sử dụng rộng rãi là LIDS(Linux Intrusion Detection System), Medusa,

Gồm bản sửa đổi cho mã nguồn Linux và công cụ quản trị nhằm tăng cường tính bảo mật cho hệ thống bằng cách kiểm soát và hạn chế truy cập lên các thành phần được bảo vệ, kể cả với user root.

Cùng với sự phát triển của các hệ thống chạy Linux trên Internet,người ta đã và đang tìm ra ngày càng nhiều các lỗ hổng bảo mật củacác phần mềm miễn phí trêb các hệ thống Linux Hiện có rất nhiềukiểu tấn công, xâm nhập khác nhau từ các hacker bên ngoài vào các hệthống Linux như: Tấn công gây tràn bộ đệm (Buffer OverFlow), tấncông kiểu từ chối các dịch vụ (Denial of Services), tấn công dựa vàocác cửa hậu (Backdoor) Một khi kẻ tấn công chiếm được quyền root(tài khoản người dùng có quyền tối đa trên hệ thống), toàn bộ hệ thống

đó bị đặt dưới quyền điều khiển của kẻ xâm nhập Tất nhiên, với cácchính sách bảo mật tốt, một người nào đó có thể nói hệ thống củamình là bất khả xâm phạm Nhưng câu nói đó chỉ có tính tương đối, vìthật ra, không có một bức tường lửa nào là an toàn mãi mãi trênInternet, không có một hệ thống nào là bất khả xâm phạm mãi mãi Vậy các nhà quản trị phải làm gì để bảo vệ hệ thống của mình ? Làmsao ngăn chặn được người dùng có quyền root phá huỷ các thành phầnquan trọng của hệ thống ? Một hệ thống Linux thông thường có một

số nhược điểm sau:

Ngày đăng: 16/07/2021, 14:50

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w