伺服器安全管理

advertisement
伺服器安全管理
成大計網中心
楊峻榮
yang@mail.ncku.edu.tw
大綱
資安概念與本校資安機制
 Windows伺服器安全管理
 Linux伺服器安全管理

1
資安概念與本校資安機制
2
資訊安全概念(觀念)






看不見問題,並不代表沒有問題。
資訊安全是一個持續性的工作,而其防護措施也沒有極
限。
安全機制非萬能,也沒有100%安全的系統,因此防護的
目的,是在提高攻擊的成本。
了解真正問題點(弱點),才能施以正確及合乎效益的控
制措施。
便利性和安全性總是相衝突的,實施的控制措施應該是
在合理的平衡點。
資訊安全領域不只是網路安全(駭客,病毒)而已,而
是機密性、完整性、可用性及適法性。
3
資訊安全概念(實務)

系統基本防護措施








防毒軟體、防火牆、patch update 。
裝設防毒軟體並不代表不會中毒,裝設防火牆或入侵防禦系
統也不代表就不可能被入侵。
重裝OS是高成本的解決方式,並且可能會引發新的問題
(如忘記補Patch、組態遺失)。
不要開啟無法確定或不必要之Service、需開放者也須考量
開放之範圍與程度。
對於協力廠商,要有一套管制及因應措施。
對於系統必須有一套預防、事件處理及善後處理的措施。
系統建立(軟硬體)須經安全性評估。
定期資料備份及回復測試,也需定期檢視備份之來源與目
的之設定。
4
資訊安全投資之成本效益
效果
成本
5
資訊安全弱點








系統漏洞
人為疏失
因服務需要或過於注重便利性
無危機意識(事前預防)
無所謂(事發後的處理方式及態度)
無專人負責之系統
實體環境不良
測試環境
6
資訊安全威脅








病毒或worm
DoS或DDoS
間諜程式
後門或木馬程式
暴力破解
社交工程
網路掃瞄(無線或有線)
廣告(垃圾)信件轉發
7
駭客入侵程序

1:偵察 (Reconnaissance)


2:掃瞄 (Scanning)



找尋有那些門戶
3:特徵採集 (Fingerprinting)


找尋目標
找尋有那些漏洞
4:入侵 (Break-in)
5:入侵後活動





提升權限 :可為所欲為
降低主機安全設定:方便操作
修改系統命令:避免被偵測
刪除電腦稽核記錄:滅跡
安裝後門程式:方便再度光臨
8
惡意程式破壞程序
原有漏洞
(1)經由原有漏洞入侵或感染。
(1)
往外攻擊或感染
(4)
開啟新後門
(2)
(3)
(2)建立檔案或修改組態。
(3)破壞及向外感染或攻擊。
(4)開啟新漏洞或後門以便下
次不費吹灰之力可再進入系
統。
安全邊界
惡意程式清除措施可解決(2)、(3)及部份(4),因此也
必須清除或阻絕原有漏洞(1)。
9
發現惡意程式執行的處置
防堵:阻絕再次感染之途徑及災情擴大。
 清除:清除已存在之惡意程式。
 偵測:持續偵測預防惡意程式再次感染
及確認已完全清除。

10
本校常見之資安事件







病毒
入侵(跳板較多,目地較少)
DOS(阻絕服務)
匿名信件或廣告信
誹謗事件
被當成釣魚網站
網頁置換
11
本校資安措施

網路安全設備


防毒機制




與單位系所配合
對外攻擊IP管制
事件通報與諮詢


提供個人及Server之防毒軟體
目前提供symantec、趨勢officescan、Avira
IP控管及列管


防火牆、防毒牆、入侵防禦系統
yang@mail.ncku.edu.tw;61016
弱點掃描

DragonSoft、Nessus,並給予報告及建議
12
本校資安措施

資安及軟體檢視


伺服器控管




伺服器IP address、services、負責人列管
教育訓練


每學期一次
針對一般使用者、網管或系統管理人員
事件處理小組
處理各種緊急或重大之資安事件
訊息通告


以www或mail方式發佈資安訊息
http://www.cc.ncku.edu.tw/security/
13
WINDOWS 安全管理
14
系統基本安全機制

Windows系統安全三要素
 防毒軟體
 防火牆
 Windows
update
15
防毒軟體







某些防毒軟體分server及個人版OS(Avira…)。
一般防毒軟體(檔案防護型)之基本功能為即時掃
瞄和檔案掃瞄。
郵件及Web掃瞄(client端)及某些附屬功能如防火
牆、入侵偵測可視需要開啟。
某些針對服務(mail、ftp、Web…)之防毒軟體(非
檔案防護型)視政策而定安裝。
系統只需安裝一套防毒軟體即可。
時常檢視防毒軟體記錄及病毒碼之有效性。
一些免費掃毒軟體(無防毒功能)在疑似中毒之處
理有不錯之效果,並,可應用多套以避免有漏網之
魚。
16
偵測到外來攻擊時防毒軟體反應


中毒之定義:惡意程式已寫入檔案中,並已啟動執行
防毒軟體針對外來攻擊之反應(尚未中毒)



偵測
 由pattern比對是否為Virus,記錄檔案所在位置供處理階
段參考
 實例:防毒體體找到病毒並知道它要寫入那個位置
阻擋
 阻止病毒資料進入磁碟機
 實例:所以病毒並未寫入
處理
 依設定決定對於此檔案清除,刪除或隔離
 實例:防毒軟體要去刪該檔,當然不存在
17
已確定中毒之處理


拔掉網路線
由別台電腦下載掃毒軟體(可多種)並copy至問題電腦中

Dr.Web Curelt!之免費掃毒軟體 http://www.freedrweb.com/download+cureit/
 趨勢system clean : 下載
http://www.trendmicro.com/ftp/products/tsc/sysclean.com 及
http://www.trendmicro.com.tw/widget/patterns/default.asp 之最新病毒碼並
解壓縮於同一資料夾下(含sysclean.com), 再執行sysclean
 Kaspersky Virus Removal Tool 2010 :須安裝, 可於安全模式下安裝
http://support.kaspersky.com/viruses/avptool2010?level=2
 F-Secure Easy Clean: http://download.fsecure.com/estore/fseasyclean.exe



重開機至安全模式
執行全區掃瞄
假如有找到並清除



掃瞄完後檢視掃瞄結果,若有無法清除或刪除之惡意檔案,以檔案總管看該檔
是否存在(注意檢視之前檔案總管之 工具/資料夾選項/檢視 之進階設定須點
選「顯示所有檔案及資料夾」及將「隱藏保護的作業系統檔案」勾勾去掉)。
持續監控
假如沒找到

求助
18
防火牆


防火牆管制方向是以建立連線方向而定,而非封包
傳輸方向。
防火牆政策
 正面表列:列表之政策開放,其餘管制;此方式較適
合伺服器佈署。
 負面表列:列表之政策管制,其餘開放。

基本Windows防火牆只針對程式之運作傳輸做管制
 因此可考量使用進階型防火牆(Vista、Windows7)或另
安裝防火牆(某些防毒軟體附屬功能)軟體。
 某些防火牆軟體附屬IPS功能。


某些服務應用程式(如IIS)可針對領域做管制。
時常檢視防火牆政策(基本型為例外清單)及連線記
錄。
19
防火牆設定例
20
Windows update

伺服器應考量是否必須設定auto update:
 是否因update後影響服務程式之執行
 是否先下載而更新再另行執行

自動更新時段之考量
 伺服器應選影響服務運作最小時執行
 一般平台

若需還原更新
 開始/控制台/新增移除程式(須勾選[顯示更新
])
 參考資訊:開始/Windows Update/檢視更新資料
21
自動更新視窗
22
帳號管理

使用者管理之目標
 無不當之使用者,如已離職、測試用、Guest
 有正確之使用權限
 有強固之密碼,降低遭暴力破解之機率

使用者與群組
 使用者:各別使用者之識別,各使用者之權限
依其隸屬那個群組而定
 群組:定義群組內各使用者之權限
23
群組
24
使用者隸屬何群組
25
服務(Service)管理

本講題伺服器之定義
凡舉提供TCP/IP應用服務皆可稱為伺服器(Server),而
非以硬體或OS來定義
 一般通用Server:WWW(http)、mail(SMTP、POP)、ftp



服務(Service)即會開啟TCP or UDP port供本機或外部
連接進行傳輸運作
開啟服務=啟動程式




定義於 控制台/系統管理工具/服務
登錄表啟動描述
手動執行啟動及其他
User 啟動描述


\Documents and Settings\<用戶名字>\「開始」功能表\程式\啟動
\Documents and Settings\All Users 「開始」功能表\程式\啟動
26
登錄表啟動描述















HKEY_CURRENT_USER\Software\Microsoft\WindowsNT\CurrentVersion\Windows\load
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\R
un
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce\Setup
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Winlogon\U
serinit
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explor
er\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesO
nce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce\Setu
p
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
27
服務管理介面
28
Service監看工具

Netstat
 於命令提示字元輸入

netstat -ab
ProcessExplorer
 顯示各process之狀態

CurrPorts
 顯示TCP/UDP各port之連線狀況及其執行之程
式
 可設定Auto Refresh
 Freeware
29
CurrPorts(cports)
30
程序(process)管理


