tft每日頭條

 > 科技

 > 網絡服務器不被黑客入侵

網絡服務器不被黑客入侵

科技 更新时间:2024-07-22 03:06:48

網絡服務器不被黑客入侵?應急響應包含組織為了應對突發/重大信息安全事件的發生所做的準備,以及在事件發生後所采取的措施,是信息安全從業者的常見工作之一應急響應并非僅僅是在系統被黑之後做一系列的補救措施,而是需要在平時就進行被黑的準備和避免被黑,下面我們就來聊聊關于網絡服務器不被黑客入侵?接下來我們就一起去了解一下吧!

網絡服務器不被黑客入侵(當我們的網絡服務器或應用被黑客攻擊後應該怎麼辦)1

網絡服務器不被黑客入侵

應急響應包含組織為了應對突發/重大信息安全事件的發生所做的準備,以及在事件發生後所采取的措施,是信息安全從業者的常見工作之一。應急響應并非僅僅是在系統被黑之後做一系列的補救措施,而是需要在平時就進行被黑的準備和避免被黑。

但實際上都是當出現問題後,外部或内部的應急小組才會介入。

但從個人實際經驗考慮,在整個過程中不要被客戶或現場的運維人員誤導。而且操作前需先征得客戶許可。因為實際的應急情況會比較複雜,因此需根據實際情況進行靈活處置。

下面說一下以前偶爾給内部員工培訓時,用到的一些資料

今天隻講應急響應的基本流程

1.了解情況
  1. 發生時間:詢問客戶發現異常事件的具體時間,後續的操作要基于此時間點進行追蹤分析。
  2. 受影響系統類型:詢問具體的操作系統類型及相關情況,以便後續的應急處置。
    1. windows/linux
    2. 财務系統/OA系統/官網,系統重要性,是否可關停
    3. 是否有弱口令,遠程管理端口是否開放
    4. 都開放了什麼端口,有什麼服務,服務是否存在風險性
    5. 必要的話現場檢測,不要完全相信聽來的東西
  3. 異常情況:
    1. 文件被加密
    2. 設備無法正常啟動
    3. 勒索信息展示
    4. CPU利用率過高
    5. 網頁挂馬/黑鍊
    6. 對外發送異常請求
    7. 對外發送垃圾短信
    8. 等非正常的情況
  4. 已有的處置措施:
    1. 之前是否存在此類問題
    2. 是否在出現問題後配置了新的策略
    3. 是否已有第三方已進行了應急處理,處理結果是什麼
    4. 是否有其他處置措施
  5. 系統架構/網絡拓撲:是否能提供網絡拓撲圖
  6. 能否提供以下日志
    1. 服務器日志
    2. 應用日志,重點web日志
    3. 數據庫日志
  7. 已有的安全設備
    1. 終端殺軟
    2. 防火牆
    3. WAF
    4. 流量分析設備
  8. 基本的應急處置方案
    1. 臨時處置方案
    2. 勒索病毒處置方案
    3. 挖礦程序處置預案
    4. 網頁挂馬處置預案
    5. DDOS處置預案
    6. 内部數據洩露處置預案
    7. 其他處置預案
  9. 應急報表:
    1. 包含下述應急方法
    2. 端口開放情況,及各個端口應用分析,處置建議
2. 遏制傳播風險
  • 禁止被感染主機使用U盤,移動硬盤。如必須使用做好備份
  • 禁用所有無線/有線網卡或直接拔網線
  • 關閉相關端口
  • 劃分隔離網絡區域
  • 封存主機,相關數據備份
  • 被感染主機應用服務下線
  • 被感染主機部分功能暫停
  • 被感染主機相關賬号降權,更改密碼
  • 勒索病毒處置 - 核心是止損,這點非常重要
    • 通過各類檢查設備和資産發現,确定感染面;
    • 通過網絡訪問控制設備或斷網隔離感染區域,避免病毒擴散;
    • 迅速啟動殺毒或備份恢複措施,恢複受感染主機的業務,恢複生産。(這點最重要,因為是保障業務的關鍵動作)
    • 啟動或部署監測設備,針對病毒感染進行全面監測,避免死灰複燃。
    • 在生産得到恢複并無蔓延之後,收集所有相關的樣本、日志等,開展技術分析,并尋找感染源頭,并制定整改計劃。
3.已知高危漏洞排查
  • 可與下面的步驟同時進行,掃描高危漏洞。但要注意掃描産生的大量日志不要影響漏洞排查
4.系統基本信息
  • Windows

1)查看當前系統的補丁信息

systeminfo

  • Linux

1)列出系統arp表,重點查看網關mac地址

arp -a

2)文件搜索命令

find / -name ".asp"

  • 重點關注

1)系統内是否有非法賬戶

2)系統中是否含有異常服務程序

