文档章节

[翻译]为什么程序员总是写不安全的代码

麦田小圈圈
 麦田小圈圈
发布于 2012/11/08 15:11
字数 482
阅读 103
收藏 0

很多程序员总是写不安全的代码,大致有以下原因:

1. 在很多学校没有计算机安全的可能,即使有计算机安全课程(原文发表时间比较久远),他们通常根本不讨论怎么写安全的代码,大部分这些安全课程都是讨论常见的加密和协议,这些确实也很重要,但是他们通常不讨论真实环境中的问题,例如缓冲区溢出,字符串格式化,输入校验,我相信这是很重要的问题之一,即使这些大学生不太可能学会怎么写安全的程序,我们仍然期望他们写出安全的程序。

2. 编程书籍或课程没有教安全编程技术,事实上,知道现在根本都没有关于编程安全的书籍。

3. 没人使用常见的验证方法。

4. C是一门不安全的语言,而且标准C库字符串函数不安全,这尤其重要,因为C语言使用很广泛。

5. 程序没有考虑到各种用户的情况。

6.程序员都是人,人都是懒惰的,因此,程序员经常使用“方便”的方式代替取安全的方式,一旦可以使用,他们就再也不修复他们(BUG)。

7.大部分程序员都很平庸不够优秀。

8.大部分程序员不是安全人员,他们通常不会像攻击者一样思考。

9.大部分计算机安全模块都是糟糕的。

10.有大量不能运行的遗留软件,修复这些软件非常困难。

11.消费者不关心安全。(已过时)

12.安全带来额外的开发时间。

13.安全带来额外的测试。

原文:http://www.dwheeler.com/secure-programs/Secure-Programs-HOWTO/why-write-insecure.html

© 著作权归作者所有

共有 人打赏支持
麦田小圈圈

麦田小圈圈

粉丝 67
博文 6
码字总数 6021
作品 0
成都
高级程序员
私信 提问
告诉你们,老头子程序员也是可以写代码的

话说这个月我就要满45岁了,也许对于很多行业只算得上是中年人。但对于咱这个IT行业来说,45岁可是名符其实的老头子。尤其是对于创业公司来说更是如此。 我们都知道创业公司的文化总是需要一...

junwong
2012/06/18
10.4K
61
【外刊IT评论】抵制代码重写

本文是从 Fight the Rewrite 这篇文章翻译而来。 昨天,一位老上级邀请我一起吃午餐。当坐在哪里等待上菜时,我们缅怀起早期这个公司的往事。他有一句话让我心里一虚: 啊,你这个判官…我记...

老枪
2011/05/09
2.6K
26
阿里内部揭秘:年薪百万程序员的十大成功要素

  1、扎实的基础   计算机领域是一个快速更新换代的领域,每隔一段时间都会有新的语言、框架、思想产生,追随每一个新技术很累。但仔细想想,事实上并没有那么多新东西。很多新东西只不过...

学习web前端
2017/12/20
0
0
最让程序员懊恼的 10 件事

10. 注释说明“是什么”,而不是“为什么” 入门级编程课程教导学生要学会频繁且尽早地注释。不可否认在学习编程的起步阶段这方法的确是相当有效的(即使看到最简单的代码行都像天书)。然而...

oschina
2014/07/25
10.8K
51
程序员都应学习代码编译器知识

所有优秀的计算机科学学院都提供了编译器课程,但是相对比较少的学校把它作为本科课程的必修部分。这篇文章回答了这个问题:为什么需要学习编译器知识?即使你从没打算过编写编译器。 我写这...

长空翱翔
2015/05/30
0
0

没有更多内容

加载失败,请刷新页面

加载更多

解析JQuery中each方法的使用

each() 方法规定为每个匹配元素规定运行的函数。写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 概述: each() 方法规定为每个匹配...

前端攻城小牛
5分钟前
0
0
深入解析Vue开发动态刷新Echarts组件的教程

需求背景:dashboard作为目前企业中后台产品的“门面”,如何更加实时、高效、炫酷的对统计数据进行展示,是值得前端开发工程师和UI设计师共同思考的一个问题。今天就从0开始,封装一个动态渲...

peakedness丶
18分钟前
2
0
memcached

memcached 为了避免内存碎片化(传统的内存管理方式是,使用完通过malloc分配的内存后通过free来回收内存,这种方式容易产生内存碎片并降低操作系统对内存的管理效率),采用了 slab allocatio...

Cobbage
18分钟前
2
0
keepalived的介绍及配置高可用集群

12月19日任务 18.1 集群介绍 18.2 keepalived介绍 18.3/18.4/18.5 用keepalived配置高可用集群 集群介绍 根据功能划分为2类:高可用和负载均衡 高可用集群:通常为两台服务器,一台工作,另外...

robertt15
19分钟前
5
0
WiFi攻击的三种方式

导读 WiFi的安全问题已经引起了不少的使用者重视,甚至已经出现草木皆兵的现象。那么黑客到底是如何做到绕过身份验证来获取WiFi使用权的呢?主要有以下三种方式,其中最后一种方式十分简单。 ...

问题终结者
33分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部