安全運(yùn)維雜談

最近由于某行動(dòng),自己在現(xiàn)場(chǎng)對(duì)系統(tǒng)進(jìn)行了相關(guān)的安全檢查及加固〉姹校現(xiàn)將本人的一點(diǎn)經(jīng)驗(yàn)分享如下霹疫。

不治已病治未病,預(yù)防大于治療

任何時(shí)候综芥,事前的預(yù)防遠(yuǎn)比事后的補(bǔ)救來得更為有效丽蝎。因此,對(duì)于我們來說膀藐,時(shí)刻要把“預(yù)防為主”放在首位屠阻。我們平時(shí)在應(yīng)用開發(fā)及上線部署過程中,可能需要注意的點(diǎn)有如下幾個(gè)方面:

(1)將安全因素考慮到軟件開發(fā)全生命周期中额各。要有安全意識(shí)国觉。

(2)開發(fā)中,依照安全規(guī)范編程虾啦÷榫鳎可參考《XXXXXXX》和《XXXXXXX》痕寓。

(3)產(chǎn)品發(fā)布或上線前,進(jìn)行相應(yīng)的安全漏洞掃描蝇闭。對(duì)發(fā)現(xiàn)的漏洞呻率,及時(shí)更改丁眼,防止應(yīng)用帶病上線給不法分子帶來可乘之機(jī)筷凤。

(4)對(duì)于主機(jī)安全,也要做好主機(jī)的安全基線配置苞七∶晔兀可參考《XXXXXXXX》。

有效監(jiān)控蹂风,應(yīng)急響應(yīng)

以下內(nèi)容是通過本人的一些實(shí)踐以及參考互聯(lián)網(wǎng)上某些帖子或文章進(jìn)行整理的卢厂。

1、查看可疑用戶

登錄系統(tǒng)惠啄,查看目前是否有可疑用戶登錄或已經(jīng)登錄過服務(wù)器的可疑用戶慎恒。查看方式舉例如下:

方法一:執(zhí)行“w”命令

[root@TEST root]$ w
 08:37:22 up 530 days, 22:33,  2 users,  load average: 0.06, 0.11, 0.11
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
nobody  pts/6    172.18.124.66    23:36    0.00s  0.06s  0.02s sshd: nobody [priv]
test    pts/7    172.16.124.45    23:37    8:57m  3.19s  0.01s sshd: test [priv]

方法二:執(zhí)行“last”命令

[root@TEST root]$ last -n 20
test  pts/7        172.16.22.28    Mon Jun 24 23:37   still logged in   
test  pts/6        172.16.22.28    Mon Jun 24 23:36   still logged in   
test  pts/5        172.16.22.28    Mon Jun 24 18:35 - 23:45  (05:09)    
test  pts/2        172.16.22.28    Mon Jun 24 18:32 - 23:45  (05:12)    
test  pts/7        172.16.22.28    Mon Jun 24 15:04 - 15:50  (00:45)    
test  pts/6        172.16.22.28    Mon Jun 24 10:24 - 18:31  (08:06)    
test  pts/5        172.16.22.28    Mon Jun 24 10:24 - 18:31  (08:06)

通過上述兩種方式,我們需要排查是否有可疑用戶撵渡,可疑源IP融柬。如發(fā)現(xiàn)可疑用戶或可疑來源IP,我們需要對(duì)其進(jìn)行鎖定趋距。假如發(fā)現(xiàn)可疑用戶為test粒氧,鎖定方式如下:

passwd -l test

鎖定之后,有可能用戶還處于登錄狀態(tài)节腐,此時(shí)需要及時(shí)將此用戶剔出終端使其下線外盯。命令如下:

pkill -9 -t 終端號(hào)    此終端號(hào)就是上述w命令或last命令顯示出的第二列,如pts/6

另附上其他查看可疑用戶的方法:

1-1:查看是否有異常的系統(tǒng)用戶

cat /etc/passwd

1-2:查看是否產(chǎn)生了新用戶翼雀,UID和GID為0的用戶

grep "0" /etc/passwd

1-3:查看passwd的修改時(shí)間饱苟,判斷是否在不知的情況下添加用戶

ls -l /etc/passwd

1-4:查看是否存在特權(quán)用戶

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

1-5:查看是否存在空口令賬號(hào)

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

2、查看系統(tǒng)日志

可查看的系統(tǒng)日志有:/var/log/messages狼渊,/var/log/secure箱熬,各用戶下的.bash_history文件,特別是root用戶下的.bash_history文件狈邑,這個(gè)文件中記錄著用戶執(zhí)行的所有命令坦弟。常見日志詳情如下:

