为什么在移动应用和后端api之间的每个请求中发送用户名和密码是个坏主意?


妖邪
2024-12-14 02:13:56 (2月前)
  1. 我最近一直在查看应该是一个安全的iPhone应用程序用于工作相关任务的流量,我注意到该应用程序不会使用任何形式的会话ID /令牌...

2 条回复
  1. 0# 岁爵 | 2019-08-31 10-32



    嗯,你自己说了。您必须在设备上存储用户名和密码。这些凭证存储的安全性如何?设备上安装的流氓应用程序是否能够检索凭据?如果流氓应用程序在与有效应用程序相同的帐户下运行,它可能可以。即使您将这些凭据加密存储,您也必须将秘密存储在设备本身上。



    此外,移动设备丢失/被盗的可能性要高得多,攻击者可以访问设备本身。



    另一个原因是每次发送用户名和密码会增加攻击面。它将为攻击者提供更多具有常量数据的消息以尝试解密。



    最后,验证密码,如果正确实施,应该相对较慢,使其不太适合API身份验证。



    像OAuth 2.0这样的协议可以使用在有限时间内有效的访问令牌,并且您必须能够访问刷新令牌才能获得新的访问令牌。如果设备丢失或被盗,可以轻松撤销刷新令牌。


登录 后才能参与评论