了解目前系統中各程序執行之狀況及其所使用
之資源。
就安全角度而言,是了解是否有異常之程序在
執行。
 被植入之惡意程式
 佔用大量資源之程序

使用工具
 工作管理員TaskMgr(Ctrl+Alt+Del)
 ProcessExplorer

Freeware 可提供完整之程序資訊
31
工作管理員
32
ProcessExplorer
33
稽核(事件檢視)


經由日誌檔了解系統已發生之問題或潛在之問題
控制台/系統管理工具/事件檢視器 預設三種日誌
 應用程式日誌
 包含由應用程式或程式記錄的事件。例如,資料庫程式會將檔
案錯誤記錄在應用程式日誌中。要記錄哪些事件是由應用程式
的開發者所決定。
 安全性日誌
 會記錄正確及不正確的登入嘗試事件,以及資源使用的相關事
件,如建立、開啟或刪除檔案或其他物件。例如,如果啟用了
登入稽核,則安全性日誌中會記錄登入系統的嘗試。
 須開啟安全性原則
 系統日誌
 包含由 Window 系統元件記錄的事件。例如,啟動時驅動程式
或其他系統元件載入失敗,會記錄在系統日誌內。伺服器事先
決定系統元件所記錄的事件類型。
34
事件檢視器例
35
Windows事件識別碼
事件/報表
種類
登入事件
事件
識別碼
報表名稱說明
528
使用者成功登入電腦。
529
530
有人使用未知的使用者名稱或密碼錯誤的已知使用者名稱來試圖登入。
試圖登入的使用者帳戶是在非法時間進行登入。
531
有人使用已停用的帳戶試圖登入。
532
有人使用過期的帳戶試圖登入。
533
系統不允許這個使用者登入這部電腦。
534
使用者試圖以不被允許的登入類型來進行登入,例如透過網路、互動式、批次、服務或遠端
互動式。
535
指定的帳戶密碼已經過期。
536
沒有啟用 Net Logon 服務。
537
登入意圖因其他原因而失敗。
538
有使用者登出。
539
此帳戶在試圖登入時被鎖定。此事件可能暗示有人發動密碼攻擊,但沒有成功因而造成此帳
戶被鎖定。
540
網路登入成功。此事件指出遠端使用者成功地透過網路連線至伺服器上的本機資源,系統產
生權杖供網路使用者使用。
682
使用者重新連線至已經中斷的終端機服務工作階段。此事件指出有人連線至先前的終端機服
務工作階段。
683
使用者沒有登出就中斷終端機服務工作階段。當使用者透過網路連線至終端機服務工作階段
時就會產生此事件。此事件是顯示在終端機伺服器上。
36
Windows事件識別碼
事件/報表
種類
事件
識別碼
帳戶管理事
件
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
641
642
643
644
報表名稱說明
已建立使用者帳戶
已變更使用者帳戶類型
已啟用使用者帳戶
有人試圖變更密碼
已設定使用者帳戶密碼
已停用使用者帳戶
已刪除使用者帳戶
已建立安全性啟用的通用群組
已新增安全性啟用的通用群組成員
已移除安全性啟用的通用群組成員
已刪除安全性啟用的通用群組
已建立安全性啟用的本機群組
已新增安全性啟用的本機群組成員
已移除安全性啟用的本機群組成員
已刪除安全性啟用的本機群組
已變更安全性啟用的本機群組
已變更安全性啟用的通用群組
已變更使用者帳戶
已變更網域原則
已鎖定使用者帳戶
37
Windows事件識別碼
事件/報表
種類
帳戶登入事
件
物件存取
特殊權限使
用
事件
識別碼
報表名稱說明
672
673
已經成功發出並確認了驗證服務 (AS) 的票證。
已經授與了票證授與服務 (TGS) 的票證。
674
安全性原則更新了 AS 票證或 TGS 票證。
675
預先驗證失敗。
676
驗證票證要求失敗
677
沒有授與 TGS 票證。
678
帳戶成功地對應至網域帳戶。
680
辨識登入嘗試成功所用的帳戶。此事件也會指出用來驗證帳戶的驗證封裝。
681
有人試圖使用網域帳戶登入。
682
使用者重新連線至中斷的終端機服務工作階段。
683
使用者沒有登出就中斷終端機服務工作階段。
560
已授與對已存在物件的存取權。
562
564
物件的控制碼已關閉。
有人試圖開啟物件來將其刪除 (如果有指定 FILE_DELETE_ON_CLOSE 旗標,系統檔案就會使用
此識別碼)。
有人刪除了受保護的物件。
565
已授與對已存在的物件類型的存取權。
576
指定的特殊權限已新增至使用者的存取權杖 (當使用者登入時就會產生此事件)。
577
使用者試圖執行特許的系統服務操作。
578
特殊權限被用在受保護物件的已開啟控制碼上。
563
38
Windows事件識別碼
事件/報表
種類
程序追蹤
系統事件
原則變更
事件
識別碼
報表名稱說明
592
593
594
595
512
513
514
515
516
517
518
608
609
610
611
612
已建立新的處理程序。
處理程序已結束。
物件的控制碼被複製。
已取得物件的間接存取權。
Windows 正在啟動。
Windows 正在關機。
[本機安全性授權] 已經載入驗證封裝。
已經在 [本機安全性授權] 登錄信任的登入處理。
配置給安全性事件訊息佇列的內部資源已經用完,造成一些安全性事件訊息遺失。
已經清除安全性記錄檔。
[安全性帳戶管理員] 已載入通知封裝軟體。
已指派使用者權利。
已移除使用者權利。
已建立和另一個網域的信任關係。
已移除和另一個網域的信任關係。
已變更稽核原則。
768
偵測到某個樹系中的名稱空間元素和另一個樹系中的名稱空間元素發生衝突 (當某個樹系
中的名稱空間元素和另一個樹系中的名稱空間元素重疊時發生)。
39
Event Log Explorer