3)系統是否存在部分文件被篡改,或發現有新的文件

4)系統安全日志中的非正常登陸情況

5)網站日志中是否有非授權地址訪問管理頁面記錄

6)根據進程、連接等信息關聯的程序,查看木馬活動信息。

7)假如系統的命令(例如netstat ls 等)被替換,為了進一步排查,需要下載一新的或者從其他未感染的主機拷貝新的命令。

8)發現可疑可執行的木馬文件,不要急于删除,先打包備份一份。

9)發現可疑的文本木馬文件,使用文本工具對其内容進行分析,包括回連IP地址、加密方式、關鍵字(以便擴大整個目錄的文件特征提取)等。

5.異常連接排查
  • Windows

1)查看目前的網絡連接,定位可疑的 ESTABLISHED netstat -ano

netstat -ano | findstr ESTABLISH

2)查看端口對應的pid

netstat -ano | findstr "port"

netstat -nb顯示在創建每個連接或偵聽端口時涉及的可執行程序,需要管理員權限,這條指令對于查找可疑程序非常有幫助。

6.正在運行的異常進程排查
  • Windows

1)查看異常進程 任務管理器

2)顯示運行在本地或遠程計算機上的所有進程

tasklist | findstr 11223 //根據netstat定位出的異常進程的pid,再通過tasklist命令進行進程定位

1)根據 wmic process 獲取進程的全路徑

wmic process | findstr "xx.exe"

2)查看進程的詳細信息,比如進程路徑,進程ID,文件創建日期,啟動時間等

"開始->運行->msinfo32->軟件環境 -> 正在運行任務"

1)關閉某個進程

wmic process where processid="2345" delete

  • Linux

1)查找進程pid

netstat -antlp 先找出可疑進程的端口

lsof -i:port 定位可疑進程pid

2)通過pid查找文件

linux每個進程都有一個對應的目錄

cd /proc/pid号 即可進入到該進程目錄中

ls -ail 結果中exe對應的就是該pid程序的目錄

ls -ail |grep exe

3)查看各進程占用的内存和cpu

top

4)顯示當前進程信息

ps

5)實現某個進程的精确查找

ps -ef | grep apache

6)結束進程

kill -9 pid

7)查看進程樹

pstree -p

查找異常進程是否有父進程

8)也可以直接搜索異常進程的名程來查找其位置,

find / -name 'xxx'

7.異常賬号排查
  • Windows

1)圖形化界面查看當前的賬戶和用戶組

lusrmgr.msc

2)查看當前賬戶情況

net user

3)查看某個賬戶的詳細信息

net user Guest

4)查看當前組的情況

net localgroup administrators

5)查看當前系統會話,比如查看是否有人使用遠程終端登陸服務器

query user 踢出該用戶 `logoff ID` ID是上面查詢出來的。也可能是用戶名

  • Linux

1)查看utmp日志,獲得當前系統正在登陸賬戶的信息及地址

w

2)獲得系統前N次的登陸記錄

last | more

3)查看賬号情況

cat /etc/passwd

查找/etc/passwd 文件, /etc/passwd 這個文件是保存着這個 linux 系統所有 用戶的信息,通過查看這個文件,我們就可以嘗試查找有沒有攻擊者所創建的用 戶,或者存在異常的用戶。我們主要關注的是第 3、4 列的用戶标識号和組标識 号,和倒數一二列的用戶主目錄和命令解析程序。一般來說最後一列命令解析程 序如果是設置為 nologin 的話,那麼表示這個用戶是不能登錄的,所以可以結合 我們上面所說的 bash_history 文件的排查方法。首先在/etc/passwd 中查找命令 解釋程序不是 nologin 的用戶,然後再到這些用戶的用戶主目錄裡,找到 bash_history,去查看這個用戶有沒執行過惡意命令。

/etc/passwd中一行記錄對應着一個用戶,每行記錄又被冒号(:)分隔為7個字段, 其格式和具體含義如下:

用戶名:口令:用戶标識号:組标識号:注釋性描述:主目錄:登錄 Shell

注意:無密碼隻允許本機登陸,遠程不允許登陸,某個版本之後好像因為安全問題,passwd文件不再有密碼了

4)查看賬号情況

cat /etc/shadow

root:$6$oGs1PqhL2p3ZetrE$X7o7bzoouHQVSEmSgsYN5UD4.kMHx6qgbTqwNVC5oOAouXvcjQSt.Ft7ql1WpkopY0UV9ajBwUt1DpYxTCVvI/:16809:0:99999:7:::

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

這裡查賬号感覺好一點,一般系統的賬号都是沒有密碼的,所以找最長的那幾個,那就是有密碼的賬戶,很可能就是被黑客添加的後門賬戶

5)linux非root用戶文件夾所在位置

/home

6)查看所有賬戶最後一次登陸時間

