《威胁建模:设计和交付更安全的软件》——3.3 篡改威胁
本节书摘来自华章计算机《威胁建模:设计和交付更安全的软件》一书中的第3章,第3.3节,作者:[美] 亚当·斯塔克 更多章节内容可以访问云栖社区“华章计算机”公众号查看。
3.3 篡改威胁篡改就是修改内容,典型的情景是修改磁盘上、网络上或者内存里的内容,还可以修改电子数据表里的数据(Excel表或者其他编辑程序)、改变二进制数据或者磁盘上配置文件,也可以修改类似磁盘上的数据库这样复杂的数据结构。在网络上,可以添加、修改或者移除数据包。有时添加数据包比修改动态的数据包更容易,而程序安全处理额外的数据副本,是非常不好的。表3-3中给出了更多的篡改示例。
https://yqfile.alicdn.com/289b53bb2b7259a8f4042f43b206a24ba861b393.png
"
3.3.1 篡改文件
攻击者能修改任何他们有写入权限的文件。当你的代码必须依赖于那些别人有写权限的文件时,就存在文件被恶意修改的可能性。虽然文件篡改最明显的是在本地磁盘上,不过,如果文件可以允许远程共享,就像网上的大部分JavaScript,就会有很多篡改的实现方法。攻击者可通过破坏别人的网站来破坏你的安全性,可以(因为可怜特权、假冒或者权限提升)修改你的文件,还可以修改链接或者重定向,因为链接经常不在完整性检查范围内。如果在你所能控制的(例如服务器)和不能控制的对象(例如网络浏览器)之间有高速缓存时,篡改攻击会有一些微妙的变种。例如,“缓存污染攻击”利用缓存中较弱的安全控制策略,向web缓存中插入数据(OWASP,2009)。
3.3.2 篡改内存
如果攻击者与你有同样的权限,他就能修改代码。那么一切防御手段都没有多大用处。如果你的API句柄通过按引用方式(这是为了速度而经常选择的一种方式)处理数据,那么攻击者可以在你执行安全检查之后修改数据。
3.3.3 篡改网络
网络篡改是指能够将网络数据引到攻击者机器中,然后转发一些完好的数据和一些被修改的数据,篡改方式多种多样。不过,并不需要直接把数据带给你,WiFi和蓝牙的出现,使得越来越多的数据流可以通过空气传输。很多网络协议在最初设计时是需要有特殊的硬件设备才能创建或者读取数据包,对硬件的特殊需求可防止篡改(通常是假冒攻击)。软件无线电(Software-Defined Radio,SDR)的出现悄然改变了对特殊硬件的需求。如今很容易买到物美价廉的SDR单元,对其编程后可篡改无线协议。
相关文章
- 双轴机械臂建模分析数据
- 数仓建模—指标体系
- 元宇宙工具箱之Blender 3D建模和VFX的未来领导者
- 数据分析入门篇,决策树预测成本价 2020年 MathorCup数学建模 A题 无车承运人平台线路定价问题
- 《威胁建模:设计和交付更安全的软件》——1.2 独立威胁建模
- 《威胁建模:设计和交付更安全的软件》——1.3 潜心开始威胁建模的检查列表
- 《威胁建模:设计和交付更安全的软件》——第二部分 发 现 威 胁
- 《威胁建模:设计和交付更安全的软件》——3.6 拒绝服务威胁
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一1.8 软件建模和设计方法的发展
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一1.11 总结
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一2.5 交互图
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一2.6 状态机图
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一2.9 部署图
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一2.12 总结
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一3.3 软件生存周期的活动
- 《软件建模与设计: UML、用例、模式和软件体系结构》一一
- 2022亚太杯数学建模竞赛C题思路解析
- UML建模之活动图介绍(Activity Diagram)
- 3D建模软件中同步草图与顺序草图如何使用?
- 3D建模软件中阵列设计功能如何使用?
- 3D设计软件快速建模你会用吗?全新设计方式等你来体验!