HW防守 | Linux應急響應基礎


最近也是拿到了啟明星辰的暑期實習offer,雖然投的是安服,但主要工作是護網,昨天在公眾號Timeline Sec上看到有一篇關於護網的文章,所以在這里照着人家寫的在總結一下,為將來的工作打點基礎。

0x01 技能樹

Linux常用命令

常見日志的位置以及分析方法

熟悉常規黑客的攻擊手法

常規安全事件的處置思路

 

0x02 Linux常用命令

查找與文本操作

1、find

根目錄下所有.jsp后綴文件

find / -name *.jsp

 

最近3天修改過的文件

find -type f -mtime -3

 

最近3天創建的文件

find -type f -ctime -3

 


2、grep、strings、more、head、tail

過濾出不帶有某個關鍵詞的行並輸出行號

grep -nv 'root' /etc/passwd

-v是對匹配的結果進行反轉

-n是匹配字符串所在文件的行號


查看根目錄下 含有root信息的文件,並標注行號

grep -nr root /

 


查看根目錄下后綴為.jsp .jspx文件,並從大到小排列

grep -nr -v "404" ./ | grep -E "\.jsp | \.jspx" | more

 


顯示文件前十行

head /etc/passwd

 

實時展示文件內容

tail -f 文件名

 

3、awk、sort、uniq

awk的F參數是指定分隔符,print $1意思是打印第一列,sort命令是用來排序的,uniq命令是用來把相鄰的重復數據聚合到一起,加個c參數意思就是把重復次數統計出來,為什么先要用sort聚合一次呢,就是因為uniq命令只會聚合相鄰的重復數據,最后那個sort命令剛才說了是用於排序的,他的n參數是以數字排序,r參數是倒敘排序

awk -F " " '{print $1}' access.log| sort|uniq -c|sort -nr

 

 

案例:
我們以空格為分界線 ($1為第一行)對access.log日志進行分析,篩查提取訪問IP 從大到小排序,並提示訪問次數。

 

 

 

系統狀態命令

1、lsof

查看某個用戶啟動了什么進程

lsof -u root

 

某個端口是哪個進程打開的

lsof -i:8080

 

 

 

2、last、lastb、lastlog

登錄失敗記錄:/var/log/btmp

lastb

 

 

 

 


最后一次登錄:/var/log/lastlog

lastlog

 

登錄成功記錄: /var/log/wtmp

last

 

 

 

3、crontab

查看計划任務是否有惡意腳本或者惡意命令

crontab -l

 

4、netstat

a參數是列出所有連接,n是不要解析機器名,p列出進程名

netstat -anp

 


5、ps

查看進程信息

ps -ef
ps -aux


6、top

查看進程cpu占比(動態任務,可實時查看最高cpu占有率)

top

 

 

 

 


7、stat

查看某個文件是否被修改過

stat

 


8、last和lastb(對應日志wtmp/btmp)

last查看成功登陸的IP(用於查看登陸成功信息)

登陸用戶---連接方式---時間

 

 

 

lastb查看連接失敗的IP(可用於查看爆破信息)

登陸用戶---登陸方式---登陸IP---時間

 

 

 

0x03 日志分析

1、安全日志 /var/log/secure
作用:安全日志secure包含驗證和授權方面信息
分析:是否有IP爆破成功

2、用戶信息 /etc/passwd
內容含義:注冊名、口令、用戶標識號、組標識號、用戶名、用戶主目錄、命令解釋程序
分析:是否存在攻擊者創建的惡意用戶

3、命令執行記錄 ~/.bash_history
作用:命令執行記錄 ~/.bash_history
分析:是否有賬戶執行過惡意操作系統命令

4、root郵箱 /var/spool/mail/root
作用:root郵箱 /var/spool/mail/root
分析:root郵箱的一個文件,在該文件中包含大量信息,當日志被刪除可查詢本文件

5、中間件日志(Web日志access_log)

nginx、apache、tomcat、jboss、weblogic、websphere


作用:記錄訪問信息
分析:請求次數過大,訪問敏感路徑的IP
位置:/var/log下 access.log文件(apache默認位置)
位置:/var/log/nginx下 access名稱日志(nginx日志位置)
位置:tomcat、weblogic等日志均存放在安裝路徑下logs文件下
訪問日志結構:訪問IP---時間---請求方式---請求路徑---請求協議----請求狀態---字節數

 

 

 

6.登陸日志(可直接使用命令調取該信息,對應命令last/lastb)
位置:/var/log/wtmp #成功連接的IP信息
位置:/var/log/btmp #連接失敗的IP信息

7.cron(定制任務日志)日志
位置:/var/log/cron
作用:查看歷史計划任務(對該文件進行分析調取惡意病毒執行的計划任務,獲取准確時間)

 

 

 

8、history日志
位置:~/.bash_history
作用:操作命令記錄,可篩查攻擊者執行命令信息

 

 

 

也可用history命令

history 10(顯示最近使用過的10個命令)

 

 

 

9、其他日志
redis、sql server、mysql、oracle等
作用:記錄訪問信息
分析:敏感操作

 

web日志分析思路:

 

 

 

尋找Webshell的方法:

 

1、文件內容中的惡意函數

 

PHP:eval(、system(、assert(
JSP:getRunTime(、 FileOutputStream(
ASP:eval(、execute(、 ExecuteGlobal(

 

2、Web日志中的webshell特征

 

Darkblade:goaction=login
JspSpy:o=login
PhpSpy:action=phpinfo
Regeorg:cmd=connect
Other:cmd=

 

3、貼合Web業務中的url來分析Web日志
4、每天新增的動態腳本文件
5、低頻訪問的腳本文件

 

文章來源於Timeline Sec ,作者璠淳

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM