TOP5存取控制中断(Broken Access Control)
在网站安全中,访问控制意味着根据访问者的需求限制访问者可以访问的部分或页面。
例如,如果您拥有一家电子商务商店,则可能需要访问管理面板才能添加新产品或为即将到来的假期设置促销。但是,几乎没有其他人会需要它。允许网站的其他访客访问您的登录页面只会使您的电子商务商店受到攻击。
这就是当今几乎所有主要内容管理系统(CMS)的问题。默认情况下,他们向全世界授予对管理员登录页面的访问权限。它们中的大多数也不会强迫您建立多因素身份验证方法(MFA)。
多因素身份验证(MFA)
MFA是通过结合两个或三个独立的凭证:用户知道什么(知识型的身份验证),用户有什么(安全性令牌或者智能卡),用户是什么(生物识别验证)。
单因素身份验证(SFA)
单因素身份验证与多因素身份验证相比,只需要用户现有的知识。虽然密码口令身份验证很适合网站或者应用程序的访问,但是在网络在线金融交易方面还是不够安全。
访问控制中断的示例
以下是一些我认为是“访问”的示例:
- 访问主机控制/管理面板
- 通过FTP / SFTP / SSH访问服务器
- 访问网站的管理面板
- 访问服务器上的其他应用程序
- 访问数据库
攻击者可以利用以下授权缺陷:
- 访问未经授权的功能和/或数据
- 查看敏感文件
- 更改访问权限
那我们又该如何阻止呢?
- 采用特权最低的概念–将角色应用于任务,并且仅在完成该任务所需的时间范围内应用,而不再需要更多时间。
- 删除不需要的帐户或不再需要其用户的帐户。
- 审核您的服务器和网站–谁在做什么,什么时候以及为什么做。
- 如果可能,对所有访问点应用多因素身份验证。
- 禁用访问点,直到需要它们为止,以减少访问窗口。
- 从服务器上删除不必要的服务。
- 检查可从外部访问的应用程序以及与网络绑定的应用程序。
- 如果要开发网站,请记住,生产盒不应成为未经测试即可开发,测试或发布更新的地方。
建议
- 除公共资源外,默认情况下拒绝。
- 一次实施访问控制机制,并在整个应用程序中重用它们,包括最大程度地减少CORS的使用。(跨域资源共享(CORS) 是一种机制,它使用额外的 HTTP 头来告诉浏览器 让运行在一个 origin (domain) 上的Web应用被准许访问来自不同源服务器上的指定的资源。当一个资源从与该资源本身所在的服务器不同的域、协议或端口请求一个资源时,资源会发起一个跨域 HTTP 请求。)
- 模型访问控制应强制执行记录所有权,而不是接受用户可以创建,读取,更新或删除任何记录。
- 唯一的应用程序业务限制要求应由域模型强制实施。
- 禁用Web服务器目录列表,并确保Web根目录中不存在文件元数据(例如.git)和备份文件。
- 记录访问控制失败,并在适当时提醒管理员(例如,反复失败)。注意:为WordPress网站提供免费插件
- 限速API和控制器访问权限,以最大程度降低自动攻击工具带来的危害。
- 开发人员和质量检查人员应包括功能访问控制单元和集成测试。
- 点赞
- 收藏
- 分享
- 文章举报
qq_39682037发布了15 篇原创文章 · 获赞 0 · 访问量 235私信关注