刚刚发现了一点红宝石,它可以用来解密从手机缓存中取出的 Snapchat 照片,显然是从这里改编的。令我惊讶的是,考虑到最近广为人知的有关 Snapchat 安全性的问题(据我回忆,主要是围绕整个电话号码/用户名泄露的问题),它没有任何问题。
require 'openssl'
ARGV.each do|a, index|
data = File.open(a, 'r:ASCII-8BIT').read
c = OpenSSL::Cipher.new('AES-128-ECB')
c.decrypt
c.key = 'M02cnQ51Ji97vwT4'
o = ''.force_encoding('ASCII-8BIT')
data.bytes.each_slice(16) { |s| o += c.update(s.map(&:chr).join) }
o += c.final
File.open('decyphered_' + a , 'w') { |f| f.write(o) }
end
所以,我的问题是,考虑到人们经常发送私密的东西从来没有打算只与一个人分享超过 10 秒,并且还考虑到这个应用程序的受欢迎程度?
tldr/对于那些并不真正关心计算机如何工作但仍想知道发生了什么的人:基本上,假设您有4000 万人使用 Snapchat,有 1650 万用户互相发送图片,每张图片每天都在自己的小保险箱里。现在,如果你给这 1650 万人一把同样脆弱的塑料钥匙来打开每一个密码箱来捕捉 Snapchat 媒体会怎样?