SCW 아이콘
영웅 배경, 구분선 없음
블로그

程序员征服安全:分享与学习系列——访问控制失效

야프 카란 싱
게시일 : 2019년 5월 9일
마지막 업데이트: 2026년 3월 10일

在构建业务应用程序时,无论是供客户内部使用还是外部使用,都可能不会让每个用户执行每一项功能。如果这样做,则可能容易受到访问控制中断的影响。

让我们来看看什么是失效的访问控制,为什么它如此危险,以及如何修复它。

了解失效的访问控制

当应用程序代码没有适当的安全性或访问检查时,就会出现访问控制中断。当应用程序以某种方式配置错误,允许访问用户不应访问的功能或页面时,也会发生这种情况。

如果您负责公司的财务,则可以将资金存入某些账户或在公司的账户之间转账。但是,您不应有权从这些账户中提取现金或向其他账户转账。如果没有适当的访问检查,则您的员工可能能够执行不必要的更多职能。

这些检查可以在代码中完成,也可以在配置文件中完成。例如,可能有 XML 配置文件告诉 Web 应用程序框架允许哪些用户访问哪些页面。这样可以确保用户只能访问他们有权使用的功能。

为什么访问控制失效很危险

以这个例子为例:攻击者已经意识到你的用户账户创建代码可以被操纵,允许攻击者通过简单的发布请求创建管理员用户。他们可以使用用户名和密码发送请求,然后在途中进行更改,将管理员角色作为参数包含在 URL 中或请求正文中。攻击者登录应用程序并立即获得管理员权限。

它不一定总是渗透系统的恶意攻击者。如果没有适当的访问控制,不应该在部门之间共享的敏感信息可能会泄露。想象一下公司中是否有任何员工可以看到人力资源工资数据或财务数据。如果有员工看到裁员是由于公司财务状况不佳而出现的,会发生什么?这可能会损害您的士气和公司的声誉。

客户的敏感信息也可能丢失。公司经常存储使用其服务的客户的个人信息。注意不要因为缺乏访问控制而意外暴露此信息。例如,如果你的系统允许用户请求他们的健康记录,他们是否也有权请求和查看他人的健康信息?如果 URL 包含客户 ID 号,攻击者可以一遍又一遍地增加该客户 ID 号,直到找到与另一位客户相匹配的客户 ID 号,从而泄露他们的个人数据。

打败失效的访问控制

基于角色的访问控制 (RBAC) 是实现健全访问控制的非常有效的工具。那些使用 Active Directory 的人可能熟悉以下想法 创建群组 并允许整个群体访问某些物品,而不是个人。应用程序的工作方式相同,使用角色来定义允许谁查看什么。

这有两个优点。首先,当有人离开管理员角色时,不必更改功能。如果某人以前是管理员,但现在不应再是管理员,那么您只需将一个新人员置于管理员角色中,然后将以前的人员从该角色中移除即可。该代码检查用户是否具有管理员角色,而不是检查每个用户是否有权访问某个页面或功能。

第二个好处是避免了维护噩梦。如果访问控制非常精细,以至于每个人都与每一个可能的功能或页面都有关联,随着时间的推移将无法进行管理。角色使事情变得容易得多,因为可以将多个人添加到一个角色中。一个职位可能包括整个公司,而另一个职位可能只有五个人。这使得管理角色的效率更高,因为要管理的角色将减少。一个拥有 10,000 人的公司只能拥有 100 个角色,而不是应用程序中职能数量的 10,000 倍。研究您选择的应用程序框架,看看有哪些选项可以实现强大的访问控制。

使用功能级访问控制也至关重要。通过要求用户通过某些访问控制检查来保护对所有功能的访问权限。使用最小权限原则,默认拒绝访问,仅在需要时才开放访问权限。可能很难记住为每个功能实现访问控制。使用中央组件来管理和强制执行访问控制。

保护您的敏感功能

访问控制中断可能会使您的数据和应用程序完全容易受到攻击和利用。未得到适当保护的客户数据可能会导致大规模数据泄露,从而损害您的声誉和收入。