查閱系統的安全性、系統、應用程式以及其它
的紀錄事件。
能夠迅速地由這些被記錄下的事件中找出可能
導致你的系統發生錯誤的原因。
經由篩選功能快速找出關鍵訊息。
可備份及Export log 。
可查閱其他windows平台event log
 要有該主機之帳密權限。

freeware
40
Event Log Explorer 例
41
本機安全性原則

本機安全性原則
 安全性原則是由一些足以影響電腦安全性的安
全性設定所組合。
 編輯本機電腦上的帳戶原則及本機原則。

您可以使用本機安全性原則來控制:
 誰可以存取您的電腦。
 授權使用者可以使用電腦上的哪些資源。
 使用者或群組的動作是否會記錄到事件日誌中
42
本機安全性設定項目

帳戶原則


本機原則


用來設定加密資料的修復代理,並分配憑證信任清單 (CTL)、信
任授權單位等。
軟體限制原則


包括稽核原則、使用者權限指派及安全性選項,可用來控制使用
者登入環境、設定裝置的預設行為和存取性、控制網路存取的層
級、控制「系統關機」的行為及日誌稽核設定等。
公開金鑰原則


包括密碼及帳戶鎖定原則,可設定密碼最小長度、有效期限及帳
戶登入失敗因應措施等。
提供系統管理者用以識別軟體,並控制其在本機電腦上執行的能
力。
在本機電腦上的IP安全性原則

用來設定IPSec規則。
43
本機安全性設定-常用安全設定








安全性選項→啟用「互動式登入:不要顯示上次登入的使用者名稱」
 啟用此設定後,系統於登入時,會同時要求輸入使用者名稱及密碼,而不再自動顯示上次登入
的使用者名稱,如此可避免登入帳號洩露的風險。
安全性選項→停用「關機:允許不登入就將系統關機」。
 停用此設定後,在登入的對話框中關機的按鍵就會消失,如此可避免重要系統被任意關機的風
險。
安全性選項→啟用「互動式登入:不要求按 CTRL+ALT+DEL 鍵
 啟用此設定後,系統登入時即自動出現要求輸入使用者名稱及密碼的畫面,不須再按
「CTRL+ALT+DEL 鍵」,在某些情況下,對於一些入侵程式可以增加入侵系統的困難度。
密碼原則→設定「最小密碼長度:8 個字元」。
 設定此項後,使用者變更的密碼長度必須在 8 個字元以上,可避免密碼過短導致容易猜測的風
險。
帳戶原則→密碼原則→啟用「密碼必須符合複雜性需求」。
 啟用此設定後,系統會要求使用者變更的密碼必須包含英數及特殊符號混合的密碼,可避免密
碼遭暴力破解。
帳戶原則→密碼原則→設定「強制執行密碼歷程記錄:5 記憶的密碼」。
 設定此項後,系統會記住五組您先前輸入過的帳號,且系統會要求使用者變更的密碼不能與先
前五組相同。
帳戶原則→密碼原則→設定「密碼最長有效期:30 天」
 設定此項後,系統會在 30 天後,要求使用者變更密碼,可避免密碼因長期未更換,遭致暴力破
解。
本機原則→安全性選項→設定「帳戶:重新命名系統管理員帳戶」。
 設定此項後,可修改系統預設的系統管理員帳號 Administrator 為其他帳號,可增加惡意人士猜
測系統管理員帳號密碼的困難度。
44
本機安全性設定例
45
資料管理

資料保護目的




資料重要性分級


