Luk*_*ane
13
.net
c#
vb.net
security
auto-update
我觉得.net缺少一个简单的安全自动更新库,所以我已经实现了一些东西并把它放在这里.在任何人考虑使用该库之前,我都热衷于更新过程以获得一些同行评审.
以下是步骤:
- 客户端软件填充有公钥和URI以进行轮询.
- 客户端轮询清单文件的URI.
- 下载清单并使用签名(在单独的".signature"中)来检查清单是否有效.
- 从清单中解析待处理更新列表(向用户显示).
- 下载安装程序文件,并再次使用相应的".signature"文件进行验证.(下载的文件将受ACL保护)
- 安装程序已运行.
减轻威胁:
- 清单签名应该可以防止任何恶意下载(" 地毯式轰炸 ")
- 安装程序签名应防止任何MITM攻击发送恶意安装程序
- 使用ACL保护下载的安装程序应该可以防止任何本地升级攻击.
未减轻的威胁:
- 一个MITM攻击下,攻击者总是报告"没有可用的更新".(可能使客户端处于易受攻击的版本)
参考文献:
我错过了什么?