Towards ¡Secure ¡and ¡Dependable ¡ So2ware-‑Defined ¡Networks ¡ Diego ¡Kreutz, ¡Fernando ¡M. ¡V. ¡Ramos, ¡Paulo ¡Veríssimo ¡ LaSIGE/FCUL, ¡University ¡of ¡Lisbon ¡
SDN ¡in ¡short ¡ 1. Decoupling ¡control ¡ and ¡data ¡plane ¡ 3. Programming ¡the ¡ network ¡ 2. Logical ¡centraliza?on ¡ of ¡network ¡control ¡
¡ Excellent , ¡now ¡ we ¡can ¡program ¡the ¡network! ¡ App1 App2 App3 … AppN Applications (control logic) Global Network View Network OS (programming abstractions, data distribution, low level controls, etc.)
¡ Wait , ¡now ¡ others ¡can ¡program ¡the ¡network! ¡ App1 App2 App3 … AppN Applications (control logic) Global Network View Network OS (programming abstractions, data distribution, low level controls, etc.)
Outline ¡ Main ¡threat ¡vectors ¡in ¡SDNs ¡ Security ¡& ¡Dependability ¡by ¡design ¡ Final ¡remarks ¡
Outline ¡ Main ¡threat ¡vectors ¡in ¡SDNs ¡ Security ¡& ¡Dependability ¡by ¡design ¡ Final ¡remarks ¡
Threat ¡vectors ¡map ¡ Threat ¡vector ¡1 ¡ forged ¡or ¡faked ¡traffic ¡ flows ¡ Admin ¡ SDN ¡ � t StaMon ¡ n e m e g Controller ¡ a n a M & l o r t n o C SDN ¡ SDN ¡ SDN ¡ device ¡ device ¡ device ¡ � e n a l P a t a D SDN ¡ device ¡ 1 ¡ Not ¡specific ¡to ¡SDNs , ¡but ¡can ¡be ¡a ¡door ¡for ¡augmented ¡DoS ¡aNacks. ¡ Possible ¡solu*ons: ¡IDS ¡+ ¡rate ¡bounds ¡for ¡control ¡plane ¡requests ¡
Threat ¡vectors ¡map ¡ Threat ¡vector ¡2 ¡ exploiMng ¡vulnerabiliMes ¡ in ¡forwarding ¡devices ¡ Admin ¡ SDN ¡ � t StaMon ¡ n e m e g Controller ¡ a n a M & l o r t n o C SDN ¡ SDN ¡ 2 ¡ SDN ¡ device ¡ device ¡ device ¡ � e n a l P a t a D SDN ¡ device ¡ Not ¡specific ¡to ¡SDNs , ¡but ¡now ¡the ¡impact ¡is ¡potenMally ¡augmented. ¡ Possible ¡solu*ons: ¡so2ware ¡aNestaMon ¡with ¡autonomic ¡trust ¡management ¡
Threat ¡vectors ¡map ¡ Threat ¡vector ¡3 ¡ aNacking ¡control ¡ communicaMons ¡ Admin ¡ SDN ¡ � t StaMon ¡ n e m e g Controller ¡ a n a M & l o r t 3 ¡ n o C SDN ¡ SDN ¡ SDN ¡ device ¡ device ¡ device ¡ � e n a l P a t a D SDN ¡ device ¡ Specific ¡to ¡SDNs : ¡communicaMon ¡with ¡logically ¡centralized ¡controllers ¡can ¡be ¡ explored. ¡ Possible ¡solu*ons: ¡threshold ¡cryptography ¡across ¡controller ¡replicas ¡
Threat ¡vectors ¡map ¡ Threat ¡vector ¡4 ¡ 4 ¡ exploiMng ¡vulnerabiliMes ¡ in ¡controllers ¡ Admin ¡ SDN ¡ � t StaMon ¡ n e m e g Controller ¡ a n a M & l o r t n o C SDN ¡ SDN ¡ SDN ¡ device ¡ device ¡ device ¡ � e n a l P a t a D SDN ¡ device ¡ Specific ¡to ¡SDNs , ¡controlling ¡the ¡controller ¡may ¡compromise ¡the ¡enMre ¡network. ¡ Possible ¡solu*ons: ¡replicaMon ¡+ ¡diversity ¡+ ¡recovery ¡
Threat ¡vectors ¡map ¡ 5 ¡ Threat ¡vector ¡5 ¡ lack ¡of ¡trust ¡between ¡the ¡ controller ¡and ¡apps ¡ Admin ¡ SDN ¡ � t StaMon ¡ n e m e g Controller ¡ a n a M & l o r t n o C SDN ¡ SDN ¡ SDN ¡ device ¡ device ¡ device ¡ � e n a l P a t a D SDN ¡ device ¡ Specific ¡to ¡SDNs , ¡malicious ¡applicaMons ¡can ¡now ¡be ¡easily ¡developed ¡and ¡deployed ¡ on ¡controllers. ¡ Possible ¡solu*ons: ¡so2ware ¡aNestaMon, ¡security ¡domains ¡
Threat ¡vectors ¡map ¡ 6 ¡ Threat ¡vector ¡6 ¡ exploiMng ¡vulnerabiliMes ¡ in ¡admin ¡staMons ¡ Admin ¡ SDN ¡ � t StaMon ¡ n e m e g Controller ¡ a n a M & l o r t n o C SDN ¡ SDN ¡ SDN ¡ device ¡ device ¡ device ¡ � e n a l P a t a D SDN ¡ device ¡ Not ¡specific ¡to ¡SDNs , ¡but ¡now ¡the ¡impact ¡is ¡potenMally ¡augmented. ¡ Possible ¡solu*ons: ¡double ¡credenMal ¡verificaMon ¡
Threat ¡vectors ¡map ¡ Threat ¡vector ¡7 ¡ lack ¡of ¡trusted ¡resources ¡ for ¡forensics ¡and ¡ remediaMon ¡ Admin ¡ SDN ¡ � t StaMon ¡ n e m e g Controller ¡ a n a M & l o r t n o C 7 ¡ SDN ¡ SDN ¡ SDN ¡ device ¡ device ¡ device ¡ � e n a l P a t a D SDN ¡ device ¡ Not ¡specific ¡to ¡SDNs , ¡but ¡it ¡is ¡sMll ¡criMcal ¡to ¡assure ¡fast ¡recovery ¡and ¡diagnosis ¡ when ¡faults ¡happen. ¡ Possible ¡solu*ons: ¡immutable ¡and ¡secure ¡logging, ¡secure ¡and ¡reliable ¡snapshots ¡
Threat ¡vectors ¡map ¡ 6 ¡ 5 ¡ 4 ¡ Admin ¡ SDN ¡ � t StaMon ¡ n e m e g Controller ¡ a n a M & l o r t 3 ¡ n o C 7 ¡ SDN ¡ SDN ¡ 2 ¡ SDN ¡ device ¡ device ¡ device ¡ � e n a l P a t a D SDN ¡ device ¡ 1 ¡ Ø 1 ¡and ¡ 3 : ¡communicaMons ¡ Seven ¡main ¡ threat ¡vectors ¡ Ø 2 , ¡ 4 , ¡ 5 , ¡ 6 : ¡elements ¡ Ø 7 : ¡communicaMons ¡and ¡elements ¡
Outline ¡ Main ¡threat ¡vectors ¡in ¡SDNs ¡ Security ¡& ¡Dependability ¡by ¡design ¡ Final ¡remarks ¡
Sec&Dep ¡tools ¡to ¡consider ¡ • ReplicaMon ¡ – Dynamic ¡device ¡associaMon ¡ – Self-‑healing ¡mechanisms ¡for ¡ perpetual ¡operaMon ¡ exploiMng ¡a ¡vulnerability ¡ • Diversity ¡ – Avoid ¡shared, ¡common ¡vulnerabiliMes ¡ vulnerable ¡systems ¡ • (Autonomic) ¡trust ¡ – between ¡controllers ¡and ¡devices ¡ – between ¡applicaMons ¡and ¡controller ¡so2ware ¡
Sec&Dep ¡tools ¡to ¡consider ¡ • Security ¡domains ¡ – kernel ¡mode ¡ vs ¡user ¡mode ¡ (e.g., ¡ FortNOX ) ¡ ¡ • Fast ¡and ¡reliable ¡so2ware ¡update ¡and ¡ patching ¡ (e.g., ¡ HotSwap ) ¡
DESIGN ¡OF ¡A ¡SEC&DEP ¡SDN ¡ CONTROL ¡PLATFORM ¡ v0.1 ¡
One ¡ single ¡centralized ¡ controller ¡ App A Controller A
Mul?ple ¡instances ¡of ¡a ¡centralized ¡controller ¡ App A App A App A Controller A Controller B Controller C
Master-‑slave ¡ controllers ¡ App A App A App A Controller A Controller B Controller C
Master-‑slave ¡ controllers ¡(what ¡if ¡B ¡fails?) ¡ App A App A App A Controller A Controller B Controller C
Master-‑slave ¡ controllers ¡(adding ¡a ¡ consistency ¡layer ) ¡ App A App A App A East/Westbound API (data distribution service) Controller A Controller B Controller C
Mul?ple ¡ac?ve ¡controllers ¡ App A App A App A East/Westbound API (data distribution service) Controller A Controller B Controller C
One ¡ single ¡app ¡instance ¡(App ¡B) ¡can ¡now ¡configure ¡the ¡whole ¡network ¡ App A App B App A App A East/Westbound API (data distribution service) Controller A Controller B Controller C
One ¡ single ¡app ¡instance ¡(App ¡B) ¡can ¡now ¡configure ¡the ¡whole ¡network ¡ App A App B App A App A Northbound API Northbound API Northbound API East/Westbound API (data distribution service) Controller A Controller B Controller C
Increasing ¡the ¡robustness ¡of ¡the ¡system ¡by ¡adding ¡ diversity ¡ App A App A App B App A Northbound API Northbound API Northbound API East/Westbound API (data distribution service) Controller A Controller B Controller C
Diversity ¡of ¡controllers ¡requires ¡a ¡ common ¡ Northbound ¡API ¡ App A App B App A App A Common Northbound API East/Westbound API (data distribution service) Controller A Controller B Controller C
Outline ¡ Main ¡threat ¡vectors ¡in ¡SDNs ¡ Security ¡& ¡Dependability ¡by ¡design ¡ Final ¡remarks ¡
Our ¡main ¡message ¡ • SDN: ¡a ¡fascinaMng ¡dilemma ¡ – evolu?on ¡of ¡networking ¡ ¡ ¡versus ¡ ¡ – increasing ¡the ¡ threat ¡surface ¡ Security & Dependability should be built by design.
Recommend
More recommend