依資料(或檔案)之屬性(只讀or讀寫)施以不同的備份機制或管
制措施,例如讀寫檔案與只讀檔案備份頻率不同。
資料應用分類


依資料(或檔案)之重要性以不同的備份機制或管制措施。
資料屬性分類


備份
資料隱藏
防竄改
依業務應用or應用類別,施以不同的備份機制或管制措施及分
類。
資料儲存屬性

Online & offline
46
資料備份

針對資料之重要性,施以不同之備份媒體。






針對資料之重要性,施以不同之備份方式:






同分割區檔案複製:資料夾1->資料夾2。
不同分割區,同硬碟檔案複製: C: -> D:。
不同硬碟檔案複製:硬碟1->硬碟2。
不同儲存媒體之檔案複製:光碟、隨身碟、Tape…。
不同主機之檔案複製(備份) :異地備份
檔案複製
Windows 備份還原,可施以標準、增量、差異等不同備份方式。
其他備份軟體。
異地備援:針對online_date之異地access
針對資料之重要性,施以不同之備份頻率及保留版本。
需定期回復測試及審核備份範圍與媒體保存之安全性。
47
資料備份方式

本機檔案複製





檔案傳輸軟體



「製作備份」
壓縮打包工具winrar
製作光碟
遠端備份軟體(異地備份)


ftp
網芳間之檔案複製
備份軟體




同檔案系統(分割區)檔案複製(備份)
不同檔案系統(分割區)檔案複製(備份)
不同實體硬碟之檔案複製(備份)
不同儲存媒體之檔案複製(備份)
Backup_client -> Backup_server
異地備援

針對online_date之異地access
48
Windows 備份工具
49
資料加密隱藏




用以保護當該檔案被存取後(可能是遭入侵或不經意開放
權限)仍可維持其機密性。
也可使用一些軟體之附加功能保護,如winrar之密碼保護
軟體介紹: Microsoft Private Folder 1.0
 在您的帳號下有一個受密碼保護的資料夾叫做 “My
Private Folder”,來儲存您的私人檔案。
一些好用的加密的工具:
 http://www.slime.com.tw/d-21.htm
50
防資料竄改




一般是針對應用系統之資料,例如針對防網頁置換之專用
軟體。
應用系統在整個生命週期皆須有管控措施防止資料之竄改。
一些個人電腦之安全軟體也有附加功能,但只針對特定組
態,如登錄表。
可利用一些 checksum tool來檢查檔案是否遭修改。


軟體名稱: checksum tool
以檔案總管顯示之「修改日期」及「大小」來判斷,更精
確的以檔案之「內容」來判斷。
51
Checksum Tool 例
52
IIS(網際網路資訊服務)

提供之Service
 Web
server
 FTP server
 SMTP server

管理介面
 系統管理工具->Internet服務管理員
 使用設定伺服器管理
53
管理 Web server


根目錄最好不用預設值且與系統硬碟分開
連線
 限制數目與連線逾時

紀錄檔
 C:\WINDOWS\system32\Logfiles

路徑與權限設定
 含瀏覽目錄、寫入、讀取
 一般網站不要設瀏覽目錄及寫入

目錄安全性
 IP位址及網域名稱限制
54
IIS管理界面例
55
IIS管理界面例
56
IIS管理界面例
57
IIS log 關鍵欄位
58
W3C Extended Log File Fields
Field
Appears As
Description
Default
Y/N
Y
Y
Date
Time
date
time
The date on which the activity occurred.
The time, in coordinated universal time (UTC), at which the activity
occurred.
Client IP Address
User Name
c-ip
cs-username
The IP address of the client that made the request.
The name of the authenticated user who accessed your server.
Anonymous users are indicated by a hyphen.
Y
Y
Service Name and Instance s-sitename
Number
The Internet service name and instance number that was running on
the client.
N
Server Name
Server IP Address
Server Port
Method
URI Stem
URI Query
s-computername
s-ip
s-port
cs-method
cs-uri-stem
cs-uri-query
The name of the server on which the log file entry was generated.
N
The IP address of the server on which the log file entry was generated. Y
The server port number that is configured for the service.
Y
The requested action, for example, a GET method.
Y
The target of the action, for example, Default.htm.
Y
The query, if any, that the client was trying to perform. A Universal
Y
Resource Identifier (URI) query is necessary only for dynamic pages.
HTTP Status
Win32 Status
Bytes Sent
Bytes Received
Time Taken
Protocol Version
Host
User Agent
Cookie
Referrer
sc-status
sc-win32-status
sc-bytes
cs-bytes
time-taken
cs-version
cs-host
cs(User-Agent)
cs(Cookie)
cs(Referrer)
The HTTP status code.
The Windows status code.
The number of bytes that the server sent.
The number of bytes that the server received.
The length of time that the action took, in milliseconds.
The protocol version —HTTP or FTP —that the client used.
The host header name, if any.
The browser type that the client used.
The content of the cookie sent or received, if any.
The site that the user last visited. This site provided a link to the
current site.
Y
N
N
N
N
N
N
Y
N
N
Protocol Substatus
sc-substatus
The substatus error code.
Y
59
LINUX伺服器安全管理
60
可能攻擊linux主機之方式










