[IT-Security-2] 網路攻擊的應對措施 Countermeasures
Countermeasures
Notes from RWTH Aachen University course
“IT security 2” Wintersemester 2019/20
professor: Meyer, Ulrike Michaela
Countermeasures
- 應對措施的條件:
- General: 要能對抗各種攻擊
- Timely: 及時有效
- Resilient: 對evasion(逃避) techniques 有彈性
- causing minimal DoS cost: 最小化減少server的性能, 最小化operation的中斷
- transparent: 不用對OS, 軟硬體做修改
- Global and local coverage: 處理外部及內部網路
- Prevention
- 避免感染, 避免系統產生malware
- 困難, 因為大多來自Social Engineering
- 網路server和client需加強防禦
- 手段:
- Policy: 時常修改密碼
- Vulnerability mitigation:時常更新軟體, 適當存取資料, 減少使用者可以access的檔案, pentest(滲透測試)
- Awareness: 教育
- Mitigation
- 識別malware
- 移除來自所有infected system的traces以避免擴散
- 封鎖
- 提醒其他人
- take down C&C,若在同一個network裡
Informing and Disinfecting Victims
- victims可以被ISP (internet service provider)通知
- 某些ISP用walled garden techniques:
- 使得使用者的服務使用更不方便或無法使用,直到被消毒為止
Detecting infections with (mainly known) malware
- On the host directly
- 檢查signature(只能偵測到已知的malware)
- On the local network of a host
- 檢查網路連線是否連到可疑的port或用可疑的protocol(只能偵測到已知的bots)
Host-based Anti-Virus Technologies
- 通常只能檢測已知的malware (不能確定一個program是不是virus)
- scanners:
- 檢查簽章(對已知的virus有效)
- 檢查code是否符合virus(例如decryption loop)
- 檢查integrity
- 模擬(emulation):
- 模擬CPU執行多個instructions
Host-based Rootkit Detection
- scan簽章
- 找是否有隱含rootkits的特徵
- 截取system call, key logger與keyboard drive互動
- 難以偵測, 因為anti-virus軟體也會截取system call
- 比較 system scan using API calls 及 actual view of storage using instructions not using API calls
- rootkits會修改view of storage以把自己藏起來
Host-based Behavior Blocking Software
- 與OS整合
- Monitor(監控) program的行為
- 開啟檔案
- 格式化硬碟
- 修改executable files
- 修改重大系統設定
- 送email
- 重置網路設定
- 即使再精細的malware也需要送出request,可以被behavior blocking software偵測
Network-based Perimeter(周長) Scanning
- 組織的防火牆或intrusion detection system
- Ingres(the act of entering) moniters
- 在企業網路的邊界
- 用異常的簽章或行為
- Egress(the act of going out) moniters
- 在個人網路的border
- 試圖抓取malware的source如檢查scanning的跡象或大量通訊
- 可能封鎖這些行動
Techniques to detect NEW malware
- 被感染的host: 檢測不尋常的行為, integrity檢查
- monitoring network traffic locally
- 檢測C&C
- 檢測bot是否在execution phase
- 檢測DNS traffic中不尋常的NX response(DGA-based malware)
- honeypots
Malware collection and analysis
蒐集新的sample(Honeypots, 掃描email附檔, 分析links in spam)
分析malware(runtime analysis(Sandboxing), reverse engineering)
make the finding available(to feed Botnet Monitoring Tools, to generate signatures for A/V products)
Honeypots
定義: computers act like regular vulnerable system to attract malware(假裝vulnerable以吸引malware)
分類:
- Interaction type:
- Low-interaction: 模擬system services
容易且快速執行
容易被malware偵測,因為功能不齊全 - High-interaction: 在full OS中執行complete functionality
跟Low-interaction相反
高度討論: 是否只用low-interaction當發現一些新的malware?
- Low-interaction: 模擬system services
- Character:
- Virtual: 在VM中
- physical: 大多數的honeypots
取決可用的硬體資源
- type of victim:
- Server: 模擬web, ftp, file sharing
- Client: 模擬電腦user, 點擊link, 瀏覽drive-by download的網站
兩者都應該被使用, 少了一方都不能提供完整的malware行為(complete picture)
- Interaction type:
Honeypot機器沒有productive use(生產力)
Server honeypots被動
Client honeypots主動(collect URLs
Analysis
- 擷取資訊:
- C&C
- Encryption keys, 密碼
- Static (Manual): 用reverse engineering及debugging
較花時間, 需要分析能力 - Dynamic (automatic): 用 Sandbox
Sandbox
在限制的環境下動態runtime分析
檢查behavior
取得C&C
malware通常會偵測sandbox
耗費資源(malware會執行as long as possible)
- 擷取資訊:
Readings
Pfleeger, Pfleeger, and Margulies, Security in Computing
§Chapter 3.3
Stallings and Brown: Computer Security
§Chapter 6.10, Chapter 8.8
留言
張貼留言