为什么软件里总会有那么多bug

大魔王李小姐 2024-11-15 21:39:35
最佳回答
1. 人的天性大多数——当然不是全部——软件 bug 源于我们自己犯的错误。虽然有些是因为软件编码工具和编译器发生了意外,但是大部分的错误得归咎于我们自己。无论我们受到的 sdl 培训和安全工具有多么强大,只要我们还是人,我们就会犯错。如果你想问为什么电脑软件会有这么多的漏洞,归根到底是因为,人的天性就是容易犯错。也就是说,我们在减少人为错误方面做得还不够。有很多程序员因为没有受到足够的 sdl 培训(有的甚至干脆就没有培训),所以根本就没有安全编程的理念。有时候我特别奇怪:有那么多的程序员以写安全软件为生,却居然不懂如何安全地编程。别不信,我敢打赌,你正在运行的银行安全软件中的 bug 不会比它能提供的保护措施少,搞不好甚至更多。但是即使是那些经过严格训练的程序员还是不可避免出现 bug。举个例子,前不久有个自鸣得意的家伙发明的使用 html 标记字段确定颜色的缓冲区在浏览器中溢出了。不像以前还要输入 fffffh 之类的东西,黑客甚至可以直接执行颜**的代码,从而导致浏览器过度消耗资源、缓冲区溢出。看到没有,这就是漏洞!而且很少会有人能预料到这种情况。2. 不断增加的软件复杂性就其本质而言,软件越复杂,就意味着代码行数越多。只要你在编程,那么即使你有多擅长写代码,也一定会有错误和 bug 出现。有人曾说,如果你能做到每 50 行代码中只出现一个错误,那你就已经做得相当好了。大多数程序员差不多每隔 5 至 15 行就会犯错。想象一下,这么说吧,一般性的 linux 内核拥有超过 1500 万行的代码,有多少 bug 你自己算吧!即使没有编码错误,互联网时代应用程序的整体互动性也是漏洞被攻击的途径。大多数程序员不得不和其他 api 协作,保存和检索文件,在多种设备上正常工作。所有这些过程都会增加被成功击破的概率。而要防守的话,则需要写更多的代码,因为得抵御各种不同的攻击渠道。这么说吧,如果有一个只有 30 条汇编语言指令的恶意程序,那么针对相应的防守,你可能至少得写 50000 条汇编语言指令!3. fuzzers 也是人写出来的新近冒出来的 fuzzers 软件主要用于扫描软件漏洞。fuzzers——以及其他用于寻找编码错误和漏洞的任何程序——都是人写出来的,还是这句话,是人就会犯错误。例如 fuzzers 是不会发现颜色属性的缓冲区溢出这种情况的,这是因为我们在写 fuzzers 的时候没有考虑这一方面。不过当我们意识到这一点并对 fuzzers 进行更新之后,就能做到去查找各种类似的缓冲区溢出条件的字段。简而言之,我们要 fuzzers 做什么,它才会去做什么。4. 缺乏对供应商的问责许多安全专家抱怨,只要我们不能找到证据**供应商的软件缺陷,我们就永远不会变得更安全。我赞同这一点,增加对供应商的问责有助于降低安全风险,但是同时却有可能会减缓进度。不过如果软件公司比现在更能担当起责任来,那么我想我们能在手机上、电脑上能自由自在冲浪的感觉会更爽。但是成功源于功能和速度,而非安全。社会现状决定了我们必须牺牲一部分安全和保障去换取新鲜感。这不一定是坏事——因为能让我们成功得更快。但是这样一来我们就不得不承担这样做的后果。不过到目前为止,我们还是心甘情愿为了添加更酷的新鲜玩意儿而面对更多的风险。5. 缺乏对黑客的问责现实是上面没有一条能很快解决。但是软件出现漏洞就其本身而言,真不是什么大问题。说它脆弱是因为这些软件在面对恶意攻击的时候毫无抵挡之力。除非我们能制止黑客的猖獗行径,否则恶意软件将会一直困扰着我们。 20210311
汇率兑换计算器

