Tải bản đầy đủ (.docx) (21 trang)

Cài đặt và thực nghiệm trên OSSEC centos 6.5

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.71 MB, 21 trang )

Chương 4. Thực nghiệm
1.1. Mô hình cài đặt thực nghiệm
1.1.1. Mô hình

1.1.2. Cài đặt mô hình
1.1.2.1. Cài đặt OSSEC Server
Tạm thời tắt tường lửa và SELinux:
service iptables stop
vim /etc/selinux/config
mkdir ~/ossec_src

# sửa dòng: SELINUX=disabled

Tải về OSSEC tại địa chỉ: sau đó đưa vào thư mục ~/ossec_src
Cài đặt và khởi động các dịch vụ cần thiết:
yum install -y httpd httpd-devel php php-cgi php-devel mysql mysqlserver mysql-devel
service httpd start
service mysqld start

Giải nén, cài đặt và khởi động OSSEC:
cd ~/ossec_src
tar xzvf ossec-hids-2.8.1.tar.gz
cd ossec-hids-2.8.1/src/
make setdb;

1


cd ..
./install.sh
/var/ossec/bin/ossec-control start



Tạo cơ sở dữ liệu cho OSSEC:
mysql -u root -p
mysql> create database ossec;
mysql> grant all privileges on ossec.* to
identified by "123456";
mysql> flush privileges;
mysql> quit

Sửa file cấu hình, thêm vào từ dòng 8 đoạn code sau:
<database_output>
<hostname>20.0.0.254</hostname>
<username>tuananh</username>
123456</password>
<database>ossec</database>
<type>mysql</type>
</database_output>

Kích hoạt database:
/var/ossec/bin/ossec-control enable database;
/var/ossec/bin/ossec-control restart
cd ~/ossec_src/ossec-hids-2.8.1/src/os_dbd/
mysql -u tuananh -p -h 20.0.0.254 ossec < mysql.schema
/var/ossec/bin/ossec-control restart

Kiểm tra nội dung database vừa tạo:
mysql -u root -p
mysql> show tables from ossec;
mysql> use ossec;
mysql> select * from server;


Kết quả:

2


Cài đặt web interface cho OSSEC:
cd ~/ossec_src
wget />tar xzvf v0.8.tar.gz
mv ossec-wui-0.8 /var/www/html/ossec-wui
cd /var/www/html/ossec-wui/
./setup.sh
usermod -G ossec apache
cd /var/ossec/
chmod 770 tmp/
chgrp apache tmp/
service httpd restart

Mở trình duyệt truy cập vào địa chỉ: http://localhost/ossec-wui hoặc
http://20.0.0.254/ossec-wui

1.1.2.2. Cài đặt OSSEC Agent tại Client
Tải về và cài đặt OSSEC Windows Agent tại địa chỉ:
/>
3


Để khai báo một agent mới, tại server chạy các lệnh:
/var/ossec/bin/manage_agents


Tiếp tục tạo key cho client:

4


Copy key vừa tạo được dán vào OSSEC Agent Manager trên máy Client:

5


Kiểm tra tại server:
/var/ossec/bin/ossec-control restart
/var/ossec/bin/list_agents -a

1.1.2.3. Cài đặt OSSEC Agent tại Web Server
Tạm thời dừng dịch vụ firewalld và iptables, và tắt SELinux
ntsysv

iptables -F
vim /etc/selinux/config

# sửa dòng: SELINUX=disabled

6


Tai OSSEC tai dia chi: />Sau đó đưa vào ~/ossec_src
mkdir ~/ossec_src
cd ~/ossec_src
tar xzvf ossec-hids-2.8.1.tar.gz

cd ossec-hids-2.8.1/
./install.sh

/var/ossec/bin/ossec-control start

Tạo key cho Web Server tại OSSEC Server:
/var/ossec/bin/manage_agents

7


Copy key qua Web Server:

8


/var/ossec/bin/ossec-control restart

Kiểm tra tại OSSEC server:

1.2. Kịch bản xâm nhập và phát hiện
1.2.1. Nguy cơ từ việc cài đặt software tại Client
1.2.1.1. Nguy cơ
Một phần mềm được cài đặt vào máy tính cốt yếu do hai điều: thứ nhất
là do nhân viên tại máy Client tự ý cài đặt phần mềm, thứ hai là do khi các
máy Client lướt web thì có những trang quảng cáo, hay những trang web độc
hại có chức năng tự cài đặt phần mềm vào máy tính chúng ta khi chúng ta
truy cập vào trang web đó.
Nguy cơ khi cái đặt các soft đó chính là máy client sẽ bị nhiễm mã độc
có trong phần mềm được cài. Và nguy cơ lớn nhất khi cài đặt phần mềm đó

là malware, chúng thậm chí có thể giả mạo cả dịch vụ phần mềm và khi máy
cập nhật, thay vì các bản vá và phần mềm bảo mật thì malware lại được tải
về và cài đặt lên hệ thống.
9


1.2.1.2. Dấu hiệu nhận biết và quá trình thực hiện
Khi chúng ta cài đặt bất kì một phần mềm nào đó vào trong máy tính thì
chúng ta đều có thể nhận biết thông qua file registry, và vào trong đường dẫn
sau để phát hiện
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

Ta vào đường dẫn sao để đến file win_audit :
C:\Program Files (x86)\ossec-agent\shared

Ta tiến hành cấu hình file win_audit_rcl, thêm vào cuối file:
[Software Installed] [any] []
r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninst
all;

10


Tiến hành cài 1 phần mềm. Ví dụ: Yahoo

Sau khi cài đặt xong thì vào kiểm tra trong server
cd /var/ossec/logs/alerts/2017/Dec/
cat ossec-alerts-12.log

Đã xuất hiện ở mức cảnh báo với cấp độ 5:


Rule phát hiện nằm ở file: /var/ossec/rules/msauth_rules.xml

11


1.2.2. Phát hiện tấn công SQL vào Web Server
Nhóm sử dụng công cụ DVWA để thực hành. Truy cập vào địa chỉ:
http://20.0.0.50/dvwa. Tiến hành submit chuỗi sau để Demo tấn công SQL
Injection:
%' or 0=0 union select null, version() #

Kiểm tra tại file log của OSSEC server:
cd /var/ossec/logs/alerts/2017/Dec
tail -f ossec-alerts-13.log

Kết quả tại file log:

12


Kiểm tra tại web interface:

1.2.3. Phát hiện backdoor tại Web Server
Nhóm dùng công cụ Social Engineering Toolkit trên Attacker để thực
nghiệm.

13



Kết quả sẽ tạo ra file x86_powershell_injection.txt. Đổi tên file này
thành x86_powershell_injection.bat và copy vào máy client:

14


Lập tức OSSEC phát hiện ra đây là trojan và tiến hành xóa bỏ file này.
Kết quả khi kiểm tra file log:

Kết quả tại web interface:

1.2.4. Phát hiện tấn công SSH Brute Force
Thực nghiệm tất công trên máy Attacker với công cụ hydra:
hydra -l root -P /root/Desktop/pass.txt -t 6 ssh://20.0.0.100 -V

15


Kết quả tại web interface:

Rule phát hiện nằm ở file: /var/ossec/rules/sshd_rules.xml

16


1.3. Kiểm tra tính toàn vẹn của hệ thống
1.3.1. Cơ bản về tiến trình syscheck của OSSEC
Syscheck là tên một tiến trình của OSSEC. Nó sẽ được gọi sau một
khoảng thời gian nhất định và làm nhiệm vụ kiểm tra xem có bất kỳ file các
cấu hình hay các mục registry đối với Windows bị thay đổi hay không, nếu

