【文章內(nèi)容簡(jiǎn)介】
ver.Any – Web Server: 80Firewall only allows applications on the web server to talk to application server. Firewall only allows application server to talk to database server.IISSunOneApacheASP.NETWebSphereJavaSQLOracleDB2Know your code. Trust your code 軟件易于遭受的安全弱點(diǎn) :167。 SQL Injections167。 Buffer Overflows167。 Information Leakage167。 Other Categories 軟件安全弱點(diǎn)的底線 :167。 Operations, Availability167。 Compliance167。 Credibility, Reputation黑客直接利用軟件的弱點(diǎn)攻擊我們的系統(tǒng)Know your code. Trust your code 演示如何通過攻擊應(yīng)用系統(tǒng)達(dá)到竊取商業(yè)信息和破壞應(yīng)用系統(tǒng),使用的攻擊方式: SQL Injection CrossSite Scripting Privacy Violation Forceful Browsing 演 示 攻 擊Know your code. Trust your code軟件必須自我保護(hù)Outside:l Source IPl Destination IPl Fragmented datal HTTP requests?Insidel User sessionsl SQL queriesl Application variablesl Historical patternsKnow your code. Trust your codeInside軟件必須自我保護(hù)Outside:Know your code. Trust your code 傳統(tǒng)學(xué)校關(guān)于安全技術(shù)的教育的原則 :? 用防火墻來定義系統(tǒng)的 ”邊界 ”,把軟件與外界隔離 .? 過分依賴加密技術(shù) ? SSL? secure lock on a paper bag !? 當(dāng)產(chǎn)品要發(fā)布的時(shí)候才去審查產(chǎn)品? 在這個(gè)階段所做的都是 “Why did we do this like this?”? 我們將以補(bǔ)丁 (patch)的方式修復(fù)它 .? 我們已經(jīng)了解到這個(gè)問題 .? 不允許高級(jí)技術(shù)使用 :? 如果它是新的 ,肯定有問題 .? 讓我們等 ,直到這種技術(shù)成熟了 ,保險(xiǎn)了 ,我們才使用 .? 想盡一切辦法去否定使用新技術(shù)的想法學(xué)校傳統(tǒng)的安全技術(shù)教育Know your code. Trust your code滲透測(cè)試和打補(bǔ)丁都不是最好的消除軟件安全問題的方式Perate and Patch is BadAverage Curve of Number of Intrusions for a Security Bug Over Time, as Reported by Arbaugh, Fithen and McHugh, 2023. Know your code. Trust your code傳統(tǒng)的安全模式 : ? 保護(hù) ” 邊界 ”? 網(wǎng)絡(luò)安全? 安全負(fù)責(zé)的人是 IT/MIS/CISSP等部門? 被動(dòng)式新的安全模式:? 構(gòu)建安全的系統(tǒng)? 設(shè)計(jì)安全的軟件? 軟件開發(fā)人員和設(shè)計(jì)人員對(duì)安全負(fù)責(zé)? 主動(dòng)式* COTS = Commercial off the shelf學(xué)校傳統(tǒng)的安全技術(shù)教育Know your code. Trust your code軟件安全的根源問題? 軟件安全的問題是軟件自身的缺陷問題 ,其主要在軟件設(shè)計(jì) 和 軟件實(shí)現(xiàn) 的過程中產(chǎn)生 ,具體表現(xiàn)在軟件設(shè)計(jì)的 架構(gòu)問題 和 實(shí)現(xiàn)上的錯(cuò)誤 .– 開發(fā)軟件 造房子– 實(shí)現(xiàn)上的錯(cuò)誤 軟件代碼錯(cuò)誤 磚的問題– 架構(gòu)問題 軟件架構(gòu)風(fēng)險(xiǎn) 墻問題– 在軟件安全問題上 ,架構(gòu)上的風(fēng)險(xiǎn)往往比實(shí)現(xiàn)上的分析更重要 ,更難理解 .Know your code. Trust your code解決軟件安全問題? 軟件安全涉及 軟件工程,編程語言 ,安全工程 .根據(jù) Gary Mc Graw的建議 ,解決軟件安全主要要從如下幾個(gè)方面下手 :– Applied Risk Management – Software Security Best practices– KnowledgeKnow your code. Trust your code什么是風(fēng)險(xiǎn)管理? Risk management. 預(yù)先去識(shí)別 \分析和修復(fù)那些對(duì)商業(yè)有負(fù)面影響的軟件缺陷 ,決定花多少成本去修復(fù)它 .? 軟件安全其實(shí)就是風(fēng)險(xiǎn)管理 .Know your code. Trust your