类似问答
  • 为什么苹果手机软件那么大
    • 2024-11-15 10:49:15
    • 提问者: 未知
    苹果手机提升速度办法: 1.清空safari缓存,需要进入【设置】-【safari】,然后点击“清除历史记录”和“清除cookies和数据”。2.关闭自动更新,自动下载如果iphone在使用时出现卡顿,那可能是因为它正在后台尝试应用升级,而这完全可以通过手动的方式执行。3.删除旧的无用照片和视频 删除不...
  • 所有软件都可以被**吗?为什么网上**软件那么多,软件开发者难道没有好的办法防止其软件被**吗?
    • 2024-11-15 12:37:51
    • 提问者: 未知
    先说**者,**软件无非是为了名或者利,如果一个软件难度太大,而且**后带来的名利收入不足,**带来的法律风险太高,那自然没有人有动力去做**。某些专业软件就是...
  • 安卓软件,那个会和人对话的小鸡的软件叫什么???
    • 2024-11-15 12:28:52
    • 提问者: 未知
    叫simsimi,就是一只小黄鸡在回答用户的问题。介绍:simsimi是一个可爱的智能聊天机器人,他能和用户进行有趣的对话!该软件的使用方法非常简单,你只要点击屏幕开始对话,simsimi就会立即向你问好。和其他传统的聊天应用一样,你还可以向对话框输入文字你就可以开始对话了。不要对simsimi的快速反应表示惊讶!他是!
  • 软件测试提交bug时包括哪些内容
    • 2024-11-15 12:04:55
    • 提问者: 未知
    1bug的标题(title)和详细描述(descriptions):标题主要是对你所提交的bug进行简明扼要的描述;详细描述是对bug进行进一步详细的描述,例如在什么情况下发生等;也可以直接将标题作为描述部分(简短明了时可以)。两者都是为了让查看bug的人员很清楚的知道你所表达的意思。2回归(regression):这一部分主要是测试一下前一个版本有没有此类bug(称为回归测试)。3bug测试环境...
  • **的私募内参软件越来越多,为什么金股私募内参软件在网上那么火呢!
    • 2024-11-15 06:41:50
    • 提问者: 未知
    金股内参这个软件肯定是有它的优势啊,我最近也听说这个软件了,听说这个软件推荐的股票很强,可能就是这个原因吧,还有就是它可以包月销售,还有基本功能可以免费
  • 为什么小米会有那么多“米粉”?
    • 2024-11-15 07:32:39
    • 提问者: 未知
    我只是对小米的这种粉丝文化比较感兴趣。我身边有不少人是米粉~小米有什么独特魅力,可以吸引这么多的铁粉。不考虑**之类的原因(因为有身边的人确实是真爱粉)。
  • 晨曦软件里的造价汇总里的费率为什么改不了了啊
    • 2024-11-15 04:36:14
    • 提问者: 未知
    要在取费设置里面的费用定额改
  • 为什么手游总有那么多充钱的大佬?
    • 2024-11-15 23:26:07
    • 提问者: 未知
    不要用你这个穷学生穷小子的生活费/工资,去跟有钱人的零花钱做对比 大佬神壕之所以是大佬神壕,那是因为他们赚钱的手段多,自然消费起来比较迅猛 常见的玩游戏的大佬神壕大概有以下几种 拆一代拆二代,早几年家里有眼光,整栋整栋的买了十几几十套房子,又趁房子好卖的时候卖了很多出去,...
  • 股票软件上怎么会总量小于总手的?
    • 2024-11-15 22:04:35
    • 提问者: 未知
    总手=总量,是由内盘和外盘相加的数字得来。有的时候,因为网速、数据延迟,服务器缓慢等等客观原因,导致数据不一致,等刷新或者收盘后再看就是一样的。
  • 证券统计排行网这个网站上为何会有那么多股票软件?都是做什么用的啊?
    • 2024-11-15 02:33:54
    • 提问者: 未知
    好像不是销**的,这个网站就是一个统计网,里面有大量来源于网络信息统计关于股票软件、股票网站和股票论坛的统计结果,能够准确客观的反映市场整体评价。
汇率兑换计算器

热门推荐
热门问答
最新问答
推荐问答
新手帮助
常见问题
房贷计算器-九子财经 | 备案号: 桂ICP备19010581号-1 商务联系 企鹅:2790-680461

特别声明:本网为公益网站,人人都可发布,所有内容为会员自行上传发布",本站不承担任何法律责任,如内容有该作者著作权或违规内容,请联系我们清空删除。