如果攻击者能够访问他们不应该访问的功能,则访问控制中断也可能导致账户被盗用。使用适当的功能级别访问控制,可以保护应用程序免受恶意攻击者甚至意外内部人员的侵害。

认为你已经完成了功能级别的访问权限吗?您现在可以挑战自己修复损坏的访问控制: [从这里开始]

리소스 보기
리소스 보기

在构建业务应用程序时,无论是供客户内部使用还是外部使用,都可能不会让每个用户执行每一项功能。如果这样做,则可能容易受到访问控制中断的影响。

더 많은 것에 관심이 있으신가요?

야프 카란 싱은 보안 코딩 전도자, 수석 싱 및 공동 설립자입니다 Secure Code Warrior .

더 알아보세요

Secure Code Warrior는 조직이 소프트웨어 개발 생명주기 전반에 걸쳐 코드를 보호하고 사이버 보안을 최우선으로 하는 문화를 조성하도록 지원합니다. 앱 보안 관리자, 개발자, 최고정보보안책임자(CISO) 또는 보안 관련 업무를 수행하는 모든 분들에게, 저희는 조직이 안전하지 않은 코드와 관련된 위험을 줄일 수 있도록 돕습니다.

데모 예약
공유하기:
링크드인 브랜드사회적x 로고
저자
야프 카란 싱
게시일: 2019년 5월 9일

야프 카란 싱은 보안 코딩 전도자, 수석 싱 및 공동 설립자입니다 Secure Code Warrior .

공유하기:
링크드인 브랜드사회적x 로고

在构建业务应用程序时,无论是供客户内部使用还是外部使用,都可能不会让每个用户执行每一项功能。如果这样做,则可能容易受到访问控制中断的影响。

让我们来看看什么是失效的访问控制,为什么它如此危险,以及如何修复它。

了解失效的访问控制

当应用程序代码没有适当的安全性或访问检查时,就会出现访问控制中断。当应用程序以某种方式配置错误,允许访问用户不应访问的功能或页面时,也会发生这种情况。

如果您负责公司的财务,则可以将资金存入某些账户或在公司的账户之间转账。但是,您不应有权从这些账户中提取现金或向其他账户转账。如果没有适当的访问检查,则您的员工可能能够执行不必要的更多职能。

这些检查可以在代码中完成,也可以在配置文件中完成。例如,可能有 XML 配置文件告诉 Web 应用程序框架允许哪些用户访问哪些页面。这样可以确保用户只能访问他们有权使用的功能。

为什么访问控制失效很危险

以这个例子为例:攻击者已经意识到你的用户账户创建代码可以被操纵,允许攻击者通过简单的发布请求创建管理员用户。他们可以使用用户名和密码发送请求,然后在途中进行更改,将管理员角色作为参数包含在 URL 中或请求正文中。攻击者登录应用程序并立即获得管理员权限。

它不一定总是渗透系统的恶意攻击者。如果没有适当的访问控制,不应该在部门之间共享的敏感信息可能会泄露。想象一下公司中是否有任何员工可以看到人力资源工资数据或财务数据。如果有员工看到裁员是由于公司财务状况不佳而出现的,会发生什么?这可能会损害您的士气和公司的声誉。

客户的敏感信息也可能丢失。公司经常存储使用其服务的客户的个人信息。注意不要因为缺乏访问控制而意外暴露此信息。例如,如果你的系统允许用户请求他们的健康记录,他们是否也有权请求和查看他人的健康信息?如果 URL 包含客户 ID 号,攻击者可以一遍又一遍地增加该客户 ID 号,直到找到与另一位客户相匹配的客户 ID 号,从而泄露他们的个人数据。

打败失效的访问控制

基于角色的访问控制 (RBAC) 是实现健全访问控制的非常有效的工具。那些使用 Active Directory 的人可能熟悉以下想法 创建群组 并允许整个群体访问某些物品,而不是个人。应用程序的工作方式相同,使用角色来定义允许谁查看什么。

这有两个优点。首先,当有人离开管理员角色时,不必更改功能。如果某人以前是管理员,但现在不应再是管理员,那么您只需将一个新人员置于管理员角色中,然后将以前的人员从该角色中移除即可。该代码检查用户是否具有管理员角色,而不是检查每个用户是否有权访问某个页面或功能。

