1. 程式人生 > >Linux入侵分析(一)如何找到惡意進程和文件?

Linux入侵分析(一)如何找到惡意進程和文件?

雲安全 入侵分析 惡意進程

1.檢查CPU內存

top
按大寫的“P”鍵將內容按CPU占用率排序,查看占用率高的進程和PID

2.netstat主機內查看網絡連接情況

netstat   -anp
netstat –antlp 
netstat -anltp | more
netstat -tunpl
netstat -antlp | grep -v -e nginx -e "140.205" -e   "192.168.0.3:80 " -e "mem"

netstat -ltpe 使用 -ep 選項可以同時查看進程名和用戶名。
註意 - 假如你將 -n 和 -e 選項一起使用,User 列的屬性就是用戶的 ID 號,而不是用戶名。

3.netstat查看gateway

netstat -rn

4.在主機外圍檢測主機端口開放情況

nmap -Pn 1.2.3.4 -p 1-65535
根據開放的端口縮小入侵途徑範圍

5.redis 6379端口是否存在未授權訪問

(1)公網使用其他機器執行命令"telnet 分析主機IP 6379",若鏈接成功,存在Redis未授權訪問
(2)本機測試redis非授權訪問:[root@eapple-nfb ~]# redis-cli
127.0.0.1:6379> keys *
(3)ps -ef | grep 6379 檢查Redis是否由root用戶啟動,如果是,疑似存在Redis未授權訪問,建議使用非root用戶啟動,並設置密碼。

(4)Redis註入SSH Key
檢查/root/.ssh目錄下是否存在authorizedkeys等sshkey文件,若存在且不是用戶設置,疑似存在Redis未授權訪問

6.根據PID找到進程文件位置

(1)ps -ef |grep 31685
ps -aux | grep zabbix

(2)利用/proc/PID
ll /proc/PID號 有一行內容為“exe -> /xxx/xxxx/xxxxx”即為該進程目錄
ls -l /proc/PID號/exe
file /proc/PID號/exe

(3)lsof -p pid123456

7.根據程序名找到文件位置

find / -name infod
find / -name “ *”
find / -name “. *”
find / -name “.. *”

8.根據user查找關聯程序文件位置

(1)find / -user ubuntu | grep -v ‘/home/ubuntu‘
(2)lsof -u ubuntu

9.查看程序最後修改時間

ll /路徑/程序名
ll等於ls -l
ls是顯示當前目錄下文件,”ls -l“是顯示當前目錄下文件詳細信息。

ll /usr/sbin/httpd
-rwxr-xr-x 1 root root 523568 Oct 12 2017 /usr/sbin/httpd

10.進程樹pstree查看子進程

yum install psmisc
pstree -p
pstree -p -a

三種系統上的安裝方法:

#On Mac OS    :brew install   pstree  
#On Fedora/Red Hat/CentOS  :yum install psmisc #using psmisc   package for pstree  
#On Ubuntu/Debian APT  :apt-get install psmisc

11.自動啟動項

(1)查看開機啟動項
chkconfig --list 或者 cat /etc/rc.local

(2)定時任務腳本
crontab -l 命令查看
crontab -l -u oracle 查看oracle用戶的定時任務

cron文件目錄,查看/etc/crontab,/etc/cron.d,/etc/cron.daily,cron.hourly/,cron.monthly,cron.weekly/是否存在可以腳本或程序

crontab -l 命令解釋
    */30 * * * * /var/tmp/". "/c
    {minute} {hour} {day-of-month} {month} {day-of-week}   {full-path-to-shell-script} 
    o minute: 區間為 0 – 59   
    o hour: 區間為0 – 23   
    o day-of-month: 區間為0   – 31 
    o month: 區間為1 – 12. 1   是1月. 12是12月.   
    o Day-of-week: 區間為0 –   7. 周日可以是0或7.

    "*/30"表示每30個單位,這裏代表每30分鐘

12.木馬鑒別網站:微步在線/virustotal鑒定可疑文件和IP

https://x.threatbook.cn/
www.virustotal.com
http://r.virscan.org

13.抓包分析流量

(1)抓tcp包
tcpdump -i eth0 -w tel.pcap
(2)抓http的包
tcpdump -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854
殺毒軟件 clamav (1)源:yum install epel-release

14.殺毒軟件 clamav

(1)源:yum install epel-release

(2)軟件:yum install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd -y

(3)更新病毒庫:freshclam

  • 掃描所有用戶的主目錄就使用 clamscan -r /home
  • 掃描您計算機上的所有文件並且顯示所有的文件的掃描結果,就使用 clamscan -r /
  • 掃描您計算機上的所有文件並且顯示有問題的文件的掃描結果,就使用 clamscan -r --bell -i /

#感覺--bell沒什麽用,由於掃描了/sys/所以會報錯4000+
LibClamAV Warning: fmap_readpage: pread fail: asked for 4077 bytes @ offset 19, got 0
WARNING: Can‘t open file /sys/bus/hid/drivers/topseed/bind: Permission denied

註意:使用clamscan --exclude-dir=/sys/ -i -r /
由於/sys/目錄的特殊性,掃描會產生大量報錯,越過此文件夾即可。
-i代表只報出infected的文件,-r代表子文件夾也要掃描,/就是根目錄了

15.工具chkrootkit檢查入侵

https://www.lvtao.net/server/chkrootkit.html

Linux入侵分析(一)如何找到惡意進程和文件?