có sẽ xuất ra báo cáo về những sự thay đổi này.
Cơ chế hoạt động của syscheck rất đơn giản, khi OSSEC vừa được cài
đặt vào hệ thống, nó sẽ dò tìm và lưu lại checksum của tất cả các file nằm
trong các folder quan trọng ( được định sẵn ở file cấu hình của OSSEC ). Từ
đó, mỗi lần syscheck hoạt động, nó sẽ kiểm tra checksum của các file hệ
thống và so sánh với checksum ban đầu của chúng, nếu như checksum bị
thay đổi, syscheck sẽ báo cáo về sự thay đổi này, nếu như xuất hiện một file
mới, sự xuất hiện này cũng sẽ được báo cáo.
1.3.2. Vì sao kiểm tra tính toàn vẹn?
Có nhiều kiểu tấn công và nhiều hướng tấn công khác nhau, nhưng đa số
chúng đều mang điểm chung: để lại dấu vết và luôn luôn thay đổi hệ thống
theo một cách nào đó. Có thể đưa ra một vài ví dụ: virus sẽ thay đổi nội
dung một số file nhất định, rootkit sẽ thay đổi kernel của hệ điều hành hay
một số kiểu tấn công SQL Injection sẽ tạo một cơ sở dữ liệu tạm và lưu
những giá trị cần thiết vào đó.
Như vậy, chỉ cần phát hiện ra sự thay đổi của các file hệ thống, chúng ta
sẽ phát hiện ra nguy cơ của một cuộc tấn công và từ đó ngăn chặn kịp thời.
1.3.3. Cấu hình OSSEC kiểm tra tính toàn vẹn
Cấu trúc phần syscheck của file cấu hình OSSEC sẽ có nội dung tương
tự như thế này:

17


Với giá trị frequency mặc định là 79200 giây, tức là cứ sau 22 tiếng sẽ
tiến hành kiểm tra tính toàn vẹn một lần. Tiếp theo, các đường dẫn được
kiểm tra bao gồm /etc, /usr/bin/,… tất cả đều là các đường dẫn quan trọng
của hệ điều hành Linux. Cuối cùng là các đường dẫn không cần kiểm tra,
syscheck sẽ bỏ qua các file thuộc đường dẫn này trong quá trình thực thi của
nó.

Để có thể phát hiện kịp thời khi có sự thay đổi của một file hệ thống nào
đó, hay sự xuất hiện của file mới trong folder hệ thống, chúng ta cần phải
cấu hình OSSEC để thông báo thời gian thực. Mở file cấu hình OSSEC ở
đường dẫn /var/ossec/etc/ossec.conf và thêm vào dòng sau ngay dưới dòng
tùy chỉnh giá trị frequency của phần syscheck:
<alert_new_files>yes</alert_new_files>

Thêm những dòng sau vào /var/ossec/rules/local_rules.xml:
<rule id="554" level="10" overwrite="yes">
<category>ossec</category>

18


<decoded_as>syscheck_new_entry</decoded_as>
<description>File added to the system.</description>
<group>syscheck,</group>
</rule>

Tiếp theo, cấu hình báo cáo thời gian thực về nội dung thay đổi của file:
<directories realtime="yes" report_changes="yes" check_all="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories realtime="yes" report_changes="yes" check_all="yes">/bin,/sbin</directories>

Lưu ý: sự
Mặc định, OSSEC chỉ cảnh báo khi file thay đổi 3 lần. Lần thứ 4 trở đi
OSSEC sẽ bỏ qua không cảnh báo. Để cấu hình luôn luôn cảnh báo khi có sự
thay đổi file, thêm dòng sau (thêm vào trong thẻ <syscheck>):
<auto_ignore>no</auto_ignore>

Sau khi đã hoàn thành việc cấu hình, phần syscheck của file ossec.conf

sẽ có nội dung tương tự như sau:

Khởi động lại OSSEC với câu lệnh sau:
/var/ossec/bin/ossec-control restart

19


Sau khi OSSEC khởi động lại, quá trình chuẩn bị dữ liệu cho tiến trình
syscheck sẽ diễn ra trong khoảng 15-20 phút tùy theo cấu hình máy. Trong
log của OSSEC sẽ thông báo về quá trình chuẩn bị này như sau:

Các tiến trình ossec đang chạy:

Và sau khi OSSEC đã chuẩn bị xong và bắt đầu giám sát file theo thời
gian thực, nó sẽ thông báo trên log:

Thử chỉnh sửa một số file trong các đường dẫn được giám sát bởi
OSSEC:
20


21



×