防御StarBleed漏洞的FPGA配置位流混淆方法

作者:于志杰; 赵欢; 李铀
来源:微电子学与计算机, 2021, 38(06): 7-12.
DOI:10.19304/j.cnki.issn1000-7180.2021.06.002

摘要

针对Xilinx公司7系列/Virtex-6 FPGA中存在的StarBleed漏洞,通过分析漏洞攻击过程及其关键环节,提出了基于配置位流混淆的加固方法.首先针对Vivado生成的密文位流进行解密得到明文位流.针对明文位流中的配置指令,提出了指令顺序混淆、指令字混淆和指令参数混淆方法.针对明文位流中的HMAC签名区域,混淆其中的ikeypad和okeypad数据区.而后对混淆后的位流重新进行HMAC签名计算.最后重新进行AES加密得到混淆后的密文位流,实现以多种方式对漏洞攻击中最关键的修改密文位流环节进行防御.完成混淆后,利用机器学习算法对混淆效果进行评估.实验表明,混淆方法可以提升明文数据与密文数据的相似程度.在不需要修改硬件的条件下,能有效地增加漏洞攻击难度,可以用较低的代价增强针对StarBleed漏洞的防护能力.

全文