通信学报 ›› 2023, Vol. 44 ›› Issue (3): 33-44.doi: 10.11959/j.issn.1000-436x.2023065

• 学术论文 • 上一篇    下一篇

拟态路由器BGP代理的设计实现与形式化验证

张进1, 葛强1,2, 徐伟海1,2, 江逸茗3, 马海龙3, 于洪涛3   

  1. 1 紫金山实验室内生安全研究中心,江苏 南京 211100
    2 东南大学网络空间安全学院,江苏 南京 211100
    3 信息工程大学信息技术研究所,河南 郑州 450000
  • 修回日期:2023-02-27 出版日期:2023-03-25 发布日期:2023-03-01
  • 作者简介:张进(1979− ),男,江苏镇江人,博士,紫金山实验室高级工程师,主要研究方向为宽带信息网络、网络安全、软硬件协同设计
    葛强(1997− ),男,浙江台州人,东南大学硕士生,主要研究方向为网络安全
    徐伟海(1999− ),男,安徽黄山人,东南大学硕士生,主要研究方向为网络安全
    江逸茗(1984– ),男,河南郑州人,博士,信息工程大学副研究员,主要研究方向为新型网络体系结构、网络空间安全防御、云计算、虚拟化技术
    马海龙(1980– ),男,山东聊城人,博士,信息工程大学研究员,主要研究方向为创新网络体系、网络安全管控、路由工程等
    于洪涛(1970− ),男,辽宁丹东人,博士,信息工程大学研究员,主要研究方向为网络空间安全
  • 基金资助:
    国家重点研发计划基金资助项目(2022YFB2901400)

Design, implementation and formal verification of BGP proxy for mimic router

Jin ZHANG1, Qiang GE1,2, Weihai XU1,2, Yiming JIANG3, Hailong MA3, Hongtao YU3   

  1. 1 The Endogenous Security Research Centre, Purple Mountain Laboratories, Nanjing 211100, China
    2 School of Cyber Science and Engineering, Southeast University, Nanjing 211100, China
    3 Institute of Information Technology, Information Engineering University, Zhengzhou 450000, China
  • Revised:2023-02-27 Online:2023-03-25 Published:2023-03-01
  • Supported by:
    The National Key Research and Development Program of China(2022YFB2901400)

摘要:

为确保拟态路由器中协议代理等“拟态括号”关键组件的安全性和功能正确性,设计实现了边界网关协议(BGP)代理,并采用形式化方法对BGP代理的安全性和功能正确性进行了验证。BGP代理通过监听邻居路由器与主执行体之间的BGP会话报文,模拟邻居路由器与从执行体展开BGP会话,实现各执行体的BGP状态一致。采用VeriFast定理证明器,编写基于分离逻辑的形式化规约,证明程序不会出现空指针引用等内存安全问题,并验证了BGP代理各功能模块实现的高级属性符合功能规约。BGP代理实现与验证代码量之比约为1.8:1,程序设计实现和程序验证所耗费的时间之比约为1:3。经过形式化验证的BGP代理处理100 000条BGP路由所花费的时间为0.16 s,约为未经过验证的BGP代理的7倍。研究工作为应用形式化方法证明拟态防御设备与系统中关键组件的安全性和功能正确性提供了参考。

关键词: 拟态防御, 边界网关协议, 路由器, 形式化验证

Abstract:

To ensure the safety and correctness of the critical ‘mimic bracket’ components such as protocol proxies of mimic routers, a BGP (border gateway protocol) proxy was designed and implemented, and formal methods were applied to verify the safety and correctness of the BGP proxy.The BGP packets communicated between the peer routers and the master actor were monitored by the BGP proxy.The BGP sessions with the slave actors on behalf of peer routers were established, ensuring the consistency of the BGP protocol states for all actors.The formal specification of the BGP proxy was written based on separation logic.The VeriFast theorem prover was used to prove that the program had no memory safety problems such as null pointer reference.Furthermore, the formal verification of high-level attributes of each module in BGP proxy was also conducted to strictly ensure that the implementation met the specification.The implementation to proof code ratio of BGP proxy is about 1.8:1, and the implementation to proof labor hour ratio is about 1:3.The formally verified BGP proxy consume 0.16 seconds to process 100 000 BGP routes, which is about 7 times as long as the unverified one.Works done provide a reference for applying formal methods to verify the safety and correctness of critical components in mimic defense equipment and systems.

Key words: mimic defense, BGP, router, formal verification

中图分类号: 

No Suggested Reading articles found!