日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux应急响应篇

發布時間:2023/12/31 linux 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux应急响应篇 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?Linux入侵排查

目錄

?Linux入侵排查

1、用戶信息文件 /etc/passwd

2、密碼文件 /etc/shadow

1.2 歷史命令

1、查看root用戶的歷史命令

2、查看普通用戶的歷史命令

3、歷史操作命令的清除:history -c

1.3 檢查異常進程

1.4 檢查異常端口

1.5 檢查開機啟動項

1.6 檢查定時任務

1、利用crontab創建定時任務

2、利用anacron實現異步定時任務調度

1.7 檢查服務

1.8 檢查異常文件


1、用戶信息文件 /etc/passwd

root : x : 0 : 0 : root : /root : /bin/bash

用戶名:密碼:用戶ID:組ID:用戶說明:家目錄:登錄之后使用的shell

2、密碼文件 /etc/shadow

root:$6$oGs1PqhL2p3ZetrE$X7o7bzoouHQVSEmSgsYN5UD4.kMHx6qgbTqwNVC5oOAouXvcjQSt.Ft7ql1WpkopY0UV 9ajBwUt1DpYxTCVvI/:16809:0:99999:7:::

用戶名:加密密碼:密碼最后一次修改日期:兩次密碼的修改時間間隔:密碼有效期:密碼修改到期到的警告天數:密碼過期之 后的寬限天數:賬號失效時間:保留

who ? ? ? 查看當前登錄用戶(tty本地登錄,pts遠程登錄)

w ? ? ? ? ? ?查看系統信息,想知道某一時刻用戶的行為

uptime ?查看登錄多久,多少用戶,負載

last ? ? ? ? 查看最近登錄的用戶

lastb ? ? ? 查看最近登錄失敗的用戶

入侵排查

1、查詢特權用戶(uid為0)

awk -F : '$3==0{print $1}' /etc/passwd

2、查看可以遠程登錄的賬號信息

awk '/\ $1|\ $6/{print $1}' /etc/shadow

3、除root賬號外,其他賬號是否存在sudo權限

more /etc/sudoers | grep "ALL=(ALL)"

4、查看空密碼的用戶

awk -F : 'length($2)==0{print $1}' /etc/passwd

Tips:無密碼的用戶只允許本機登錄,不允許遠程登錄

5、禁用或刪除多余及可疑的賬號

usermod -L user ? 禁用賬號,賬號無法登錄,/etc/shadow 第二欄為!開頭

userdel user ? ? ? ? ? 刪除user用戶

userdel -r user ? ? ? 將刪除user用戶,并且將/home目錄下的user目錄一并刪除

1.2 歷史命令

1、查看root用戶的歷史命令

history

2、查看普通用戶的歷史命令

在/home各個用戶的目錄下的.bash_history,可以查看普通賬號的歷史命令

cat .bash_history >> history.txt // 將文件內容保存到history.txt中查看

1) 保存1萬條命令

? ?sed -i 's/^HISTSIZE=1000/HISTSIZE=10000/g' /etc/profile

? ?

? ?為歷史命令增加登錄的IP地址、執行命令時間等信息

2) 在/etc/profile的文件尾部添加如下配置信息:

? ?\######jiagu history xianshi#########?

? ?USER_IP=`who -u am i 2>/dev/null | awk '{print $NF}' | sed -e 's/[()]//g'`?

? ?if [ "$USER_IP" = "" ]?

? ?then?

? ?USER_IP=`hostname`?

? ?fi?

? ?export HISTTIMEFORMAT="%F %T $USER_IP `whoami` "?

? ?shopt -s histappend?

? ?export PROMPT_COMMAND="history -a"?

? ?######### jiagu history xianshi ##########

3) 讓配置文件生效

? ?source /etc/profile

3、歷史操作命令的清除:history -c

此命令并不會清除保存在文件中的記錄,因此需要手動刪除.bash_profile文件中的記錄。

1.3 檢查異常進程

使用top | more ?查看可疑進程PID

發現可疑進程,查看進程所對應的文件路徑

? 1、ls -l /proc/PID/exe

? 2、file /proc/PID/exe

ps aux | grep PID ,分析進程

1.4 檢查異常端口

netstat -anltp | more 檢查可疑端口,IP,PID

1.5 檢查開機啟動項

?查看啟動項:
/etc/rc.d/rc.local
/etc/rc.d/rc[0~6].d?
/etc/rc[0~6].d
/etc/rc.local

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 系統運行級別

運行級別含義?
0關機
1單用戶模式,可以想象為windows的安全模式,主要用于系統修復
2不完全的命令行模式,不含NFS服務
3完全的命令行模式,就是標準字符界面
4系統保留
5圖形界面
6重啟

查看系統運行級別:runlevel

系統默認允許級別

在配置文件 /etc/inittab中

id=3:initdefault ?系統開機后直接進入的運行級別為3

當我們需要開機啟動自己的腳本時,只需要將可執行腳本丟在/etc/init.d目錄下,然后在/etc/rc.d/rc*.d中簡歷軟鏈接即可

ln -s /etc/init.d/sshd ? /etc/rc.d/rc3.d/S100ssh

此處sshd是具體服務的腳本文件,S100ssh是其軟鏈接,S開頭代表加載時自啟動;如果是K開頭的腳本文件,代表運行級別加載時關閉

1.6 檢查定時任務

1、利用crontab創建定時任務

crontab -l 列出某個用戶cron服務的詳細內容

Tips: 默認編寫的crontab文件會保存在 (/var/spool/cron/用戶名 下)

