วิธีติดตั้งและใช้ AIDE (สภาพแวดล้อมการตรวจจับการบุกรุกขั้นสูง) บน CentOS 8

ก่อนเริ่มหลักสูตร "ผู้ดูแลระบบลินุกซ์" เราได้เตรียมแปลเนื้อหาที่น่าสนใจ

วิธีติดตั้งและใช้ AIDE (สภาพแวดล้อมการตรวจจับการบุกรุกขั้นสูง) บน CentOS 8

AIDE ย่อมาจาก “Advanced Intrusion Detection Environment” และเป็นหนึ่งในระบบที่ได้รับความนิยมมากที่สุดสำหรับการตรวจสอบการเปลี่ยนแปลงในระบบปฏิบัติการบน Linux AIDE ใช้เพื่อป้องกันมัลแวร์ ไวรัส และตรวจจับกิจกรรมที่ไม่ได้รับอนุญาต เพื่อตรวจสอบความสมบูรณ์ของไฟล์และตรวจจับการบุกรุก AIDE จะสร้างฐานข้อมูลข้อมูลไฟล์และเปรียบเทียบสถานะปัจจุบันของระบบกับฐานข้อมูลนี้ AIDE ช่วยลดเวลาในการสืบสวนเหตุการณ์โดยมุ่งเน้นไปที่ไฟล์ที่ได้รับการแก้ไข

คุณสมบัติผู้ช่วย:

  • รองรับคุณสมบัติไฟล์ต่างๆ รวมถึง: ประเภทไฟล์, inode, uid, gid, การอนุญาต, จำนวนลิงก์, mtime, ctime และ atime
  • รองรับการบีบอัด Gzip, SELinux, XAttrs, Posix ACL และแอตทริบิวต์ระบบไฟล์
  • รองรับอัลกอริธึมต่าง ๆ รวมถึง md5, sha1, sha256, sha512, rmd160, crc32 เป็นต้น
  • การส่งการแจ้งเตือนทางอีเมล

ในบทความนี้ เราจะดูวิธีการติดตั้งและใช้ AIDE สำหรับการตรวจจับการบุกรุกบน CentOS 8

ข้อกำหนดเบื้องต้น

  • เซิร์ฟเวอร์ที่ใช้ CentOS 8 พร้อม RAM อย่างน้อย 2 GB
  • การเข้าถึงรูท

เริ่มต้นใช้งาน

แนะนำให้อัพเดตระบบก่อน เมื่อต้องการทำเช่นนี้ ให้เรียกใช้คำสั่งต่อไปนี้

dnf update -y

หลังจากอัปเดตแล้ว ให้รีสตาร์ทระบบเพื่อให้การเปลี่ยนแปลงมีผล

การติดตั้งผู้ช่วย

AIDE มีอยู่ในพื้นที่เก็บข้อมูลเริ่มต้นของ CentOS 8 คุณสามารถติดตั้งได้อย่างง่ายดายโดยใช้คำสั่งต่อไปนี้:

dnf install aide -y

เมื่อการติดตั้งเสร็จสมบูรณ์ คุณสามารถดูเวอร์ชัน AIDE ได้โดยใช้คำสั่งต่อไปนี้:

aide --version

คุณควรเห็นสิ่งต่อไปนี้:

Aide 0.16

Compiled with the following options:

WITH_MMAP
WITH_PCRE
WITH_POSIX_ACL
WITH_SELINUX
WITH_XATTR
WITH_E2FSATTRS
WITH_LSTAT64
WITH_READDIR64
WITH_ZLIB
WITH_CURL
WITH_GCRYPT
WITH_AUDIT
CONFIG_FILE = "/etc/aide.conf"

ตัวเลือกที่มี aide สามารถดูได้ดังนี้:

aide --help

วิธีติดตั้งและใช้ AIDE (สภาพแวดล้อมการตรวจจับการบุกรุกขั้นสูง) บน CentOS 8

การสร้างและเริ่มต้นฐานข้อมูล

สิ่งแรกที่คุณต้องทำหลังจากติดตั้ง AIDE คือการเริ่มต้นใช้งาน การเริ่มต้นประกอบด้วยการสร้างฐานข้อมูล (สแนปชอต) ของไฟล์และไดเร็กทอรีทั้งหมดบนเซิร์ฟเวอร์

