資訊安全的重要
◆企業資訊化的過程,資料以電腦處理、傳遞和儲存並不安全:
--電腦系統可能被入侵、攻擊、破壞
--資料可能會被攔截、竊取
--資料可能被不當修改、刪除
◆企業重要資料一旦不當揭露、破壞或無法正確提供服務將導致企業重大損失
何謂資訊安全
◆ 資訊安全是一種偵測和防止未經授權而使用、竊取、破壞您資訊系統的一種過程與程序
◆ 資訊安全的工作必須事先妥善規劃、確實謹慎實行各項必要的資訊安全措施,並且持續不斷的檢討修正實施,以確保隨著時間的演進,仍可以維持資訊的安全性
安全管理概念
◆ 理論上來講,沒有不可入侵的系統,風險不可能完全避免。安全管理是將公司組織的風險降低到一個可接受的程度並且持續維持這個可接受程度的過程。
◆ 安全管理人員必須由上往下實施,由上層管理人員至一般員工都必須參與
◆ 為達到安全性的管理目標,安全管理的工作必需區分為下面三個控制層面
-管理控制 security policy
-技術控制 如何落實security policy
-實體控制 預防自然災害,人類行為
資訊安全的基本原則—C.I.A.
◆ 資訊安全的基本功能及目的不外乎提供資料與資源的Confidentiality(機密性)、Integrity(完整性)、Availability(可用性)
◆ 安全性機制所提供的基本服務:
-機密性確保資料傳遞與儲存的私密性
-完整性避免非經授權的使用者或處理程序竄改資料
-可用性讓資料隨時保持可用狀態
◆ 其他安全性服務:
-不可否認性
-存取控制
-身份驗證
-執行力
資訊安全的本質(簡單幾句話,越來越覺得有道理,需要釐清給所有人知道)
◆ 不方便
◆ 犧牲效率
◆ 提升成本
◆ 不信任與衝突
網路攻擊方式與類型
資訊安全問題的主要起源:企業內部網路的弱點必定存在,在弱點暴露且遭有心人士探測得知後,不當存取或破壞企業內部資訊資產
網路攻擊問題的發生(弱點暴露)
◆ TCP/IP通訊協定本身的安全性問題
◆ 作業系統與應用程式的瑕疵(app安全性問題大於OS)
◆ 網路與資訊系統管理不當(人員管理上的問題)
◆ 惡意程式的傳佈與誤用
網路入侵攻擊的動機與目的
◆ 竊取各種資料、軟體
◆ 破壞資料、癱瘓系統,使電腦無法正常運作
◆ 惡作劇
◆ 炫耀能力
駭客入侵流程
◆資訊探查
◆獲取權限
◆提升權限
◆建置後門
◆湮滅蹤跡
常見的網路攻擊型態
◆ Port Scanning
◆ Password Cracking
◆ Denial of Service & DDoS
◆ Virus
◆ Worm
◆ Trojan Horse
◆ IP Spoofing
◆ Session Hijacking
◆ Relay
◆ Sniffering
◆ Social engineering
資訊安全防禦技術
有效的防禦技術
◆ 降低並避免弱點暴露
-停用或取代有嚴重弱點存在的服務
-隨時更新系統與安全性修補程式
-定期執行弱點掃瞄
-關閉不必要的服務
◆ 提升防禦的深度與廣度
-Local Security
-Network Security
-Application Security
◆ 提高攻擊的困難度
-使本機的攻擊難度高
伺服器禁止本機登入
嚴格的存取控制
變更管理員名稱
設定稽核日誌功能並定期檢視 註:UNIX系列在 etc\syslog.conf
實體防護
-使網路個攻擊難度高
停用或移除不必要的帳戶
設定嚴謹或不易猜測的密碼
停用不必要的網路服務
關閉資源共享服務
選擇安全性的遠端管理方法 如terminal service
-使應用程式的攻擊難度高
設定正確的應用程式存取與驗證方法
隨時更新作業系統與應用程式的安全性修正程式
訂閱安全性宣告通知
◆ 提升防禦縱深
-防火牆
-入侵偵測系統
-防毒系統
Windows系統本機安全防護策略
根據上述原則,開始實作windows系統安全性組態,另可參考視窗平台安全策略.ppt
謹記:NT家族最大的安全風險可以歸納成兩大主因:流行性與不安全的預設組態
◆ 做好實體防護,不要被閒雜人等接觸主機
◆ 設BIOS密碼,視情形停用com port及USB port
◆ administrator更名
◆ 權限控管:使用低權限帳號登入
◆ 停用NetBIOS over TCP/IP (port 137.139.445:關掉alerter 跟Messenger服務,files and printer sharing for MS networks也關 )防禦SMB攻擊
◆ 不要使用SNMP協定的服務!
◆ group policy設定:window設定>安全性設定>本機原則>安全性選項>
匿名使用者連線的其他限制>沒有明確宣告的匿名權限則不能存取。 阻擋null session
網路存取:允許匿名SID名稱轉譯:停用
網路存取:不允許SAM帳號的匿名列舉:啟用
網路存取:不允許SAM帳號和共用的匿名列舉:啟用
網路存取:可遠端存取的登錄路徑:清空(視情況啦)
網路存取:可匿名存取的共用:清空
LANMan驗證層級:停用LANMan身份驗證方式,此演算法有重大缺陷
或是啟用「下次變更密碼時,不儲存Lan Manager雜湊數值」會產生windows環境 向下相容問題
◆ 修改登錄編輯檔,停用C$及D$資料匣共享
◆ 使用複雜密碼(大寫.小寫.數字.特殊字元,用group policy套)
◆ 關閉機器上沒有必要的服務以因應 port scanning及列舉(telnet23、smtp25等)
◆ 視情形使用入侵偵測系統提供警示與執行必要阻擋工作(Genius2.0
sinnerz.com/genius...)
◆ 作業系統偵測的對策:尚無…
◆ 可以的話,濾掉ICMP echo等 (type 8 13 17)
◆ 定期使用MBSA掃瞄弱點
◆ 稽核帳戶登入事件,注意event529及539,監視是否遭暴力破解法猜密碼。同時設定登入失敗三次鎖帳號N分鐘
◆ 儘量使用Run as (執行身份)
◆ 嚴格控管檔案下載及郵件附件開啟,以防被植入木馬
◆ 注意後門第一選擇:HKLM\SOFTWARE\Microsoft\Windows\Current Version底下的Run、Run Once、Run OnceEx、Run Service
◆ 評估使用安全性通訊協定(如SSL)
◆ 隨時更新 security patch
◆ 強烈建議使用NAT功能之軟硬體做IP偽裝(IP分享器或是Linux iptables)
網頁入侵篇
網頁伺服器入侵
攻擊者利用網頁伺服器軟體本身(或者其中一個附加原件)先天存在的弱點,攻擊者準備好現成的適當工具,在幾分鐘內就能拿下一個網頁伺服器(知名範例:Code Red跟Nimda打死IIS)
網頁伺服器的弱點大致分為下列類別
◆原始碼暴露:不良範本程式檔讓攻擊者可使用目錄橫越攻擊
解決方案:不要安裝樣本檔案
◆正規化(canonicalization):ASP與IIS4.0弱點,用新版的IIS就不要理會這個了
◆WebDAV:想像成網路上的共享硬碟,IIS問題,此處不討論。
◆緩衝區溢位(buffer flow):塞爆記憶體後,程式再吃記憶體一塊的同時,已獲得管理 員權限
PHP對策:1.將有問題的指令檔移除(抱歉,認識不深,此處細節尚不明)。
2.將PHP指令檔升級至最新版本。
3.遇到可輸入的欄位時,size跟maxlength屬性要限制好,否則被一次送出10億個字元到伺服器,保證伺服器被一槍斃命
網頁應用程式入侵
針對應用程式本身,而不是應用程式賴以執行的網頁伺服器軟體的攻擊對策如下
◆ 預防被人從搜尋網站(如google)找出索引,網頁檔案避免使用如admin、password、passwd、mail等命名。範例:在google打”index of/admin”
◆ 預防SQL注入,方法有
-對於來自用戶端的輸入執行嚴格的輸入查驗。最好能採用預設拒絕的規則組,只接受預期內的資料。
-用已儲存的程序、事先準備的陳述式或ADO命令物件來取代直接的SQL陳述式
-對所有錯誤都使用同一個通用錯誤訊息
-鎖住ODBC。關閉對用戶端的訊息傳遞,不要讓一般SQL陳述式通過,確保任何用戶端不能任意持行SQL
-鎖住資料庫伺服器組態設定,明定使用者、角色、權限
SQL的安全性,小弟算是嬰兒,盼諸方大德不吝賜教。
◆ 預防被針對HTML隱藏標籤的攻擊,就必須避免使用隱藏標籤來放置像是價格之類的資訊
總結:
三大要點
1. 讓你的伺服器隨時保持在最新的修補與最佳實務組態設定,以確保他的安全性
2. 查驗所有的使用者輸入,要一開始就假設他是有害的,才能制敵機先
3. 定期稽核網頁應用程式。在網頁入侵方面的防範必須持續努力不懈的對抗最新的工具與技術。因為沒有任何廠商能提供自訂程式碼的修補
Apache組態篇
設定目錄別名(aliases)
◆ 有彈性,網頁使用空間有無線擴充性
◆ 較長的 url可利用別名目錄變成較短,方便輸入
◆ 別名目錄與真實目錄無關,安全性較高
相關組態
◆ HostnameLookups Off –會做FQDN逆向解析,影響效能,預設不開啟
◆ LogLevel – 效能考量,不建議顯示太多訊息,用warn或者critical即可
◆ ServerSignature – 沒啥效用,設off
◆ Timeout – 300
◆ Keepalive on
◆ MaxkeepAliveRequests 預設100,此處要設定,以防DoS攻擊
◆ StartServers 中小型網站設8,看情形調整
存取控制
使用者身份驗證
監控伺服器的各項狀況
加入下面兩段
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from 192.168.30.0/24假設
</Location>
<Location /server-info>
SetHandler server-info
Order deny,allow
Deny from all
Allow from 192.168.30.0/24假設
</Location>
可利用http://網站IP/server-status及http://網站IP/server-info兩個網址即可看到伺服器狀態
IIS組態篇
◆ 設定目錄別名(aliases)便輸入
◆ 用來匿名存取IIS的IUSR帳號預設為Guests群組的成員,建議從IIS成員中移除Guests
◆ 僅安裝必要的IIS元件
◆ 將網站內容放在專用的磁碟區中(避免被人目錄橫越,如被人跑到system32下執行cmd你就死了)
◆ NTFS權限設好
檔案類型
建議的NTFS權限
CGI檔(.exe、.dll、.cmd、.pl)
Everyone(execute)
Administrotors(full control)
System(full control)
指令碼檔(.asp)
Everyone(execute)
Administrotors(full control)
System(full control)
Include檔(.inc、.shtm、.shtml)
Everyone(execute)
Administrotors(full control)
System(full control)
靜態內容(.txt、.gif、.jpg、.htm、.html)
Everyone(read-only)
Administrotors(full control)
System(full control)
◆ LOG檔記錄並定期監控
SQL組態篇
安裝完畢後移除不必要之帳號
修改原資料庫路徑
新增ooxx帳號代替root
刪除root帳號
新增帳號並給予適當權限,供購物網連線者使用