暴力破解,以ssh連入主機用一些常用字來破解密碼。
使用命令:finger @some.cracked.host,就可以知道該台電腦上面的有那
些用戶及正在線上使用。一段系統預設己關閉此功能。
以容易入侵的使用者取得系統的密碼檔/etc/passwd,再行密碼破解。
利用一般使用者在/tmp目錄放置著的SetUID的檔或者執行著SetUID程式,
讓root去執行,以產生安全漏洞。
利用系統上需要SetUID root許可權的程式的安全漏洞,取得root的許可權。
找尋設定.rhost的使用者。因為當執行rlogin登錄時,可能不需要密碼登錄。
修改使用者的.login、cshrc、.profile等Shell設置檔,加入一些破壞程式。用
戶只要登錄就會執行。只要用戶登錄系統,就會不知不覺地執行Backdoor
程式(可能是Crack程式),它會破壞系統或者提供更進一步的系統資訊,以
利Hacker滲透系統。
利用NIS之機制,可以利用remote 命令不需要密碼即可登錄等。
Hacker會通過中間主機連線,再尋找攻擊目標,避免被用逆查法抓到其所
在的真正IP地址。
Hacker進入主機有好幾種方式,不只shell方式(Telnet、ssh)其他Sendmail、
FTP或http都有可能 。
61
可能攻擊linux主機之方式










Hacker通常利用 NIS(IP)、NFS這些RPC Service截獲資訊。只要通過簡單的命
令,便能讓遠方的主機自動報告它所提供的服務。例如 NIS 之 ypcat 即可Dump
password file 。
網路竊聽,使用sniffer程式監聽網路Packet,捕捉Telnet,FTP和Rlogin明文資
訊,便可順手截獲使用者帳號密碼、甚至是root密碼。
利用一些系統安全漏洞入侵主機,例如:Sendmail、Imapd、Pop3d、DNS等程
式,經常發現安全漏洞,這對於入侵不勤於修補系統漏洞的主機相當容易得手。
被Hacker入侵電腦,植入鍵盤或封包側錄,所有使用者的操作含帳號和密碼均被
記錄下,併發E-mail給Hacker,進行更進一步的入侵。
Hacker會清除系統記錄,諸如清除:secure 、 syslog、lastlog、messages、
wtmp、utmp的內容,以及Shell歷史檔.history。
入侵者可能將如 ps 、 ifconfig、tcpdump這類的檢查命令更換,以避免被發覺。
通過su或sudo之類的Super User程式覬覦root的許可權。
駭客經常使用Buffer overflow(緩衝區溢位元)手動入侵系統。
cron及at是Linux作業系統用來自動執行命令的工具。入侵者常會用cron來留後
門,除了可以定時執行破解碼來入侵系統外,又可避免被管理員發現的危險。
利用IP spoof(IP詐騙)技術入侵Linux主機。
62
Linux安全預防工作









關閉所有可能的系統後門,以防止入侵者利用系統中的漏洞入
侵。
不開啟非必要之服務及安裝非必要之軟體。
確認系統當中運行的是較新的Linux、Unix守護程式。因為老
的守護程式允許其他機器遠端運行一些非法的命令。
定期從作業系統生產商那裏獲得安全補丁程式。
安裝加強系統安全的程式,如:Shadow password、TCP
wrappet、SSH、PGP等。
建置防火牆,防止網路受到攻擊。
利用掃描工具對系統進行漏洞檢測,來考驗主機容易受攻擊的
程度。
訂閱一些安全通報,瀏覽安全網站,以獲得及時的安全資訊來
修補系統軟硬體的漏洞。
做好帳號及權限管理,並定時檢查檔案及檢視log 。
63
帳號管理

/etc/passwd
 欄位
Username: Password: User ID: Group ID: User ID
Info: Home directory: login shell

/etc/shadow 密碼內容存效檔案,設定存取權限
 欄位
username:passwd:last:may:must:warn:expire:disable:
reserved

