软件补丁
September 17, 2023
当描述程序的微小更改时,通常会提到“补丁”一词。与更新相反,补丁没有任何新功能和对程序功能的更改。它们更小,侧重于修复应用程序的某些元素。因此,“补丁”一词的正确同义词是“错误修复”。并非所有软件补丁都修复了错误,但它们仍然非常接近。
追溯这个术语在计算机科学中的词源也很有趣。补丁是粘在打孔卡上的一小片胶带 - 过去的记忆卡,是在1971年软盘发明之前的时代。在IBM的新奇之前,数据被保留为卡片上的0和1的序列,当你需要改变某些数据时 - 你应该贴上对应的孔。
软件补丁安全吗?
大多数时候,补丁包含对程序功能不关键的东西。应用小的更改,如优化或调整用户界面对于程序功能并不至关重要。然而,当涉及到修补漏洞时,更新几乎是义务的。安全补丁可能是累积的,也可能是紧急的 - 当发现高风险漏洞并且有很大可能通过该漏洞遭受攻击时。
特别是在2017年臭名昭著的勒索软件WannaCry爆发之后,发布了最后一类补丁。许多公司受到了影响,导致了在150多个国家几乎4亿美元的损失。因此,是的,软件补丁很可能是一个好主意,特别是如果它们修复了严重的漏洞。如果你在某个程序上非常依赖,最好监控与该工具相关的事件 - 以避免错过重要的补丁。
补丁、更新、热修复和错误修复之间的区别
尽管被用作同义词,但补丁、更新、错误修复和热修复并不相同。列表中的每个部分都与另一个相关 - “更新”一词位于顶部。但它们也不能被称为相同的事物。它们的主要区别在于传递的变化的新颖性。
- 热修复是一种小的紧急更新,影响最严重的问题,如关键错误或影响用户体验的问题。
- 错误修复是旨在修复非关键性错误并使整体代码库变得清晰的更新。
- 软件补丁是小的更新,通常是计划的,包含了漏洞和错误修复,对功能进行了轻微更改,或对代码库进行了轻微更改。最好的软件补丁示例是由微软每个星期二发布的Windows累积更新。
- 更新比上述所有的东西都要大。它可以包含对关键程序元素的重大更改,包括主要功能和用户界面的重大更改。它还可以包含我们上面提到的任何更改的元素。
开源补丁
开源软件与闭源软件在软件补丁方面存在明显的差异。它仍然有一个官方开发者 - 但也有一个开放的代码库,允许用户在最终产品中看到每一个扳手。对于技巧人员来说,这意味着在开发者之前修复程序中的问题。由于开源开发难以盈利,通常是一种捐赠奖励或纯粹是自愿的,因此这种社区活动需求很大。然而,唯一的要求是想要为开源程序发布自己的更新的人。这个软件补丁也必须是开源的,以便社区和原始开发者可以审查它。否则,使用这种补丁至少是有风险的 - 开发者可以向应用程序代码中添加任何东西,从广告到恶意软件都可以添加。
软件补丁可能危险吗?
并非所有的补丁都是由开发者提供的。这些与前面提到的开源补丁没有任何关系 - 现在的主题是由未知用户为闭源软件发布的更新。它们可能在各种讨论软件的社区论坛上流行。这种补丁可能带来一些合法的功能,也可能对应用程序进行黑客攻击,以获取开箱即用的功能。无论哪种情况,它们都是非法的,因为它们违反了EULA和版权。在美国和大多数欧盟国家,你可能因为创建这样的软件补丁而被监禁,而使用这样的补丁的人则可能会被罚款。也不建议使用这种补丁,因为它们增加了恶意软件的潜在风险 - 向这种补丁中添加恶意软件是轻而易举的。