ในการเริ่มต้นฐานข้อมูล ให้รันคำสั่งต่อไปนี้:

aide --init

คุณควรเห็นสิ่งต่อไปนี้:

Start timestamp: 2020-01-16 03:03:19 -0500 (AIDE 0.16)
AIDE initialized database at /var/lib/aide/aide.db.new.gz

Number of entries:	49472

---------------------------------------------------
The attributes of the (uncompressed) database(s):
---------------------------------------------------

/var/lib/aide/aide.db.new.gz
  MD5      : 4N79P7hPE2uxJJ1o7na9sA==
  SHA1     : Ic2XBj50MKiPd1UGrtcUk4LGs0M=
  RMD160   : rHMMy5WwHVb9TGUc+TBHFHsPCrk=
  TIGER    : vkb2bvB1r7DbT3n6d1qYVfDzrNCzTkI0
  SHA256   : tW3KmjcDef2gNXYqnOPT1l0gDFd0tBh9
             xWXT2iaEHgQ=
  SHA512   : VPMRQnz72+JRgNQhL16dxQC9c+GiYB8g
             uZp6uZNqTvTdxw+w/IYDSanTtt/fEkiI
             nDw6lgDNI/ls2esijukliQ==


End timestamp: 2020-01-16 03:03:44 -0500 (run time: 0m 25s)

คำสั่งดังกล่าวจะสร้างฐานข้อมูลใหม่ aide.db.new.gz ในแคตตาล็อก /var/lib/aide. สามารถดูได้โดยใช้คำสั่งต่อไปนี้:

ls -l /var/lib/aide

ผล:

total 2800
-rw------- 1 root root 2863809 Jan 16 03:03 aide.db.new.gz

AIDE จะไม่ใช้ไฟล์ฐานข้อมูลใหม่นี้จนกว่าจะเปลี่ยนชื่อเป็น aide.db.gz. ซึ่งสามารถทำได้ดังนี้:

mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

ขอแนะนำให้คุณอัปเดตฐานข้อมูลนี้เป็นระยะเพื่อให้แน่ใจว่ามีการตรวจสอบการเปลี่ยนแปลงอย่างเหมาะสม

คุณสามารถเปลี่ยนตำแหน่งของฐานข้อมูลได้โดยการเปลี่ยนพารามิเตอร์ DBDIR ในไฟล์ /etc/aide.conf.

กำลังดำเนินการตรวจสอบ

ขณะนี้ AIDE พร้อมใช้ฐานข้อมูลใหม่แล้ว ดำเนินการตรวจสอบ AIDE ครั้งแรกโดยไม่ทำการเปลี่ยนแปลงใดๆ:

aide --check

คำสั่งนี้จะใช้เวลาสักครู่จึงจะเสร็จสมบูรณ์ ขึ้นอยู่กับขนาดของระบบไฟล์และจำนวน RAM บนเซิร์ฟเวอร์ของคุณ เมื่อการสแกนเสร็จสิ้น คุณจะเห็นสิ่งต่อไปนี้:

Start timestamp: 2020-01-16 03:05:07 -0500 (AIDE 0.16)
AIDE found NO differences between database and filesystem. Looks okay!!

ผลลัพธ์ข้างต้นบอกว่าไฟล์และไดเร็กทอรีทั้งหมดตรงกับฐานข้อมูล AIDE

ผู้ช่วยทดสอบ

ตามค่าเริ่มต้น AIDE จะไม่ติดตามไดเรกทอรีรากของ Apache เริ่มต้น /var/www/html. มากำหนดค่า AIDE เพื่อดูกันเถอะ ในการทำเช่นนี้คุณจะต้องเปลี่ยนไฟล์ /etc/aide.conf.

nano /etc/aide.conf

เพิ่มบรรทัดด้านบน "/root/CONTENT_EX" ต่อไปนี้:

/var/www/html/ CONTENT_EX

จากนั้นสร้างไฟล์ aide.txt ในแคตตาล็อก /var/www/html/โดยใช้คำสั่งต่อไปนี้:

echo "Test AIDE" > /var/www/html/aide.txt

ตอนนี้ให้รันการตรวจสอบ AIDE และตรวจสอบให้แน่ใจว่าตรวจพบไฟล์ที่สร้างขึ้น

