ฉันต้องการมีล็อกไฟล์ที่มีรายการทุกครั้งที่ผู้ใช้รันโปรแกรม suid ใด ๆ ที่มีชื่อผู้ใช้โปรแกรมและอาร์กิวเมนต์บรรทัดคำสั่งใด ๆ ที่ส่งผ่านไป มีวิธีมาตรฐานในการทำสิ่งนี้บน Linux หรือไม่?
ฉันต้องการมีล็อกไฟล์ที่มีรายการทุกครั้งที่ผู้ใช้รันโปรแกรม suid ใด ๆ ที่มีชื่อผู้ใช้โปรแกรมและอาร์กิวเมนต์บรรทัดคำสั่งใด ๆ ที่ส่งผ่านไป มีวิธีมาตรฐานในการทำสิ่งนี้บน Linux หรือไม่?
คำตอบ:
คุณสามารถเข้าสู่ระบบสวดทั้งหมดของปฏิบัติการที่เฉพาะเจาะจง (setuid หรือไม่) ผ่านระบบย่อยการตรวจสอบ เอกสารค่อนข้างกระจัดกระจาย เริ่มต้นด้วยหน้าคน auditctlหรืออาจจะเป็นแบบฝึกหัดนี้ การแจกแจงครั้งล่าสุดจัดส่งauditd
พัสดุภัณฑ์ ติดตั้งและตรวจสอบให้แน่ใจว่าauditd
daemon กำลังทำงานอยู่จากนั้นทำ
auditctl -A exit,always -F path=/path/to/executable -S execve
และดูการโทรเข้าสู่ระบบ/var/log/audit/audit.log
(หรือที่ใดก็ตามที่การกระจายของคุณตั้งค่านี้)
-F path=…
ด้วย-F euid=0 -F 'uid!=0'
หรืออะไรทำนองนั้น ฉันไม่สามารถเห็นเบ็ดในรหัส setxid เรียกโดยexecve
มิได้เฉพาะ setxid ดูในระบบย่อยการตรวจสอบ หรือแน่นอนคุณสามารถเข้าสู่ระบบทุก ๆexecve
หลังประมวลผล
auditd
ไม่ได้มีรายการสำหรับ