mint.com 可以更安全吗?如果可以,怎么做?

信息安全 Web应用程序 验证 数据泄露 对策
2021-09-04 21:20:23

在货币堆栈交换上阅读了一些关于 mint.com 的信息后,我想尝试一下。但坦率地说,这让我有点害怕。

该网站有一堆链接,解释了它们是如何如此安全的。我敢打赌,这一切都是真的,我相信他们采取了很多安全措施。但有一件事是误导。他们表现得好像该站点更安全,因为它是“只读的”。从他们的安全页面

Mint is a "read-only" service. You can organize and analyze your finances,
but you can't move funds between–or out of–any account using Mint.
And neither can anyone else.

这不是我担心的。我担心的是,如果有人以某种方式窃取了我的银行网站密码。然后他们可以去处理我的帐户。

这让我想到,我们是否可以推动一些更好的东西来使这种服务更安全?我能想到的一些事情可能在正确的轨道上:

  1. 一次性密码/两因素身份验证。我认为这样做的主要问题是,mint 访问的所有服务都需要使用相同的一次性密码,这样用户就不必为n服务输入每个密码。这意味着您需要第三方来处理此问题。
  2. 推而不是拉。其他网站必须添加一种机制来将数据导出到 mint。对于薄荷来说显然很难,因为它需要合作——但对消费者来说似乎很棒。
  3. 获取特殊的身份验证令牌以提供给 mint 而不是我的密码。可能支持 mint 能够证明其身份的机制,因此只有证明自己是 mint.com 的人才能使用令牌(因此,除非您能证明自己是 mint.com,否则窃取令牌是没有用的)......我猜我在 OAuth 领域吗?

我想还有其他能让我感觉更好但并不真正更安全的事情:如果所有这些货币/银行网站都可以发送访问通知。然后我可能能够知道 mint 何时访问与窃取我的数据的人,我可能有机会做出反应。

所以我想我在问:你对如何更好地有什么想法?如果所有这些公司都合作,完美的系统会是什么样子?这种事情是否有一个标准协议可以变得更普遍,以便更专业的服务可以像这样萌芽,人们可以放心地知道他们的数据是安全的?

(FWIW,无论如何我都可以尝试一下。如果我这样做了,我只是为了这个实验而更改了我所有的密码,然后在我完成尝试后再次更改它们。)

4个回答

据我所知,这似乎是金融服务的聚合器。为了使其具有任何有用的功能,这意味着它必须至少暂时存储您的帐户详细信息和身份验证凭据——在这种情况下,它远非“只读”。提供商随后在安全声明中声明完全相反的内容,这让我认为这些人不值得信任我的帐户详细信息,无论他们的控制有多复杂。

Ramhound 建议 mint.com 使用类似 oath 的系统 - 但仍使用临时代理令牌进行身份验证。Ramhound 还指出You never give Mint your banking information,FAQ 中的第一个问题是Why does Mint need my bank login information (username and password)?. FAQ继续解释 mint 如何存储这些数据

这种聚合确实具有内在价值,为这种服务增加价值的一种方法是提供比大多数金融服务提供商网站上启用的更好的身份验证安全性——但显然 mint.com 并非如此。还有一个问题是这样的提供者是否受到与来源提供者相同的立法限制。

但是,除非您是编写 mint.com 软件的人,否则这不是纯粹猜测的问题吗?

所以我刚刚注册了 mint.com 并认为 Ramhound 和 this.josh 的答案是正确的。

对于支持良好的银行(例如,我尝试直接使用 ING),当您将帐户添加到 mint.com 时,您通常会给出您的帐号,以及一个不是您的典型密码的“访问代码”。访问代码允许财务管理工具mint.com以只读方式访问您的帐户信息;见: http ://helpcenter.ingdirect.com/Topic.aspx?category=FINANCE1

对于我的小型本地信用合作社(总共 9 个分支机构),mint.com 似乎也很高兴让我添加该帐户。但是,对于这家银行,他们想要我的帐号和密码。我不愿意给他们这个,因为我的密码需要以明文形式存储(即使它是加密的;为了让 mint.com 能够使用它,该站点必须能够对其进行解密,因此任何恶意管理员都可以用它做点什么)并且会给予 mint.com 我完整的在线帐户权限。诚然,侵入的恶意管理员/黑客mint.com很可能是侵入chas.com 并设法使用我的帐户进行操作的恶意管理员。

编辑:经进一步检查;ING direct 似乎是个例外——我尝试过的大多数类型的账户(即使是像大通这样的大银行)似乎都需要我的密码。

