现在都说不要付赎金,很可能打水漂,因为勒索作者没法验证付款者的身份。
但是……为啥我觉得勒索作者有办法验证赎金来源呢?
比特币地址虽然任何人在任何时候都能生成,但只要私钥不泄露,还是不可能伪造的……
受害者真心要付款的话,肯定要用从未公开使用过的、新生成的地址。如果受害者提前告诉勒索者,说自己要通过这个地址付款,别人也不可能猜出受害者用的地址。对于想盗用其他受害者赎金的“鸡贼”受害者来说,他们无法提前得知真正付款的受害者用了哪个地址,勒索者倒是可以提前得知,所以“鸡贼”受害者就算查了比特币交易记录,把别人付款的地址发给勒索者,勒索者也不会上当。
勒索软件会在感染时生成 RSA 密钥对,其中 RSA 公钥被用来加密每一个“绑票”文件的 AES 密钥。每台机器的 RSA 密钥对都是唯一的(而且就算受害者泄露了公钥也没问题,如果有人把别人的公钥发过去,岂不是要白白替别人付赎金?应该没人愿意这么干;如果某个鸡贼的受害者把别人的 RSA 公钥发过去,也是没有意义的显然,别人的 RSA 私钥无法解密自己的文件)。
所以,勒索者会要求受害者怎么做呢?很简单,只要受害者先把本机的 RSA 公钥(被加密的 RSA 私钥其实也行)和自己付款用的比特币地址通过暗网发过去,勒索作者就可以用一个自动化的程序读出受害者的比特币地址,过一段时间后(这段时间不能太短,否则“鸡贼”的受害者可能会拿比特币交易确认延迟、网络延迟抵赖,辩称自己才是真正的付款者),受害者再用这个比特币地址付款,只要勒索者看到这个地址付款了,就可以确认赎金已经支付了,然后就可以给受害者发来的本机 RSA 私钥解密。
如果 WanaCrypt 的解密程序有问题,界面上的“ Contact us ”如果没发送 RSA 公钥(我还不知道 WanaCrypt 具体是怎么做的),就需要受害者自己发送,这样大家发的格式可能就都不一样了,可能不利于自动验证,不过除非受害者用了特别奇葩的格式,否则至少可以免除一大部分手动验证的工作吧。
但是……为啥我觉得勒索作者有办法验证赎金来源呢?
比特币地址虽然任何人在任何时候都能生成,但只要私钥不泄露,还是不可能伪造的……
受害者真心要付款的话,肯定要用从未公开使用过的、新生成的地址。如果受害者提前告诉勒索者,说自己要通过这个地址付款,别人也不可能猜出受害者用的地址。对于想盗用其他受害者赎金的“鸡贼”受害者来说,他们无法提前得知真正付款的受害者用了哪个地址,勒索者倒是可以提前得知,所以“鸡贼”受害者就算查了比特币交易记录,把别人付款的地址发给勒索者,勒索者也不会上当。
勒索软件会在感染时生成 RSA 密钥对,其中 RSA 公钥被用来加密每一个“绑票”文件的 AES 密钥。每台机器的 RSA 密钥对都是唯一的(而且就算受害者泄露了公钥也没问题,如果有人把别人的公钥发过去,岂不是要白白替别人付赎金?应该没人愿意这么干;如果某个鸡贼的受害者把别人的 RSA 公钥发过去,也是没有意义的显然,别人的 RSA 私钥无法解密自己的文件)。
所以,勒索者会要求受害者怎么做呢?很简单,只要受害者先把本机的 RSA 公钥(被加密的 RSA 私钥其实也行)和自己付款用的比特币地址通过暗网发过去,勒索作者就可以用一个自动化的程序读出受害者的比特币地址,过一段时间后(这段时间不能太短,否则“鸡贼”的受害者可能会拿比特币交易确认延迟、网络延迟抵赖,辩称自己才是真正的付款者),受害者再用这个比特币地址付款,只要勒索者看到这个地址付款了,就可以确认赎金已经支付了,然后就可以给受害者发来的本机 RSA 私钥解密。
如果 WanaCrypt 的解密程序有问题,界面上的“ Contact us ”如果没发送 RSA 公钥(我还不知道 WanaCrypt 具体是怎么做的),就需要受害者自己发送,这样大家发的格式可能就都不一样了,可能不利于自动验证,不过除非受害者用了特别奇葩的格式,否则至少可以免除一大部分手动验证的工作吧。

