Trang chủ Kiến thức cơ bản

Tìm hiểu về công cụ hỗ trợ pam_tty_audit trong Linux Auditting

Tìm hiểu về công cụ hỗ trợ pam_tty_audit trong Linux Auditting

Linux Auditting là gì? Công cụ pam_tty_audit được sử dụng để làm gì?

Linux Auditting

Thực hiện việc kiểm tra, kiểm soát hệ thống Linux (Linux Auditting) là một việc cần phải thực hiện với mỗi quản trị viên của hệ thống. Linux Auditting là một hệ thống hỗ trợ việc tìm kiếm các thông tin liên quan đến việc bảo mật trên hệ thống của quản trị viên.

Hệ thống này hoạt động dựa theo những cấu hình có đã được cấu hình sẵn, trong mỗi kì làm việc (session) của những người dùng (user), hệ thống này sẽ tạo ra một bản ghi hệ thống (log file) để ghi lại các thông tin về các sự kiện đang diễn ra trên hệ thống nhiều nhất có thể.

Các thông tin này sẽ được sử dụng để tìm ra người vi phạm các chính sách bảo mật hệ thống hay người làm lộ thông tin trong công việc.

Linux Audit không hề cung cấp bất cứ một phương pháp bảo mật nào đến hệ thống điều hành mà nó chỉ có thể được sử dụng để tìm ra sự vi phạm các chính sách của người dùng hoặc quản trị viên hệ thống.

Các thông tin mà Linux Audit sẽ ghi lại trong log file gồm có:

  • Ngày giờ, kiểu, kết quả của một hoạt động, sự kiện trên hệ thống
  • Các nhãn nhạy cảm của các đối tượng trên hệ thống
  • Tất cả các sự kiện khi người dùng hoạt động trên hệ thống
  • Tất cả các cơ chế xác thực
  • Sự thay đổi các dữ liệu với các dữ liệu có sự tin cậy của hệ thống.

pam_tty_audit

Khi nói đến công cụ pam_tty_audit này ta cần phải nói đến Linux Pam đầu tiên. Linux Pam (Pluggable Authentication Modules ) là một phương pháp có sự linh hoạt cao trong việc xác thực, kiểm tra ứng dụng về các dịch vụ của hệ thống.

pam_tty_audit là một module của PAM để chạy hoặc ngừng việc kiểm soát của TTY (TTY là các câu lệnh trên hệ thống) được nhập vào từ một người dùng được xác định sẵn . Khi hoạt động module pam_tty_audit sẽ hoạt động cùng với công cụ auditd (nằm trong một package bên ngoài và cần được install bằng câu lệnh apt-get install auditd) để theo dõi các hành động của người dùng, lưu giữ chính xác các phím, lệnh mà người dùng sử dụng rồi ghi nó vào file log tại /var/log/audit/audit.log.

Để có thể sử dụng công cụ này, người sử dụng cần phải cấu hình công cụ enable công cụ audit trong các file /etc/pam.d/system-auth/etc/pam.d/password-auth.

Công cụ này cũng có thể để quản trị viên theo dõi một vài người được chỉ định chứ không phải tất cả các người dùng của hệ thống.

Cú pháp của câu lệnh để cấu hình sẽ như sau:

session required pam_tty_audit.so disable=username,username2...
enable=username,username2..

Ngoài ra, nếu muốn ghi lại các phím mà người dùng nhập vào, quản trị viên chỉ cần thêm log_passwd vào phía sau câu lệnh trên:

session required pam_tty_audit.so disable=username,username2...
enable=username,username2.. Log_passwd

Để có thể xem log file của công cụ audit này, người dùng cần sử dụng tính năng aureport với câu lệnh: aureport --tty.

Thực hiện trên hệ thống ubuntu.

Đăng nhập trực tiếp

B1: Đầu tiên ta tạo user với tên là techblog và admin với câu lệnh

useradd -m admin -s /bin/bash
useradd -m techblog -s /bin/bash

B2: Sau đó ta bắt đầu cấu hình 2 file là /etc/pam.d/system-auth/etc/pam.d/password-auth để sử dụng công cụ audit trên user techblog nhưng không sử dụng trên user admin.

- File /etc/pam.d/system-auth:

session required pam_tty_audit.so disable=admin enable=techblog

- File /etc/pam.d/password-auth

session required pam_tty_audit.so disable=admin enable=techblog log_passwd

B3: Đăng nhập vào user techblog và thử tạo một file text hoặc thay đổi một nhãn công việc nào đó để kiểm tra.

Trong ví dụ này ta thử tạo file, sửa file bằng một vài câu lệnh như:

mkdir testfolder # tạo folder testfolder

vim testfile # thêm nội dung vào bên trong

This is TEST FILE AUDIT

Exit # thoát khỏi user

B4: Đăng nhập vào user admin và cũng làm như user techblog.

Mkdir test2
Touch test3
Exit

B5: Truy cập vào user quản trị viên và sử dụng tính năng aureport để kiểm tra bản ghi trong log file của audit. Ta thấy rằng aureport đã trả về kết quả là các hoạt động của user techblog với UID là 1001.

- Sử dụng câu lệnh aureport --tty ta sẽ được trả về những thông tin như dòng dưới đây.

1. 10/12/17 19:23:43 126 1001 ? 3 vim “This is TEST FILE AUDIT”, <esc>, “:x”, <ret>

Bây giờ ta bật lại việc kiểm tra audit trên toàn bộ các user trên hệ thống bằng cách sửa lại câu lệnh trong 2 file thành

session required pam_tty_audit.so enable=*

Ta tiếp tục sử dụng câu lệnh aureport --tty sẽ có kết quả sau:

1. 10/12/17 19:25:14 126 1001 ? 3 vim “This is TEST FILE AUDIT1”, <esc>, “:x”, <ret>
1. 10/12/17 19:25:28 126 1002 ? 3 vim “This is TEST FILE AUDIT2”, <esc>, “:x”, <ret>

Như vậy aureport đã trả về thêm một kết quả nữa là những hoạt động của user admin với UID là 1002

Đăng nhập qua SSH

B1:: Cài đặt các package audit: apt-get install -y auditd

B2: Ta xóa bỏ các dòng có chứa pam_tty_audit.so có sẵn trong file /etc/pam.d/sshd:

sed -i '/pam_tty_audit.so/d' /etc/pam.d/sshd

B3: Thêm dòng lệnh như cấu trúc trong 2 file system-auth và password-auth ở trên vào file /etc/pam.d/sshd:

echo 'session required pam_tty_audit.so enable=username1,...
disable=username1,.......' >> /etc/pam.d/sshd

B4: Restart lại dịch vụ auditd:

sudo service auditd restart

B5: Tất cả các user bị chỉ định sẽ bị theo dõi và ghi lại quá trình hoạt động như khi đăng nhập trực tiếp vào hệ thống.

>> Tham khảo thêm: Audit hệ thống Linux với Auditd Tool trên CentOS/RHEL