EDIT2:无论如何,我决定给 mint.com 我的帐户密码(它们不会在其他任何地方使用);我让他们进行身份验证,然后立即更改了这些银行的密码。 即使在密码更改后(不允许我使用旧密码登录),我也可以在 mint.com 上刷新我的余额,尽管从未给他们提供新密码;所以似乎他们每次都没有使用我的密码登录(正如我最初担心的那样)。似乎他们最初使用密码创建了某种他们可以访问的只读访问代码。(见编辑3)

EDIT3:显然他们确实以可恢复的方式存储您的密码并使用它们进行身份验证。如果您更改密码;它停止工作。这很有趣,因为;假设我昨天上午 10 点左右建立了 mint.com;上午 10 点 15 分更改密码;并且在上午 11:00 可以请求 mint.com 刷新并且它似乎更新成功;但是在下午 6 点,我无法刷新我的帐户。但是,当我昨晚尝试登录时,它无法使用更改后的密码登录帐户并开始抱怨身份验证。因此,要么密码更改延迟通过银行系统同步(例如,mint.com 的只读登录方法与用户的登录方法),要么 mint.com 会谎称如果您最近刷新了帐户,则刷新成功。

我应该提一下,两家银行都使用一种双因素身份验证。例如,首先我必须用“母亲的娘家姓/父亲的中间名”之类的问题注册一台计算机,然后才能输入我的凭据。mint.com 似乎不需要有关这些安全问题的任何信息;只想要我当前的登录凭据。因此,为了获得他们的只读访问权限,他们似乎有一个备用登录机制,这可能是只读的。但是,由于安全问题有可能被研究或猜测,我怀疑我会使用他们的服务。

我可以看到降低风险的一种选择是让我的银行允许我拥有一个只读的 ID/密码。此帐户无法在银行在线网站上进行任何交易,但可以查看数据,这将是我用于薄荷的 ID。当然,这不会消除有人窃取只读密码并拥有对您帐户的读取权限的风险,但我觉得这更容易接受。

这当然只会对像 ING direct(现为 CapitalOne360)这样的银行有所帮助,它们提供只读访问的“访问代码”。

但风险仍然存在,因为银行还允许攻击者利用交易信息进入取款访问权限,正如在“ING Direct 的个人金融访问代码解决账户聚合器的主要问题”的第一条评论中所讨论的那样

有没有更好的东西我们可以推动使这种服务更安全?

不,我知道这是一个反问,所以给我几行解释。

  • mint.com 本质上是一种在线服务

  • mint.com 是一家专注于利润最大化的企业

  • 安全风险缓解在现金流出以及培训、维护、管理和其他运营成本方面都很昂贵

  • 将安全风险分配给个人具有良好的商业意义

保存财务信息的始终在线服务具有最大的曝光率。它始终可以从任何可以建立互联网连接的位置获得,如今几乎在世界任何地方。

它对对手具有很高的价值。财务信息是犯罪分子可以窃取的最有价值的资产之一。这意味着所有类型的内部和外部威胁都将尝试破坏 mint.com 安全系统。攻击者的技巧和经验越丰富,就越难防御他们。

他们似乎专注于技术措施。

这是迄今为止最糟糕的指标。如果计算机和网络安全的历史教会了我们什么,那就是人员和政策对于系统成功而言比任何技术措施都更为重要。

他们的安全页面上应该有什么:

  • 每个 mint.com 员工都通过了背景调查,特别强调财务问题。每三年(或其他合理期限)对员工进行一次复查。

  • mint.com 的政策是降低每个用户的个人风险,我们为个人损失提供高达 10,000,000 美元(或一些非常大的价值)的保险

  • mint.com 内部开发了用于操作、管理和维护的所有软件,并且没有任何软件是由第三方开发的。

  • mint.com 每季度(或其他合理的)执行计算机和网络安全检查,并且这些检查的结果会发布给每个 mint.com 用户

  • mint.com 不会将第三方用于任何安全关键工作。

  1. 一次性密码/两因素身份验证。

身份验证可能更安全,但您必须在易用性和成本之间取得平衡。如果身份验证技术成本太高,那么企业将无法使用它。如果它太难使用,那么用户要么离开 mint.com,要么绕过该技术。

将身份验证责任传递给第三方成本高昂且具有潜在危险。第三方必须像 mint.com 一样安全,否则移动身份验证毫无意义。

  1. 推而不是拉。

这是非常危险的,因为它有误导的可能性。可以在短时间内伪装成 mint.com 的对手可以轻松地从许多机构和许多个人那里获取财务信息。通常,信息流动的便利性与信息的机密性背道而驰。它越容易流动,就越难保护。

  1. 获取特殊的身份验证令牌以提供给 mint

身份验证通过三种方式完成:您知道的东西(密码)、您拥有的东西(加密令牌、物理密钥)或您的身份(生物识别)。与单向传输相比,密码认证在质询响应协议中提供了更高的安全性。理想情况下,您需要双方都经过身份验证的双向质询响应。