【发布时间】:2017-09-07 22:18:20
【问题描述】:
我有一个使用 express 框架的 nodejs web 应用程序,它可以通过互联网访问。 我正在使用一个会话存储,它将会话存储为磁盘上的普通文件,并且在当前实现中,每个没有 cookie 的请求都将获得一个新的会话 ID,从而在磁盘上为新会话生成一个新文件。
由于可以通过 Internet 访问该应用程序,因此我收到了很多无效请求,这些请求当然不会发送 cookie,但会在我的文件系统上产生更多会话,这真是一团糟。
我使用 OWASP 会话管理备忘单作为实施指南 (https://www.owasp.org/index.php/Session_Management_Cheat_Sheet),但它没有详细介绍访客会话的主题。它只是说明应用程序可能会发现将会话也分配给未经身份验证的(访客)用户很有用,因此访客会话通常似乎是一个有效的功能。
所以现在我不知道如何正确解决无效/恶意请求不必要地创建会话/会话文件的问题。有什么推荐的方法吗?
我想可能是“访客”会话(
关于我应该如何解决这个问题的任何提示?
【问题讨论】:
-
为什么您认为在纯文件中创建和存储会话是安全的方式? session 最好存储在标记有过期日期的内存/缓存服务器中。此外,如果您收到许多无效请求,请尝试限制 IP 甚至禁止该特定 IP。无论哪种方式,我相信您都想多了,并添加了许多预防措施,这将使您的应用程序无法维护。尝试使用头盔等模块并阅读有关保护 express 应用程序的文章。
标签: node.js security session express owasp