第二个好处是避免了维护噩梦。如果访问控制非常精细,以至于每个人都与每一个可能的功能或页面都有关联,随着时间的推移将无法进行管理。角色使事情变得容易得多,因为可以将多个人添加到一个角色中。一个职位可能包括整个公司,而另一个职位可能只有五个人。这使得管理角色的效率更高,因为要管理的角色将减少。一个拥有 10,000 人的公司只能拥有 100 个角色,而不是应用程序中职能数量的 10,000 倍。研究您选择的应用程序框架,看看有哪些选项可以实现强大的访问控制。

使用功能级访问控制也至关重要。通过要求用户通过某些访问控制检查来保护对所有功能的访问权限。使用最小权限原则,默认拒绝访问,仅在需要时才开放访问权限。可能很难记住为每个功能实现访问控制。使用中央组件来管理和强制执行访问控制。

保护您的敏感功能

访问控制中断可能会使您的数据和应用程序完全容易受到攻击和利用。未得到适当保护的客户数据可能会导致大规模数据泄露,从而损害您的声誉和收入。

如果攻击者能够访问他们不应该访问的功能,则访问控制中断也可能导致账户被盗用。使用适当的功能级别访问控制,可以保护应用程序免受恶意攻击者甚至意外内部人员的侵害。

认为你已经完成了功能级别的访问权限吗?您现在可以挑战自己修复损坏的访问控制: [从这里开始]

리소스 보기
리소스 보기

아래 양식을 작성하여 보고서를 다운로드하세요

귀하의 허락을 받아 저희 제품 및/또는 관련 보안 코딩 주제에 관한 정보를 보내드리고자 합니다. 귀하의 개인정보는 항상 매우 신중하게 취급되며, 마케팅 목적으로 타사에 판매하지 않을 것을 약속드립니다.

제출
scw 성공 아이콘
scw 오류 아이콘
양식을 제출하려면 "분석" 쿠키를 활성화하십시오. 완료 후에는 원할 때 다시 비활성화할 수 있습니다.

在构建业务应用程序时,无论是供客户内部使用还是外部使用,都可能不会让每个用户执行每一项功能。如果这样做,则可能容易受到访问控制中断的影响。

让我们来看看什么是失效的访问控制,为什么它如此危险,以及如何修复它。

了解失效的访问控制

当应用程序代码没有适当的安全性或访问检查时,就会出现访问控制中断。当应用程序以某种方式配置错误,允许访问用户不应访问的功能或页面时,也会发生这种情况。

如果您负责公司的财务,则可以将资金存入某些账户或在公司的账户之间转账。但是,您不应有权从这些账户中提取现金或向其他账户转账。如果没有适当的访问检查,则您的员工可能能够执行不必要的更多职能。

这些检查可以在代码中完成,也可以在配置文件中完成。例如,可能有 XML 配置文件告诉 Web 应用程序框架允许哪些用户访问哪些页面。这样可以确保用户只能访问他们有权使用的功能。

为什么访问控制失效很危险

以这个例子为例:攻击者已经意识到你的用户账户创建代码可以被操纵,允许攻击者通过简单的发布请求创建管理员用户。他们可以使用用户名和密码发送请求,然后在途中进行更改,将管理员角色作为参数包含在 URL 中或请求正文中。攻击者登录应用程序并立即获得管理员权限。

它不一定总是渗透系统的恶意攻击者。如果没有适当的访问控制,不应该在部门之间共享的敏感信息可能会泄露。想象一下公司中是否有任何员工可以看到人力资源工资数据或财务数据。如果有员工看到裁员是由于公司财务状况不佳而出现的,会发生什么?这可能会损害您的士气和公司的声誉。

客户的敏感信息也可能丢失。公司经常存储使用其服务的客户的个人信息。注意不要因为缺乏访问控制而意外暴露此信息。例如,如果你的系统允许用户请求他们的健康记录,他们是否也有权请求和查看他人的健康信息?如果 URL 包含客户 ID 号,攻击者可以一遍又一遍地增加该客户 ID 号,直到找到与另一位客户相匹配的客户 ID 号,从而泄露他们的个人数据。