定時檢查
 是否有不當之user或密碼(空白或編碼後字串一樣)
 不當之權限(uid=0)
 /etc/passwd & /etc/passwd 之修改日期
 注意 shadow之存取權限(應該只root user或
權限)
group有此
64
帳號管理 /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
news:x:9:13:news:/etc/news:
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
rpm:x:37:37::/var/lib/rpm:/sbin/nologin
yang:x:500:500::/home/yang:/bin/bash
65
/etc/shadow
root:$1$35aAPvkb$6bQJvvZ8vmgk8Nl5TmCgs.:13908:0:99999:7:::
bin:*:13908:0:99999:7:::
daemon:*:13908:0:99999:7:::
adm:*:13908:0:99999:7:::
lp:*:13908:0:99999:7:::
sync:*:13908:0:99999:7:::
shutdown:*:13908:0:99999:7:::
halt:*:13908:0:99999:7:::
mail:*:13908:0:99999:7:::
news:*:13908:0:99999:7:::
uucp:*:13908:0:99999:7:::
operator:*:13908:0:99999:7:::
games:*:13908:0:99999:7:::
gopher:*:13908:0:99999:7:::
ftp:*:13908:0:99999:7:::
nobody:*:13908:0:99999:7:::
rpm:!!:13908:0:99999:7:::
yang:$1$fSin6A/h$XL/Vb8rAUn65N.BJuI5IM/:14894:0:99999:7:::
66
服務管理



服務是一個處理程序(式)執行以接受遠端(或本機)之TCP/IP連線
運作執行
服務(service)對應TCP/UDP port
Setup->系統服務


以終端機執行模式設定開啟之服務
系統->管理->伺服器設定->服務(以fedora之桌面為例)

背景服務


依據需要啟動的服務


系統啟動後即執行之服務程序
Client有連線要求時方啟動之服務
一般服務啟動皆定義於兩個地方

/etc/init.d 啟動背景程序



一個啟動script一個檔案
可手動啟動或系統啟動時依/etc/inittab指定之run level對應之/etc/rc.d/rcx.d(此目
錄之檔案line至/etc/init.d之檔案)
/etc/xinetd.d


Client有連線要求時方啟動之服務
xinetd為/etc/init.d下之一個script file,因此每次修改xinetd下之設定檔(一個服務一
個檔案),須重新啟動/etc/init.d/xinetd
67
服務管理(GUI界面)
68
服務管理監控

netstat 顯示目前服務開啟及那些連線已連
上
 netstat
–a
Proto Recv-Q Send-Q Local Address
Foreign Address
State
tcp
0
0
localhost:2208
*:*
LISTEN
tcp
0
0
*:869
*:*
LISTEN
tcp
0
0
*:5801
*:*
LISTEN
tcp
0
0
*:5901
*:*
LISTEN
tcp
0
0
*:sunrpc
*:*
LISTEN
tcp
0
0
*:ndmp
*:*
LISTEN
tcp
0
0
192.168.122.1:domain *:*
LISTEN
tcp
0
0
localhost:ipp
*:*
LISTEN
tcp
0
0
localhost:2207
*:*
LISTEN
tcp
0
0
*:ndmp
*:*
LISTEN
tcp
0
0
*:6001
*:*
LISTEN
tcp
0
0
*:ssh
*:*
LISTEN
tcp
0
0
*:telnet
*:*
LISTEN
tcp
0
0
snort:ssh
::ffff:140.116.2.246:61192 ESTABLISHED
udp
0
0
*:filenet-tms
*:*
69
程序管理

了解目前系統上執行之程序狀態與所用之
資源
: 以auto refresh方式顯示系統資源及程序
運作狀況
 ps –ef
 top
USER
root
root
root
root
yang
yang
yang
root
PID %CPU %MEM VSZ RSS TTY STAT START
12534 0.0 7.9 193244 154772 ?
S
Nov18
12611 0.0 0.0
2820
860 ?
Ss Nov18
12619 0.0 0.7 27144 15392 ?
S
Nov18
13206 0.0 0.1
8316
2516 ?
Ss 08:49
13208 0.0 0.0
8316
1424 ?
R 08:49
13209 0.0 0.0
4796
1488 pts/1 Ss 08:49
13318 2.0 0.0
4652
996 pts/1 R+ 09:20
28245 0.0 0.4 87932
9424 ?
Sl Oct11
TIME COMMAND
0:21 /usr/bin/python -tt /usr/sbin/pirut
0:00 xinetd -stayalive -pidfile /var/run
0:00 /usr/libexec/notification-daemon
0:00 sshd: yang [priv]
0:00 sshd: yang@pts/1
0:00 -bash
0:00 ps -aux
0:55 /opt/VRTSralus/bin/beremote
70
程序監控(GUI界面)
71
更新管理(GUI界面)

針對修補系統及軟體漏洞與bug,以降低攻擊者
依系統及軟體漏洞攻擊成攻之機率
72
連線管理


控管連線以降低外來攻擊
控管項目
 Port(服務)
 遠方位址領域
 方向

可用兩方式實現
 防火牆
 政策設定方式分正面表列與負面表列,以正面表列方式較合