aide --check

คุณควรเห็นสิ่งต่อไปนี้:

Start timestamp: 2020-01-16 03:09:40 -0500 (AIDE 0.16)
AIDE found differences between database and filesystem!!

Summary:
  Total number of entries:	49475
  Added entries:		1
  Removed entries:		0
  Changed entries:		0

---------------------------------------------------
Added entries:
---------------------------------------------------

f++++++++++++++++: /var/www/html/aide.txt

เราเห็นว่าตรวจพบไฟล์ที่สร้างขึ้น aide.txt.
หลังจากวิเคราะห์การเปลี่ยนแปลงที่ตรวจพบแล้ว ให้อัพเดตฐานข้อมูล AIDE

aide --update

หลังจากการอัพเดตคุณจะเห็นสิ่งต่อไปนี้:

Start timestamp: 2020-01-16 03:10:41 -0500 (AIDE 0.16)
AIDE found differences between database and filesystem!!
New AIDE database written to /var/lib/aide/aide.db.new.gz

Summary:
  Total number of entries:	49475
  Added entries:		1
  Removed entries:		0
  Changed entries:		0

---------------------------------------------------
Added entries:
---------------------------------------------------

f++++++++++++++++: /var/www/html/aide.txt

คำสั่งดังกล่าวจะสร้างฐานข้อมูลใหม่ aide.db.new.gz ในแคตตาล็อก

/var/lib/aide/

คุณสามารถดูได้ด้วยคำสั่งต่อไปนี้:

ls -l /var/lib/aide/

ผล:

total 5600
-rw------- 1 root root 2864012 Jan 16 03:09 aide.db.gz
-rw------- 1 root root 2864100 Jan 16 03:11 aide.db.new.gz

ตอนนี้เปลี่ยนชื่อฐานข้อมูลใหม่อีกครั้งเพื่อให้ AIDE ใช้ฐานข้อมูลใหม่เพื่อติดตามการเปลี่ยนแปลงเพิ่มเติม คุณสามารถเปลี่ยนชื่อได้ดังนี้:

mv /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz

รันการตรวจสอบอีกครั้งเพื่อให้แน่ใจว่า AIDE กำลังใช้ฐานข้อมูลใหม่:

aide --check

คุณควรเห็นสิ่งต่อไปนี้:

Start timestamp: 2020-01-16 03:12:29 -0500 (AIDE 0.16)
AIDE found NO differences between database and filesystem. Looks okay!!

เราดำเนินการตรวจสอบโดยอัตโนมัติ

เป็นความคิดที่ดีที่จะทำการตรวจสอบ AIDE ทุกวันและส่งรายงานทางไปรษณีย์ กระบวนการนี้สามารถเป็นแบบอัตโนมัติโดยใช้ cron

nano /etc/crontab

หากต้องการรันการตรวจสอบ AIDE ทุกวันเวลา 10:15 น. ให้เพิ่มบรรทัดต่อไปนี้ที่ท้ายไฟล์:

15 10 * * * root /usr/sbin/aide --check

ขณะนี้ AIDE จะแจ้งให้คุณทราบทางไปรษณีย์ คุณสามารถตรวจสอบเมลของคุณด้วยคำสั่งต่อไปนี้:

tail -f /var/mail/root

สามารถดูบันทึก AIDE ได้โดยใช้คำสั่งต่อไปนี้:

tail -f /var/log/aide/aide.log

ข้อสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีใช้ AIDE เพื่อตรวจจับการเปลี่ยนแปลงไฟล์และระบุการเข้าถึงเซิร์ฟเวอร์ที่ไม่ได้รับอนุญาต สำหรับการตั้งค่าเพิ่มเติม คุณสามารถแก้ไขไฟล์การกำหนดค่า /etc/aide.conf ได้ ด้วยเหตุผลด้านความปลอดภัย ขอแนะนำให้จัดเก็บฐานข้อมูลและไฟล์การกำหนดค่าไว้ในสื่อแบบอ่านอย่างเดียว ข้อมูลเพิ่มเติมสามารถพบได้ในเอกสารประกอบ ผู้ช่วยหมอ.

เรียนรู้เพิ่มเติมเกี่ยวกับหลักสูตร

ที่มา: will.com

เพิ่มความคิดเห็น