打败失效的访问控制

基于角色的访问控制 (RBAC) 是实现健全访问控制的非常有效的工具。那些使用 Active Directory 的人可能熟悉以下想法 创建群组 并允许整个群体访问某些物品,而不是个人。应用程序的工作方式相同,使用角色来定义允许谁查看什么。

这有两个优点。首先,当有人离开管理员角色时,不必更改功能。如果某人以前是管理员,但现在不应再是管理员,那么您只需将一个新人员置于管理员角色中,然后将以前的人员从该角色中移除即可。该代码检查用户是否具有管理员角色,而不是检查每个用户是否有权访问某个页面或功能。

第二个好处是避免了维护噩梦。如果访问控制非常精细,以至于每个人都与每一个可能的功能或页面都有关联,随着时间的推移将无法进行管理。角色使事情变得容易得多,因为可以将多个人添加到一个角色中。一个职位可能包括整个公司,而另一个职位可能只有五个人。这使得管理角色的效率更高,因为要管理的角色将减少。一个拥有 10,000 人的公司只能拥有 100 个角色,而不是应用程序中职能数量的 10,000 倍。研究您选择的应用程序框架,看看有哪些选项可以实现强大的访问控制。

使用功能级访问控制也至关重要。通过要求用户通过某些访问控制检查来保护对所有功能的访问权限。使用最小权限原则,默认拒绝访问,仅在需要时才开放访问权限。可能很难记住为每个功能实现访问控制。使用中央组件来管理和强制执行访问控制。

保护您的敏感功能

访问控制中断可能会使您的数据和应用程序完全容易受到攻击和利用。未得到适当保护的客户数据可能会导致大规模数据泄露,从而损害您的声誉和收入。

如果攻击者能够访问他们不应该访问的功能,则访问控制中断也可能导致账户被盗用。使用适当的功能级别访问控制,可以保护应用程序免受恶意攻击者甚至意外内部人员的侵害。

认为你已经完成了功能级别的访问权限吗?您现在可以挑战自己修复损坏的访问控制: [从这里开始]

웹 세미나 시청
시작하자
더 알아보세요

아래 링크를 클릭하고 이 자료의 PDF를 다운로드하세요.

Secure Code Warrior는 조직이 소프트웨어 개발 생명주기 전반에 걸쳐 코드를 보호하고 사이버 보안을 최우선으로 하는 문화를 조성하도록 지원합니다. 앱 보안 관리자, 개발자, 최고정보보안책임자(CISO) 또는 보안 관련 업무를 수행하는 모든 분들에게, 저희는 조직이 안전하지 않은 코드와 관련된 위험을 줄일 수 있도록 돕습니다.

보고서 보기데모 예약
리소스 보기
공유하기:
링크드인 브랜드사회적x 로고
더 많은 것에 관심이 있으신가요?

공유하기:
링크드인 브랜드사회적x 로고
저자
야프 카란 싱
게시일: 2019년 5월 9일

야프 카란 싱은 보안 코딩 전도자, 수석 싱 및 공동 설립자입니다 Secure Code Warrior .

공유하기:
링크드인 브랜드사회적x 로고

在构建业务应用程序时,无论是供客户内部使用还是外部使用,都可能不会让每个用户执行每一项功能。如果这样做,则可能容易受到访问控制中断的影响。

让我们来看看什么是失效的访问控制,为什么它如此危险,以及如何修复它。

了解失效的访问控制

当应用程序代码没有适当的安全性或访问检查时,就会出现访问控制中断。当应用程序以某种方式配置错误,允许访问用户不应访问的功能或页面时,也会发生这种情况。

如果您负责公司的财务,则可以将资金存入某些账户或在公司的账户之间转账。但是,您不应有权从这些账户中提取现金或向其他账户转账。如果没有适当的访问检查,则您的员工可能能够执行不必要的更多职能。

这些检查可以在代码中完成,也可以在配置文件中完成。例如,可能有 XML 配置文件告诉 Web 应用程序框架允许哪些用户访问哪些页面。这样可以确保用户只能访问他们有权使用的功能。

为什么访问控制失效很危险