lastlog

7)顯示用戶登陸錯誤的記錄

lastb

檢查暴力破解

8)顯示用戶最近登陸信息

last

數據源為

/var/log/wtmp

/var/log/wtmp.1

/var/log/btmp

/var/log/btmp.1

9)查看當前登陸用戶

who

(tty本地登陸 pts遠程登錄)

10)查看當前時刻用戶行為

w

11)查看登陸多久,多少用戶,負載

uptime

12)禁用賬戶,賬号無法登陸,/etc/shadow 第二欄為!開頭

usermod -L user

13)删除user用戶

userdel -r user

14)創建用戶

useradd admin #創建一個用戶,在home目錄下不創建文件夾

passwd admin #修改之前創建的賬号的密碼

adduser admin2 #是一個比較完善的創建用戶的命令,會在home目錄下生成一個admin2的文件夾

15)删除用戶

userdel admin2 #這樣删除的話不完全,home目錄下的admin2目錄不會删除

userdel -rf admin #-r 完全删除一個賬戶 -f強制删除

如果遇到賬戶删除顯示已經删除,但創建同名的用戶提示用戶已存在的情況,嘗試以下方法進行删除.手動删除passwd、shadow、group裡面用戶相關字段,以及用戶相關的log和mail,并強制删除home目錄下用戶的文件夾.

/home /etc/passwd /etc/group /var/spool/mail

8.異常文件分析
  • Windows

1)查看文件時間

右鍵查看文件屬性,查看文件時間

2)Recent 是系統文件夾,裡面存放着你最近使用的文檔的快捷方式,查看用 戶 recent 相關文件,通過分析最近打開分析可疑文件

%UserProfile%\Recent

3)通過文件時間屬性來定位可疑文件:根據文件夾内文件列表時間進行排序,查找可疑文件。當然也可以搜索指 定日期範圍的文件及文件 查看文件時間,創建時間、修改時間、訪問時間,黑客通過菜刀類工具改 變的是修改時間。所以如果修改時間在創建時間之前明顯是可疑文件

  • Linux

1)分析文件日期

stat xx.asp

2)返回最近24小時内修改過的文件

find ./ -mtime 0

返回的是前48~24小時修改過的文件 find ./ -mtime 1

返回10天内修改過的文件,可以把最近幾天的數據一天天的加起來 find ./ -mtime 0 -o -mtime 1 -o -mtime 2

查找 24 小時内被修改的 php 文件 find ./ -mtime 0 -name "*.php"

3)敏感目錄的文件分析 [類/tmp 目錄,命令目錄/usr/bin /usr/sbin 等], 查看 tmp 目錄下的文件➜

ls –alt /tmp/ | head -n 10

這樣是按時間順序查出來的結果

4)特殊權限文件查找

find / *.jsp -perm 777

find / -perm 777 |more

find / *.sh -perm 777|grep .sh

5)隐藏的文,以 "."開頭的具有隐藏屬性的文件,當前目錄查找

ls -ar |grep "^\."

6)i linux文件不可修改權限

chattr I filename 給文件添加不可修改權限

chattr -I filename 将文件的不可修改權限去掉

lsattr filename 查看文件是否設置了相關權限

如果設置了該參數,則無論任何人想要删除改文件均需要将此權限去掉

7)a linux文件不可修改權限

chattr a filename 給文件添加隻追加權限

chattr -a filename 将文件的隻追加權限去掉

lsattr filename 查看文件的相關權限設置

這個權限讓目标隻能追加,不能删除,而且不能通過編輯器追加

8)查看ssh相關目錄有無可疑的公鑰存在

Redis(6379) 未授權惡意入侵,即可直接通過redis到目标主機導入公鑰

目錄:/etc/ssh ./.ssh/

9.啟動項排查
  • Windows

1)查看開機啟動有無異常文件

msconfig

2)win10開機啟動文件夾

C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

快捷查找方法,找一個安裝好的程序的快捷方式,右鍵打開文件位置,再進入該目錄下的啟動目錄即可。StartUp

3)win7開機啟動文件夾

C:\Users\rpkr\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

查找方式,開始>所有程序>啟動 ,03查找同此方法

4)在注冊表中查看開機啟動項是否異常

開始->運行->regedit,打開注冊表,查看開機啟動項是否正常,特别注意如下三個注冊表項:

HKEY_CURRENT_USER\software\micorsoft\windows\currentversion\run

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run

HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Runonce

檢查右側是否有啟動異常的項目,如有請删除,并建議安裝殺毒軟件進行病毒查殺,清除殘留病毒或木馬

  • Linux

1)查看開機啟動項内容

ls -alt /etc/init.d/

/etc/init.d 是 /etc/rc.d/init.d 的軟連接

2)啟動項文件

more /etc/rc.local

