rkhunter在LINUX系統中,是一個很好的小套件,幫忙輔助掃描判斷自己的系統有沒有被惡意感染或執行異常的程式。
但是有一些預設的參數,若沒有適當的微調,會一直出現誤判和提醒設備已經有問題。
用它產出的LOG檔案,有時候項目太多,也很難閱讀和找到重點去處理。
這時候可以試著這樣執行指令:
sudo rkhunter --check --sk --report-warnings-only --rwo
讓產出的報告顯示,會只有顯示Warning的狀態。
例如我的設備出現這個很惱人的原因是這樣的情形:
Warning: The following suspicious (large) shared memory segments have been found:
Process: /usr/lib/x86_64-linux-gnu/xfce4/notifyd/xfce4-notifyd PID: ____ Owner: xxx Size: 4.0MB (configured size allowed: 1.0MB)
Process: /usr/bin/pcmanfm PID: ____ Owner: xxx Size: 64MB (configured size allowed: 1.0MB)
Process: /usr/bin/lxpanel PID: ____ Owner: xxx Size: 2.0MB (configured size allowed: 1.0MB)
Process: /usr/bin/lxterminal PID: ____ Owner: xxx Size: 1.0MB (configured size allowed: 1.0MB)
Warning: Hidden directory found: /etc/.java
這個結果,看起來有兩個問題要處理。
1.
首先是SHM共享記憶體,預設是超過1MB的執行檔案,就會判斷有異常。
但是看列出來找到的項目,並不像是有問題的執行檔案。
我們就可以到rkhunter.conf,修改加入要忽略的程式。
sudo nano /etc/rkhunter.conf
找到下方關鍵字類似這樣:
# Allow the specified process pathnames to use shared memory segments.
#
# This option may be specified more than once, and may use wildcard characters.
#
# The default value is the null string.
#
#ALLOWIPCPROC=/usr/bin/firefox
#ALLOWIPCPROC=/usr/bin/vlc
ALLOWIPCPROC=/usr/bin/lxpanel
ALLOWIPCPROC=/usr/bin/pcmanfm
ALLOWIPCPROC=/usr/lib/x86_64-linux-gnu/xfce4/notifyd/xfce4-notifyd
ALLOWIPCPROC=/usr/bin/lxterminal
2.
接著是隱藏資料夾的部分,有一些專用的套件會是這樣的處理。
所以只要確定掃瞄到的資料夾是無礙無害的,我們可以到rkhunter.conf,修改加入要忽略的資料夾。
像我這次提醒的是JAVA的程式執行檔,我需要把#去除來忽略。
sudo nano /etc/rkhunter.conf
找到下方關鍵字類似這樣:
# Allow the specified hidden directory to be whitelisted.
#
# This option may be specified more than once, and may use wildcard characters.
#
# The default value is the null string.
ALLOWHIDDENDIR=/etc/.java
#ALLOWHIDDENDIR=/etc/.git
#ALLOWHIDDENDIR=/dev/.lxc
以上這樣新增設定後,再執行一次掃描應該就不會再產生誤判的疑問檔案了。
至於預設掃描超過1MB的檔案,雖然rkhunter.conf有這個設定可以加大檔案。
但是我個人傾向保留,這樣它自動排程掃描的時候,如果也有新來的異常的執行檔案,才會及時再被發現到跳警報提醒。
# This option can be used to set the maximum shared memory segment size
# (in bytes) that is not considered suspicious. Any segment above this size,
# and with 600 or 666 permissions, will be considered suspicious during the
# shared memory check.
#
# The default is 1048576 (1M) bytes.
#
#IPC_SEG_SIZE=1048576