/var/log/boot.log:錄了系統(tǒng)在引導(dǎo)過程中發(fā)生的事件,就是Linux系統(tǒng)開機(jī)自檢過程顯示的信息
/var/log/lastlog :記錄最后一次用戶成功登陸的時(shí)間官地、登陸IP等信息
/var/log/messages :記錄Linux操作系統(tǒng)常見的系統(tǒng)和服務(wù)錯(cuò)誤信息
/var/log/secure :Linux系統(tǒng)安全日志,記錄用戶和工作組變壞情況烙懦、用戶登陸認(rèn)證情況
/var/log/btmp :記錄Linux登陸失敗的用戶驱入、時(shí)間以及遠(yuǎn)程IP地址
/var/log/syslog:只記錄警告信息,常常是系統(tǒng)出問題的信息,使用lastlog查看
/var/log/wtmp:該日志文件永久記錄每個(gè)用戶登錄亏较、注銷及系統(tǒng)的啟動(dòng)莺褒、停機(jī)的事件,使用last命令查看
/var/run/utmp:該日志文件記錄有關(guān)當(dāng)前登錄的每個(gè)用戶信息雪情。如 who遵岩、w、users巡通、finger等就需要訪問這個(gè)文件
詳見https://blog.csdn.net/dubendi/article/details/78782691

栗子1:查看是否有用戶嘗試進(jìn)行暴力破解服務(wù)器尘执,可通過在/var/log/secure文件中進(jìn)行查看

最近登錄失敗的次數(shù)統(tǒng)計(jì)概覽

cat /var/log/secure | grep 'Failed password' | grep sshd | awk '{print $1,$2}' | sort | uniq -c
[test@TEST ~]# cat /var/log/secure | grep 'Failed password' | grep sshd | awk '{print $1,$2}' | sort | uniq -c
      5 Jun 23
     12 Jun 24

具體登錄失敗詳情

cat /var/log/secure|grep Failed
[root@TEST ~]# cat /var/log/secure|grep Failed
Jun 23 10:21:00 TEST sshd[26029]: Failed password for test from 172.16.120.21 port 56835 ssh2
Jun 23 11:07:36 TEST sshd[27755]: Failed password for test from 172.22.193.22 port 1036 ssh2
Jun 23 21:33:33 TEST sshd[17490]: Failed password for test from 172.22.193.196 port 1056 ssh2
Jun 23 22:58:17 TEST sshd[20290]: Failed password for test from 172.22.193.4 port 35437 ssh2

栗子2:查看用戶對(duì)服務(wù)器操作的歷史記錄

執(zhí)行history命令,或查看用戶根目錄下的.bash_history文件

history

3宴凉、查看可疑進(jìn)程

檢查可疑進(jìn)程的命令很多誊锭,例如ps,top等弥锄。找到對(duì)應(yīng)可疑進(jìn)程的pid后丧靡,我們可以查看對(duì)應(yīng)PID目錄下exe文件的信息,命令如下:

ls -al /proc/2001/exe
其中2001就是pid的值

我們可以殺掉進(jìn)程籽暇,并刪除進(jìn)程所在的文件路徑温治。

當(dāng)然,有些時(shí)候攻擊者將攻擊程序隱藏得很深戒悠,例如rootkits后門程序熬荆,在這種情況下ps、top救崔、netstat等命令也有可能被替換惶看,如果再通過系統(tǒng)自身的命令取檢查可疑進(jìn)程就變得不可信,此時(shí)可借助于第三方的檢查工具來檢查系統(tǒng)可疑程序六孵。如chkrootkit纬黎、RKHunter、webshellkiller等工具劫窒,通過這些工具可以很方便的發(fā)現(xiàn)系統(tǒng)被替換或篡改的程序本今。下面簡(jiǎn)單介紹下chkrootkit的使用方法。

3-1主巍、下載

http://www.chkrootkit.org/download/

3-2冠息、上傳服務(wù)器后解壓

tar -xzvf chkrootkit.tar.gz

3-3、進(jìn)入解壓后的目錄孕索,編譯執(zhí)行

make

3-4逛艰、利用root用戶執(zhí)行檢查(進(jìn)入安裝目錄)

./chkrootkit | grep INFECTED 如果有信息顯示,則有問題搞旭;否則安全散怖。

4菇绵、查看可疑定時(shí)任務(wù)

攻擊者有可能未在當(dāng)前時(shí)間執(zhí)行攻擊,有可能設(shè)置了定時(shí)任務(wù)镇眷,在一定時(shí)間執(zhí)行攻擊任務(wù)咬最。此時(shí)需要我們檢查下是否存在可疑定時(shí)任務(wù)。如下三個(gè)命令可綜合一起查看:

