我们都很欣赏智能卡,因为它们能保护私钥,所以不会暴露在世界上。
但在生产环境中,智能卡的插入时间往往很长(几小时)。
现在,问题面前的两种情况如下:
此外,还可以假设私钥可以从卡中导出。
现在的问题是:
在远程攻击场景中,专业(目标)攻击者是否有可能从智能卡获取私钥?
发布于 2015-06-30 23:41:15
大多数智能卡应用程序的薄弱环节是PIN入口。直接从卡中提取私钥几乎是不可能的。有了一些酸包破坏和电子显微镜的工作,一个熟练的团队,和足够的时间,金钱和运气,你可以从理论上提取钥匙,但它不仅涉及物理访问,但在一个情况下,卡将被实际摧毁。
但是,如果主机系统受到破坏,并且用户的PIN输入被键盘记录,然后重新播放,智能卡将很高兴地对攻击者和对用户一样工作。如果您担心主机系统被破坏,您应该查看直接的PIN入口。使用带有键盘的智能卡读取器,通信直接在键盘和读取器之间进行。PIN从不旅行到主机,因此无法拦截。虽然从理论上讲,阅读器本身可能有缺陷,但我从未见过涉及直接PIN输入的漏洞,而且我认为它可能是特定于硬件的。有一些方法可以在没有专用键盘的情况下使PIN条目变硬,使用可编程智能卡和OTP,而不是仅使用PIN,但不确定这是否是您感兴趣的另一种选择。
同时要记住很多也取决于用例。这张卡是否用于数字签名?攻击者获取欺诈性签名与窃取实际私钥造成的损害是什么?在某些情况下,这是一个重要的缓解,在其他情况下,这是一个无意义的区别。后一种情况更难防范,因为保护密钥比保护未经授权使用密钥容易得多。
发布于 2016-03-13 12:22:44
如果卡操作系统本身支持任何导出/读出秘密密钥的命令--您可能会想到一些远程获取私钥的场景。但大多数(如果不是全部…)根本没有这样的功能。故意的。因此,无论主机安全/保护的使用-卡不能发送回私钥在任何情况下。有些卡片甚至更进一步--它们根本没有关键的导入功能。您只能在卡内生成密钥对,并且只能读取公钥。如果私钥在输入卡之前已被复制,则此方法还可以消除任何争议。如果购物车本身生成了密钥对,或者您没有私钥,那么您可以在卡中拥有私钥。
当然,所有提到的通过物理检查或基于功耗/时间/故障的分析对卡片的攻击仍然存在,但它们很难通过远程手段输出(也许故障分析有时仍然可以远程输出)。
但是,最危险的线程与提到的“PIN身份验证卡的远程使用”有关,它不需要任何密钥提取:)如果您可以远程使用智能卡中的密钥来提供签名操作,您通常会得到您想要的结果,因为RSA计算的结果是目标,而不是私钥本身;)
发布于 2015-06-30 20:03:56
不是的。
忘了遥远的部分吧。只要把你的智能卡给攻击者,告诉他使用任何资源来获取私钥。他将无法在本地攻击中做到这一点,更不用说远程攻击了。这就是篡改证据的意义所在。
至少这是制造商所宣称的。
https://security.stackexchange.com/questions/92775
复制相似问题