/etc/rc.d/rc[0~6].d

ls -l /etc/rc.d/rc3.d/

ll /etc |grep rc

3)定時任務-基本使用

1.利用crontab創建計劃任務

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

2.删除每個用戶cront任務(慎重:删除所有的計劃任務)

crontab -r

3.使用編輯器編輯當前的crontab文件

crontab -e

如:*/1 * * * * echo ""hello word"" >> /tmp/test.txt 每分鐘寫入文件

4.利用anacron實現異步定時任務調度

每天運行 /home/bacup.sh 腳本

vi /etc/anacrontab

#daily 10 example.daily /bin/bash /home/backup.sh

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

ls -al /var/spool/cron/ 查看隐藏的計劃任務

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

5.查看分析任務計劃

crontab -u <-l, -r, -e>

-u 指定一個用戶

-l 列出某個用戶的任務計劃

-r 删除某個用戶的任務

-e 編輯某個用戶的任務(編輯的是/var/spool/cron下對應用戶的cron文件,也可以直接修改/etc/crontab文件)

10.計劃任務排查(定時任務)
  • Windows

1)查看Windows 計劃任務

taskschd.msc

或者 【程序】➜【附件】➜【系統工具】➜【任務計劃程序】

  • Linux

1)查看當前計劃任務有哪些

crontab -l

是否有後門木馬程序啟動相關信息

2)查看分析計劃任務

crontab -u <-l, -r, -e>

3)查看 etc 目錄任務計劃相關文件

ls -al /etc/cron*

cat /etc/crontab

4)此處要注意隐藏的計劃任務,在linux中以.開頭的文件為隐藏文件,要使用

ls -al來查看

5)定時任務 - 入侵排查

重點關注以下目錄中是否存在惡意腳本

/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/*

小技巧:more /etc/cron.daily/* 查看目錄下所有文件

11.日志排查
  • Windows
  • 查看防護設備的日志

打開日志管理器

eventvwr.msc

  • 查看暴力破解問題,篩選事件ID,win2008 4625
  • Linux

1)查看曆史命令記錄文件

cat /root/.bash_history |more

,每個賬戶對應的文件夾下都有這樣一個日志文件,但感覺記錄的不是特别全。可以直接在root下搜索 .bash_history 這個文件。

2)如有

/var/log/secure

日志,可觀察其進行暴力破解溯源

3)ubuntu 建議使用

lastb

last

進行暴力破解溯源

/var/log/message 系統啟動後的信息和錯誤日志,

/var/log/secure 與安全相關的日志信息

/var/log/maillog 與郵件相關的日志信息

/var/log/cron 與定時任務相關的日志信息

/var/log/spooler UUCP和news設備相關日志信息

/var/log/boot.log 進程啟動和停止相關的日志消息

4)linux系統日志相關配置文件為/etc/rsyslog.conf(syslog.conf) 主要找 wget\ssh\scp\tar\zip 添加賬戶修改密碼一類的

  • web服務器

1)無論任何web服務器,都需要關注以下的日志

access_log

error_log

access.log

error.log

2)apache日志位置

應通過httpd.conf配置來判斷。

在httpd.conf中搜索未被注釋的、以指令字CustomLog為起始的行,該行即指定了日志的存儲位置。

搜索可使用文本搜索,也可使用grep進行:grep -i CustomLog httpd.conf | grep -v ^#

搜索結束後會獲得類似如下的搜索結果:

CustomLog /var/mylogs/access.log common

其中 /var/mylogs/access.log即為客戶日志的路徑。

若此處未指明日志的完整路徑而隻是列舉日志的文件名(如:access.log),

則意指該文件存儲與默認的日志存儲目錄下(即,/var/log/httpd 或 /var/httpd 目錄)。

3)IIS日志位置

IIS日志默認存儲于 %systemroot%\system32\LogFiles\W3SVC目錄中, 日志命名方式為exYYMMDD.log(YYMMDD指:年 月 日)。 但IIS日志路徑也可通過用戶配置來指定,通過WEB站點配置可确認其位置: WEB站點 — 屬性 — 網站 — W3C擴展日志文件格式 — 屬性 — 日志文件目錄

  • 數據庫

1)mysal - cat mysql.log|grep union

12.恢複階段
  • 此階段以客戶為主,僅提供建議
  1. webshell/異常文件清除
    1. 相關樣本取樣截圖留存
  2. 恢複網絡
  3. 應用功能恢複
  4. 補丁升級
  5. 提供安全加固措施,推薦切合的安全産品
13.跟蹤總結
  1. 分析事件原因
    1. 攻擊來源,IP
    2. 攻擊行為分析,弱口令、可以導緻命令執行的漏洞等
  2. 輸出應急報告
  3. 事後觀察
  4. 提供加固建議
,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关科技资讯推荐

热门科技资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved