Computer Security
定義軟體 "不該發生什麼行為"- 不該違反保密協定 (confidentiality)
- 不該違反功能完整性 (integrity)
- 不該違反存取性 (accessibility)
Hacker exploits "Defects"
flaw是系統設計面的瑕疵,意思是software有超出requirement定義的行為。bug是系統實作面的錯誤。
defects: hackers利用flaws / bugs 來攻擊的漏洞,defects會被hackers利用來侵入系統,這叫做脆弱性 (vulnerability),所以即便bug可能看起來無關緊要,但很有可能給予hackers攻擊的漏洞或是靈感。
Software Security
是focus在code層次 安全性的學問。OS Security
使用到OS system calls都能受到OS層級的安全性保護,例如Alice不能access Bob的folder,或是如果沒開放port 80,則不可能有人能從port 80連出或連進來。但是OS security涵蓋不瞭Application 內部的安全細節,例如只有database software能分辨與執行機敏性資料的存取政策,OS是幫不上忙的(也不該)。
此外,OS不能貫徹information flow policies,稍後會說明。
Firewalls and Intrusion Detection System (IDSs)
防火牆主要是用來過濾可以存取資料的連線,主要利用hosts / ip / ports 等protocol定義內容來過濾。侵入偵測系統IDS則是會分析封包內容,找出符合可能風險模式的封包,予以阻擋。
防火牆允許的port不一定是它預設要保護的service,例如port 80不一定是執行http server,例如SOAP是利用http protocol來交換message的一種協定,但這邊就做了很多http server做不到的事,所以防火牆如果假設port 80只會是http server (通常都是)那就可能形成一個可以exploit的入口。
IDS也是能有被降低分析能力的攻擊方法。
沒有留言:
張貼留言