crontab -r 刪除所有的計劃任務

crontab -e 使用編輯器編輯當前的crontab文件

crontab -u 用戶名 -l 查看root用戶的定時任務

2、利用anacron實現異步定時任務調度

每天運行 /home/backup.sh腳本:?

vi /etc/anacrontab?

@daily 10 example.daily /bin/bash /home/backup.sh?

當機器在 backup.sh 期望被運行時是關機的,anacron會在機器開機十分鐘之后運行它,而不用再等待 7天。

入侵排查
/var/spool/cron/*?
/etc/crontab?
/etc/cron.d/*?
/etc/cron.daily/*?
/etc/cron.hourly/*?
/etc/cron.monthly/*?
/etc/cron.weekly/?
/etc/anacrontab?
/var/spool/anacron/*

1.7 檢查服務

服務自啟動

第一種修改方法:

chkconfig [--level 運行級別] [獨立服務名] [on|off]

chkconfig -level 2345 httpd on

chkconfig httpd on 默認level是2345

第二種修改方法:

修改/etc/rc.d/rc.local文件

加入/etc/init.d/httpd start

第三種修改方法:

使用ntsysv命令管理自啟動,可以管理獨立服務和xinetd服務。

入侵排查

1、查詢已安裝的服務:

RPM包安裝的服務

chkconfig --list 查看服務自啟動狀態,可以看到所有RPM包安裝的服務

系統在3與5級別下的啟動項

中文環境

chkconfig --list | grep "3:啟用 \ | 5:啟用"

英文環境

chkconfig --list | grep "3:on\ | 5:on"

如果命令被修改可以使用rpm -Va檢查發生過變化的軟件包

1.8 檢查異常文件

1、查看敏感目錄,如/tmp目錄下的文件,同時注意隱藏文件

2、發現webshell、遠控木馬的創建時間,可以使用find命令查找同一時間范圍內創建的文件:find /opt -iname 1 -type f 找出/opt 目錄下一天前訪問過的文件

3、針對可疑文件可以使用stat查看文件詳細信息

4、md5sum獲取文件的md5值,在威脅情報社區進行在線檢測

## 1.9 檢查系統日志

日志默認存放位置:/var/log/

日志配置情況:/etc/rsyslog.conf

日志文件說明
/var/log/cron記錄了系統定時任務相關日志
/var/log/cups記錄打印信息的日志
/var/log/dmesg記錄了系統在開機時內核自檢的信息,也可以使用dmesg命令直接查看內核自檢信息
/var/log/mailog記錄郵件信息
/var/log/message記錄系統重要信息的日志。這個日志文件中會記錄Linux系統的絕大多數重要信息,如果系 統出現問題時,首先要檢查的就應該是這個日志文件
/var/log/btmp記錄錯誤登錄日志,這個文件是二進制文件,不能直接vi查看,而要使用lastb命令查看
/var/log/lastlog記錄系統中所有用戶最后一次登錄時間的日志,這個文件是二進制文件,不能直接vi,而要 使用last命令查看
/var/log/wtmp永久記錄所有用戶的登錄、注銷信息,同時記錄系統的啟動、重啟、關機事件。同樣這個文 件也是一個二進制文件,不能直接vi,而需要使用last命令來查看
/var/log/utmp記錄當前已經登錄的用戶信息,這個文件會隨著用戶的登錄和注銷不斷變化,只記錄當前登 錄用戶的信息。同樣這個文件不能直接vi,而要使用w,who,users等命令來查詢
/var/log/secure記錄驗證和授權方面的信息,只要涉及賬號和密碼的程序都會記錄,比如SSH登錄,su切換 用戶,sudo授權,甚至添加用戶和修改用戶密碼都會記錄在這個日志文件中

日志分析

1、定位有多少IP在爆破主機的root賬號:

grep "Failed password for root" /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more

定位有哪些IP在爆破

grep "Failed password" /var/log/secure|grep -E -o "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\. (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4] [0-9]|[01]?[0-9][0-9]?)"|uniq -c

爆破用戶名字典是什么

grep "Failed password" /var/log/secure|perl -e 'while($_=<>){ /for(.*?) from/; print "$1\n";}'|uniq -c|sort -nr ?

2、登錄成功的IP有哪些:

?grep "Accepted " /var/log/secure | awk '{print $11}' | sort | uniq -c | sort -nr | more?

登錄成功的日期、用戶名、IP:?

grep "Accepted " /var/log/secure | awk '{print $1,$2,$3,$9,$11}'?

3、增加一個用戶kali日志:?

Jul 10 00:12:15 localhost useradd[2382]: new group: name=kali, GID=1001?

Jul 10 00:12:15 localhost useradd[2382]: new user: name=kali, UID=1001, GID=1001,

?home=/home/kali?

, shell=/bin/bash?

Jul 10 00:12:58 localhost passwd: pam_unix(passwd:chauthtok): password changed for kali #grep "useradd" /var/log/secure?

4、刪除用戶kali日志:?

Jul 10 00:14:17 localhost userdel[2393]: delete user 'kali'?

Jul 10 00:14:17 localhost userdel[2393]: removed group 'kali' owned by 'kali'?

Jul 10 00:14:17 localhost userdel[2393]: removed shadow group 'kali' owned by 'kali' # grep "userdel" /var/log/secure?

5、sudo授權執行:?

sudo -l?

Jul 10 00:43:09 localhost sudo: good : TTY=pts/4 ; PWD=/home/good ; USER=root ; COMMAND=/sbin/shutdown -r now

總結

以上是生活随笔為你收集整理的Linux应急响应篇的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。