第 1 章 概  述

关于软件漏洞和软件漏洞利用的报告越来越多,并继续以惊人的速度增长。相当多的这类报告导致了技术安全上的警报。这一威胁日益严重影响了公司、教育机构、政府和个人,为了解决这一问题,开发出来的系统应该是不包含那些软件安全漏洞的。
编码错误会导致大多数软件安全漏洞。比如,2004年在国家安全漏洞数据库(National Vulnerability Database)中记录的近2500个漏洞,有64%是由错误的编程引起的[Heffley 2004]。
相对来说,Java是一种较为安全的语言。因为它没有显式指针操作;对数组和字符串边界有自动检查机制;如果尝试引用一个空指针会抛出系统异常;算术运算是明确定义的且与平台无关,类型转换也是如此。内置的字节码验证器可以确保这些检查会在正确的地方执行。此外,Java还提供全面的、细粒度的安全机制,这个安全机制控制着对单个文件、套接字和其他敏感资源的访问。为从这种安全机制中获益,JVM(Java Virtual Machine, Java虚拟机)特地设计了一个安全管理器。这个安全管理器是类java.lang. Security Manager(或它的子类)的一个对象,我们可以基于它进行编程,但通过命令行参数来操作它是更为常见的使用方式。
尽管Java在编程上是安全的,但这并不意味可以一劳永逸。本章的剩余部分会介绍一些例子,通过这些例子我们可以看到,在某些情况下,程序可能会被利用而产生安全问题,同时会介绍怎样借助规则的帮助来减轻安全攻击对程序的影响。并不是所有的规则都适用于所有的Java语言所编写的程序;通常,规则的适用性取决于软件的部署情况和受信的假设。

《Java安全编码标准》一第 1 章 概  述相关推荐

  1. 《Java安全编码标准》迷你书

    <Java安全编码标准>迷你书 本书不仅从语言角度系统而详 细地阐述Java安全编码的要素.标准.规范和最佳实践,而且从架构设计的角度分析了Java API存在的设计缺陷和可能存 在的安全 ...

  2. TCP/IP 第1章 概 述

    第1章 概 述 1.1 引言 很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但 T C P / I P协议 族允许它们互相进行通信.这一点很让人感到吃惊,因为它的作用已远远超出了起初 ...

  3. 《Java安全编码标准》一导读

    前 言 在Java编程语言中,关键的安全编码要素是采用良好的文档和强制的编码规范.本书提供了在Java语言中的一系列安全编码规则.这些规则的目标是消除不安全的编码实践,因为这些不安全的因素会导致可利用 ...

  4. 《Java安全编码标准》一2.11 IDS10-J不要拆分两种数据结构中的字符串

    2.11 IDS10-J不要拆分两种数据结构中的字符串 在历史遗留系统中,常常假设字符串中的每一个字符使用8位(一个字节,Java中的byte).而Java语言使用16位表示一个字符(Java中的Ch ...

  5. Java安全编码之用户输入

    0x00 安全引言 1.传统Web应用与新兴移动应用 (1)传统Web应用:浏览器 HTTP 服务器 (2)新兴移动应用:APP HTTP 服务器 从安全角度看,传统Web应用与新兴移动应用没有本质区 ...

  6. 【JAVA编码专题】 JAVA字符编码系列三:Java应用中的编码问题

    这两天抽时间又总结/整理了一下各种编码的实际编码方式,和在Java应用中的使用情况,在这里记录下来以便日后参考. 为了构成一个完整的对文字编码的认识和深入把握,以便处理在Java开发过程中遇到的各种问 ...

  7. 【JAVA编码专题】JAVA字符编码系列一:Unicode,GBK,GB2312,UTF-8概念基础

    这两天抽时间又总结/整理了一下各种编码的实际编码方式,和在Java应用中的使用情况,在这里记录下来以便日后参考. 为了构成一个完整的对文字编码的认识和深入把握,以便处理在Java开发过程中遇到的各种问 ...

  8. JAVA SE学习笔记(七):终章:Java程序设计基础笔记(全10万字)

    Java程序设计入门 ​                                              copyright © 2020 by 宇智波Akali 目录 文章目录 第1章 J ...

  9. Java核心技术卷阅读随笔--第3章【Java 的基本程序设计结构】

    3.1 一个简单的Java应用程序 下面看一个最简单的 Java 应用程序,它只发送一条消息到控制台窗口中: 复制代码 public class FirstSample { public static ...

  10. college java (java基础黑皮书)一到四章笔记总结

    college java(1-4) college java (java基础黑皮书) 第一章 java入门 java的地位 java的特点与组成: 简单的java程序 1.系统环境的设置 2源文件的编 ...

最新文章

  1. JavaScript中的Try...Catch 语句
  2. 不带头节点的单链表如何头插(多图易懂)
  3. 大量数据生成excel时候造成jvm内存泄漏问题的解决与测
  4. ITK:从Seed开始迭代图像
  5. 电气工程及其自动化学不学c语言,电气工程及其自动化学什么 就业方向有哪些...
  6. extjs JsonStore加载数据,Combobox只显示最后一项值问题
  7. iframe标签用法详解
  8. 大数据挖掘步骤都包括哪些?
  9. 求职必看~10分钟读懂国企、事业单位和公务员的区别
  10. 上海哪里打印比较便宜?
  11. 本地组策略与安全策略的自动导入
  12. ARP Cache Poisoning Attack Lab(SEED实验)
  13. arcgis像元大小和分辨率_ArcGIS教程:栅格数据基本词汇
  14. Web3.0与数字时尚,该如何落地?
  15. 度小满9.20测开笔试第二题——相似字符串
  16. 不明真相的http code 497
  17. 昨晚开始了为期3个月的初级德语课,课上大家跟老师咿咿呀呀,仿佛回到了蒙学时代,感觉还是不错的!在blog里增加一个GERMAN随笔分类主要是方便自己随时学习,勿怪!Vielen Dank!...
  18. 人工智能基础-机器学习3-朴素贝叶斯方法
  19. 全国计算机中级职称考试报名时间2016,2021年初中级通信工程师考试报名时间及入口-成绩查询-合格标准-希赛网...
  20. 上市公司属于什么公司类型

热门文章

  1. Sicily 1194. Message Flood
  2. 更改android的avd的存储路径
  3. 2018-2019-2 网络对抗技术 20165115 Exp6 信息搜集与漏洞扫描
  4. Jquery 动画
  5. 引领移动协同需求Cnskype结合微信企业号推出企业办公、通讯整合方案
  6. ORACLE 修改日志大小及增加日志成员
  7. CRC-16的原理和实现
  8. 懂得永恒,得要我们进化成更好的人。
  9. Android中为APP创建快捷方式的原理(自己的理解)
  10. 差分约束系统 与 最短路