Linux 入侵檢測小結

Linux  入侵檢測小結linux

0x00 審計命令

在linux中有5個用於審計的命令:shell

  • last:這個命令可用於查看咱們系統的成功登陸、關機、重啓等狀況;這個命令就是將/var/log/wtmp文件格式化輸出。
  • lastb:這個命令用於查看登陸失敗的狀況;這個命令就是將/var/log/btmp文件格式化輸出。
  • lastlog:這個命令用於查看用戶上一次的登陸狀況;這個命令就是將/var/log/lastlog文件格式化輸出。
  • who:這個命令用戶查看當前登陸系統的狀況;這個命令就是將/var/log/utmp文件格式化輸出。
  • w:與who命令一致。

關於它們的使用:man last,last與lastb命令使用方法相似:vim

#!bash
last [-R] [-num] [ -n num ] [-adFiowx] [ -f file ] [ -t YYYYMMDDHHMMSS ] [name...]  [tty...]
lastb [-R] [-num] [ -n num ] [ -f file ] [-adFiowx] [name...]  [tty...]
who [OPTION]... [ FILE | ARG1 ARG2 ]

 

參數說明:bash

  1. 查看系統登陸狀況服務器

    last:不帶任何參數,顯示系統的登陸以及重啓狀況   last網絡

  2. 只針對關機/重啓less

    使用-x參數能夠針對不一樣的狀況進行查看   
    last -x reboot
    ssh

  3. 只針對登陸工具

    使用-d參數,而且參數後不用跟任何選項    last -d
    ui

  4. 顯示錯誤的登陸信息

    lastb

  5. 查看當前登陸狀況

    who、w

0x01 日誌查看

在Linux系統中,有三類主要的日誌子系統:

  • 鏈接時間日誌: 由多個程序執行,把記錄寫入到/var/log/wtmp和/var/run/utmp,login等程序會更新wtmp和utmp文件,使系統管理員可以跟蹤誰在什麼時候登陸到系統。(utmp、wtmp日誌文件是多數Linux日誌子系統的關鍵,它保存了用戶登陸進入和退出的記錄。有關當前登陸用戶的信息記錄在文件utmp中; 登陸進入和退出記錄在文件wtmp中; 數據交換、關機以及重啓的機器信息也都記錄在wtmp文件中。全部的記錄都包含時間戳。)
  • 進程統計: 由系統內核執行,當一個進程終止時,爲每一個進程往進程統計文件(pacct或acct)中寫一個記錄。進程統計的目的是爲系統中的基本服務提供命令使用統計。
  • 錯誤日誌: 由syslogd(8)守護程序執行,各類系統守護進程、用戶程序和內核經過syslogd(3)守護程序向文件/var/log/messages報告值得注意的事件。另外有許多Unix程序建立日誌。像HTTP和FTP這樣提供網絡服務的服務器也保持詳細的日誌。

日誌目錄:/var/log(默認目錄)

  1. 查看進程日誌

    cat /var/log/messages

    p4

  2. 查看服務日誌

    cat /var/log/maillog

    p5

 

0x02 用戶查看

Linux不一樣的用戶,有不一樣的操做權限,可是全部用戶都會在/etc/passwd /etc/shadow /etc/group /etc/group- 文件中記錄;

  1. 查看詳細

    • less /etc/passwd:查看是否有新增用戶
    • grep :0 /etc/passwd:查看是否有特權用戶(root權限用戶)
    • ls -l /etc/passwd:查看passwd最後修改時間
    • awk -F: '$3==0 {print $1}' /etc/passwd:查看是否存在特權用戶
    • awk -F: 'length($2)==0 {print $1}' /etc/shadow:查看是否存在空口令用戶

    注:linux設置空口令:passwd -d username

    p6

 

0x03 進程查看

  1. 普通進程查看

    進程中咱們通常使用ps來查看進程;man ps

    • ps -aux:查看進程
    • lsof -p pid:查看進程所打開的端口及文件
  2. 檢查隱藏進程

    • ps -ef | awk '{print }' | sort -n | uniq >1
    • ls /proc | sort -n |uniq >2
    • diff 1 2

    注:以上3個步驟爲檢查隱藏進程

0x04 其餘檢查

    1. 檢查文件

      • find / -uid 0 -print:查找特權用戶文件
      • find / -size +10000k -print:查找大於10000k的文件
      • find / -name "..." -prin:查找用戶名爲...的文件
      • find / -name core -exec ls -l {} \;:查找core文件,並列出詳細信息
      • md5sum -b filename:查看文件的md5值
      • rpm -qf /bin/ls:檢查文件的完整性(還有其它/bin目錄下的文件)
    2. 檢查網絡

      • ip link | grep PROMISC:正常網卡不該該存在promisc,若是存在可能有sniffer
      • lsof -i
      • netstat -nap:查看不正常端口
      • arp -a:查看arp記錄是否正常
    3. 計劃任務

      • crontab -u root -l:查看root用戶的計劃任務
      • cat /etc/crontab
      • ls -l /etc/cron.*:查看cron文件是變化的詳細
      • ls /var/spool/cron/
    4. 檢查後門

      對於linux的後門檢查,網絡上有一些公開的工具,可是在不使用這些工具的前提時,咱們能夠經過一些命令來獲取一些信息。

      首先就是檢測計劃任務,能夠參考上面;
      第二:查看ssh永久連接文件:vim $HOME/.ssh/authorized_keys
      第三:lsmod:檢查內核模塊
      第四:chkconfig --list/systemctl list-units --type=service:檢查自啓
      第五:服務後門/異常端口(是否存在shell反彈或監聽)
      其它:
      ls /etc/rc.d
      ls /etc/rc3.d

相關文章
相關標籤/搜索