以这个例子为例:攻击者已经意识到你的用户账户创建代码可以被操纵,允许攻击者通过简单的发布请求创建管理员用户。他们可以使用用户名和密码发送请求,然后在途中进行更改,将管理员角色作为参数包含在 URL 中或请求正文中。攻击者登录应用程序并立即获得管理员权限。

它不一定总是渗透系统的恶意攻击者。如果没有适当的访问控制,不应该在部门之间共享的敏感信息可能会泄露。想象一下公司中是否有任何员工可以看到人力资源工资数据或财务数据。如果有员工看到裁员是由于公司财务状况不佳而出现的,会发生什么?这可能会损害您的士气和公司的声誉。

客户的敏感信息也可能丢失。公司经常存储使用其服务的客户的个人信息。注意不要因为缺乏访问控制而意外暴露此信息。例如,如果你的系统允许用户请求他们的健康记录,他们是否也有权请求和查看他人的健康信息?如果 URL 包含客户 ID 号,攻击者可以一遍又一遍地增加该客户 ID 号,直到找到与另一位客户相匹配的客户 ID 号,从而泄露他们的个人数据。

打败失效的访问控制

基于角色的访问控制 (RBAC) 是实现健全访问控制的非常有效的工具。那些使用 Active Directory 的人可能熟悉以下想法 创建群组 并允许整个群体访问某些物品,而不是个人。应用程序的工作方式相同,使用角色来定义允许谁查看什么。

这有两个优点。首先,当有人离开管理员角色时,不必更改功能。如果某人以前是管理员,但现在不应再是管理员,那么您只需将一个新人员置于管理员角色中,然后将以前的人员从该角色中移除即可。该代码检查用户是否具有管理员角色,而不是检查每个用户是否有权访问某个页面或功能。

第二个好处是避免了维护噩梦。如果访问控制非常精细,以至于每个人都与每一个可能的功能或页面都有关联,随着时间的推移将无法进行管理。角色使事情变得容易得多,因为可以将多个人添加到一个角色中。一个职位可能包括整个公司,而另一个职位可能只有五个人。这使得管理角色的效率更高,因为要管理的角色将减少。一个拥有 10,000 人的公司只能拥有 100 个角色,而不是应用程序中职能数量的 10,000 倍。研究您选择的应用程序框架,看看有哪些选项可以实现强大的访问控制。

使用功能级访问控制也至关重要。通过要求用户通过某些访问控制检查来保护对所有功能的访问权限。使用最小权限原则,默认拒绝访问,仅在需要时才开放访问权限。可能很难记住为每个功能实现访问控制。使用中央组件来管理和强制执行访问控制。

保护您的敏感功能

访问控制中断可能会使您的数据和应用程序完全容易受到攻击和利用。未得到适当保护的客户数据可能会导致大规模数据泄露,从而损害您的声誉和收入。

如果攻击者能够访问他们不应该访问的功能,则访问控制中断也可能导致账户被盗用。使用适当的功能级别访问控制,可以保护应用程序免受恶意攻击者甚至意外内部人员的侵害。

认为你已经完成了功能级别的访问权限吗?您现在可以挑战自己修复损坏的访问控制: [从这里开始]

목록

PDF 다운로드
리소스 보기
더 많은 것에 관심이 있으신가요?

야프 카란 싱은 보안 코딩 전도자, 수석 싱 및 공동 설립자입니다 Secure Code Warrior .

더 알아보세요

Secure Code Warrior는 조직이 소프트웨어 개발 생명주기 전반에 걸쳐 코드를 보호하고 사이버 보안을 최우선으로 하는 문화를 조성하도록 지원합니다. 앱 보안 관리자, 개발자, 최고정보보안책임자(CISO) 또는 보안 관련 업무를 수행하는 모든 분들에게, 저희는 조직이 안전하지 않은 코드와 관련된 위험을 줄일 수 있도록 돕습니다.

데모 예약다운로드
공유하기:
링크드인 브랜드사회적x 로고
자원 센터

시작하는 데 도움이 되는 자료

더 많은 게시물
자원 센터

시작하는 데 도움이 되는 자료

더 많은 게시물