crontab -l
cat /etc/crontab
ls /etc/cron.*

如果定時(shí)任務(wù)為可疑程序欠动,則刪除定時(shí)任務(wù)并將可疑腳本刪除永乌。

5、檢查系統(tǒng)啟動(dòng)項(xiàng)

很多攻擊者攻擊的惡意程序會(huì)修改系統(tǒng)啟動(dòng)項(xiàng)具伍,這樣即使我們對(duì)系統(tǒng)進(jìn)行重啟時(shí)翅雏,惡意程序也能自動(dòng)啟動(dòng)。所以為了避免此類問題沿猜,我們應(yīng)該查看系統(tǒng)可疑啟動(dòng)項(xiàng)枚荣,及時(shí)刪除處理。

chkconfig --list

等級(jí)0表示:表示關(guān)機(jī)

等級(jí)1表示:?jiǎn)斡脩裟J?/p>

等級(jí)2表示:無(wú)網(wǎng)絡(luò)連接的多用戶命令行模式

等級(jí)3表示:有網(wǎng)絡(luò)連接的多用戶命令行模式

等級(jí)4表示:不可用

等級(jí)5表示:帶圖形界面的多用戶模式

等級(jí)6表示:重新啟動(dòng)

6啼肩、檢查異常文件

檢查異常文件橄妆,我們的重點(diǎn)可以放在如下幾個(gè)地方:

1、很多應(yīng)用系統(tǒng)有上傳文件的功能祈坠,對(duì)于異常文件害碾,我們可以重點(diǎn)關(guān)注上傳文件的目的地,即上傳路徑赦拘。查看可疑文件慌随,不在上傳白名單目錄下的文件。

2躺同、查看敏感目錄阁猜,如/tmp目錄下的文件,同時(shí)注意隱藏文件夾蹋艺。

一些基本查看異常文件命令如下所示:

find / -uid 0 –perm -4000 –print
find / -name "…" –print
find / -name ".." –print
find / -name "." –print
find / -name " " –print

我們可以根據(jù)需要進(jìn)行查看剃袍。

以上便是本人的一點(diǎn)總結(jié),有誤之處捎谨,還請(qǐng)不吝指出民效。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市涛救,隨后出現(xiàn)的幾起案子畏邢,更是在濱河造成了極大的恐慌,老刑警劉巖检吆,帶你破解...
    沈念sama閱讀 222,104評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件舒萎,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡蹭沛,警方通過查閱死者的電腦和手機(jī)逆甜,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門虱肄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人交煞,你說我怎么就攤上這事≌寤颍” “怎么了素征?”我有些...
    開封第一講書人閱讀 168,697評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)萝挤。 經(jīng)常有香客問我御毅,道長(zhǎng),這世上最難降的妖魔是什么怜珍? 我笑而不...
    開封第一講書人閱讀 59,836評(píng)論 1 298
  • 正文 為了忘掉前任端蛆,我火速辦了婚禮,結(jié)果婚禮上酥泛,老公的妹妹穿的比我還像新娘今豆。我一直安慰自己,他們只是感情好柔袁,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,851評(píng)論 6 397
  • 文/花漫 我一把揭開白布呆躲。 她就那樣靜靜地躺著,像睡著了一般捶索。 火紅的嫁衣襯著肌膚如雪插掂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評(píng)論 1 310
  • 那天腥例,我揣著相機(jī)與錄音辅甥,去河邊找鬼。 笑死燎竖,一個(gè)胖子當(dāng)著我的面吹牛璃弄,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播底瓣,決...
    沈念sama閱讀 40,992評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼谢揪,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了捐凭?” 一聲冷哼從身側(cè)響起拨扶,我...
    開封第一講書人閱讀 39,899評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎茁肠,沒想到半個(gè)月后患民,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,457評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡垦梆,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,529評(píng)論 3 341
  • 正文 我和宋清朗相戀三年匹颤,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了仅孩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,664評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡印蓖,死狀恐怖辽慕,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情赦肃,我是刑警寧澤溅蛉,帶...
    沈念sama閱讀 36,346評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站他宛,受9級(jí)特大地震影響船侧,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜厅各,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,025評(píng)論 3 334
  • 文/蒙蒙 一镜撩、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧队塘,春花似錦袁梗、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至投放,卻和暖如春奈泪,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背灸芳。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工涝桅, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人烙样。 一個(gè)月前我還...
    沈念sama閱讀 49,081評(píng)論 3 377
  • 正文 我出身青樓冯遂,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親谒获。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蛤肌,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,675評(píng)論 2 359