描述
敌人删除或禁用功能在客户端服务器假定存在和值得信赖。
扩展描述
在某些情况下,对手可以绕过逻辑到位保护敏感的功能或数据。客户机应用程序可能包括功能服务器依赖正确和安全的操作。这个功能可以包括,但不限于,过滤器,以防止危险内容发送到服务器,逻辑功能,如价格计算,验证逻辑,以确保只有经过授权的用户使用客户端。如果一个对手可以禁用这个功能在客户机上,他们可以执行操作,服务器认为是被禁止的。这可能导致客户端行为违反假设由服务器导致的各种可能的攻击。在上面的例子中,这可能包括危险内容(如脚本)发送到服务器,不正确的价格计算,或未经授权的访问服务器资源。
攻击的可能性
典型的严重性
的关系
此表显示了其他的攻击模式和高水平类别相关的这种攻击模式。这些关系被定义为ChildOf ParentOf,给类似的项目可能存在的洞察力在较高和较低的抽象级别。此外,关系如光束,PeerOf, CanAlsoBe定义显示类似的攻击模式,用户可能想要探索。
自然 |
类型 |
ID |
的名字 |
ChildOf |
元在CAPEC攻击模式——元级别攻击模式的量化无疑是一个抽象的描述一个特定的方法或技术用于攻击。元攻击模式往往是空虚的一个特定的技术或实现,旨在提供一个高水平的理解方法。元级攻击模式是一个泛化的攻击模式相关的标准水平。元级攻击模式尤其适用于架构和设计水平的威胁建模练习。 |
22 |
利用对客户的信任 |
ParentOf |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
200年 |
删除过滤器:输入过滤器,输出过滤器,屏蔽数据 |
ParentOf |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
208年 |
删除/短路“钱包”逻辑:删除/变异“现金”的精神性 |
此表显示了这种攻击模式的观点属于和顶级类别内的这一观点。
执行流程
探索
调查:敌人探测,通过蛮力,逆向工程或其他类似的方法,客户端,服务器上的功能假设存在和值得信赖。
技术 |
的对手探针探索应用程序的功能和它的底层映射到服务器端组件。 |
敌人逆向工程师客户端代码来确定服务器的功能依赖于适当的或安全的操作。 |
实验
确定哪些功能禁用或删除:敌人试图确定哪些功能通过逆向工程从列表中禁用或删除的功能确定在探索阶段。
技术 |
敌人逆向工程师客户端代码来确定哪些功能禁用或删除。 |
利用
禁用或删除从客户端代码的关键功能:一旦功能被确定,敌人禁用或删除关键功能从客户机代码执行恶意操作,服务器认为是被禁止的。
技术 |
敌人禁用或删除功能从客户端代码执行恶意操作,如发送危险的内容(如脚本)服务器。 |
先决条件
目标服务器必须假设客户机执行重要的行动保护服务器或服务器的功能。例如,服务器可能假定客户端过滤器出站流量或客户端执行所有价格计算正确。此外,服务器必须不能检测到这些假设违反客户。 |
技能要求
(级别:高) 逆向工程客户端代码来禁用/删除功能在客户端服务器依赖。 |
(等级:低) 敌人安装一个网络工具,允许脚本或DOM模型的基于web的应用程序进行修改之前,在浏览器中执行。GreaseMonkey和Firebug是两个这样的工具的例子。 |
所需资源
敌人必须能够访问客户端和可以修改客户端行为,常常通过逆向工程。如果服务器是假设特定的客户端功能,这通常意味着服务器只能识别一个特定的客户端应用程序,而不是一个广泛的客户端应用程序类。逆向工程工具可能是必要的。 |
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密 |
其他 |
|
完整性 |
修改数据 |
|
保密 |
读取数据 |
|
问责制
身份验证
授权
不可抵赖性 |
获得特权 |
|
访问控制
授权 |
旁路保护机制 |
|
缓解措施
设计:对于任何一个在客户端执行的安全检查,确保这些检查重复的在服务器端。 |
设计:船与完整性检查客户端应用程序(代码签名)。 |
设计:使用模糊和其他技术来防止逆向工程的客户机代码。 |
例子,实例
敌人逆向工程师Java二进制(通过反编译)和标识许可证管理代码的存在。注意到许可证管理器返回真或假用户是否授权,对手只是覆盖这两个分支目标返回TRUE,重新编译,最后重新部署二进制。 |
对手使用基于Servlet的网站的点击率探索地图的功能,注意其URL-naming约定和Servlet映射。使用这个知识和猜测的Servlet名称功能他们不是授权使用,周围的对手直接导航到特权功能授权单一前线控制器(实现编程式授权检查)。 |
引用
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2014-06-23
(版本2.6) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2015-12-07
(版本2.8) |
CAPEC内容团队 |
manbetx客户端首页 |
Attacker_Skills_or_Knowledge_Required更新,描述总结,Examples-Instances、引用Related_Vulnerabilities |
2019-04-04
(版本3.1) |
CAPEC内容团队 |
manbetx客户端首页 |
更新后的后果,Related_Attack_Patterns |
2022-09-29
(版本3.8) |
CAPEC内容团队 |
manbetx客户端首页 |
更新描述、Example_Instances Execution_Flow、Extended_Description Resources_Required Skills_Required |
2023-01-24
(版本3.9) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Example_Instances |
以前的条目名称 |
改变日期 |
以前的条目名称 |
2015-12-07
(版本2.8) |
从客户端删除重要的功能 |
|
|