宜
 iptables
 服務連線控制
 /etc/hosts.allow
 /etc/hosts.deny
73
防火牆iptables


可定義多條規則,連線建立時,一道道規則往下
比對,當符合目前規則後就不再往下檢查。
當全部規則都沒有任何符合的敘述時,最後依預
設政策設定。
#預設規則 採取 INPUT 全封閉
iptables -P INPUT DROP
# 讓已經建立或者是與我們主機有關的回應封包通過,但是讓不合法的封包被抵擋
在外!
iptables -A INPUT -m state –state ESTABLISHED -j ACCEPT
#接受網域內連線
iptables -A INPUT -i eth0 -p tcp -s 192.168.0.1/24 -j ACCEPT
#開放特定 service 連線
iptables -A INPUT -p TCP -i eth0 –dport 25 -j ACCEPT
iptables -A INPUT -p TCP -i eth0 –dport 21 -j ACCEPT
iptables -A INPUT -p TCP -i eth0 –dport 110 -j ACCEPT
iptables -A INPUT -p TCP -i eth0 –dport 80 -j ACCEPT
iptables -A INPUT -p TCP -i eth0 –dport 22 -j ACCEPT
74
服務連線控制(hosts.allow&deny)


執行檔需在目錄 /usr/sbin/ 中才可以,如:in.telnetd、
in.ftpd、httpd、sshd、vsftpd ...等
比較少設在 /etc/hosts.deny ,而只要將允許的服務定義
在 /etc/hosts.allow之中,且在最後一行再加上
ALL:ALL:DENY,就可拒絕其他的TCP服務(正面表列)。
/etc/hosts.allow
#
sshd: 140.116.0.0/255.255.0.0
Xvnc: ALL
/etc/hosts.deny
sshd: ALL
httpd: 192.192.3.88
75
稽核




經由定時檢視日誌檔找出系統或應用程式潛在
之問題或已發生之問題。
主要記錄於 /var/log,可應用一些命令進行篩
選以找出關鍵資訊。
自行安裝之server軟體也須了解其log file之位
置及資訊,可行的話設定至/var/log以方便管
理(相對的就有被方便清除日誌之風險。
入侵至系統並取得root權限之入侵者大多會清
掉或修改log內容以清除其行蹤,故最佳方式
是將log導至其他log server主機上。
 Log
組態設定於 /etc/syslog.conf
76
/var/log之log內容

cron


maillog


記錄開機啟動訊息
dmesg


記錄每個用戶最後的登入信息。
boot.log


記錄登錄者訊錄,二進位格式,須用last來讀取內容
lastlog


和安全有關及登錄之訊息;FTP、SSH、TELNET...
wtmp


訊息總匯,一段設定記錄error訊息
Secure


郵件系統訊息
messages


定時啟動程式之訊息
核心啟動日誌
Xferlog、vsftpd

FTP系統日誌
77
例行檢查命令

利用Linux命令來檢測系統:















w 查看誰由那裡登入到系統中及做什麼操
last 顯示使用者登入的記錄
history 顯示本使用者過去被執行的命令(一般用root登入並看root執行
了那上命令)
netstat –a 可以顯示現在的網路狀態
top 動態即時察看系統的程序
ps –ef 即時察看系統的程序
find / -perm -4000 -exec ls -al {} \; 找尋設成 SUID的檔案,注意若檔案
系統大,會執行很久
find / -ctime -2 -ctime +1 –ls 顯示兩天內修改的檔案
date 顯示系統時間
showmount 檢查那些filesystem export (If open NFS server)
定期檢查系統中的/var/log 日誌檔
檢查可疑帳號目錄下的登入歷史檔(.history )
檢查 /etc/passwd & /etc/shadow
重點檢查 /etc 下之檔案,一般擺放系統或程式之組態檔
檢查 /var/spool/cron下之定時啟動檔
78
本校最常見linux資安事件處理方式

ssh暴力破解
 先找出是從user登入及做了什麼
 ps –ef 找出可疑使用者執行之程序
 針對有問題程序之PID看其在那個目錄執行



cd /proc/xxxx ; ls -al cwd (xxxx為PID number)
至cwd之目錄刪掉有問題之檔案或mv至其他地方保存證據
cd ~user ; more .history 到該使用者看執行了什麼
 看secure是否有其他不正常連線並保留證據
 grep sshd /var/log/secure* |grep Accepted
 vi /etc/shadow
 Disable可疑及不當之帳號,待其來”自首”(帳密設定不強固)
 Check /var/spool/cron是否有其他啟動script
 設定 /etc/hosts.allow & hosts.deny 之ssh 連線領域
 遭入侵若為root權限之user須全系統檢查
79
Download