基于敏感信息分类的网络信息安全编程方法优化研究

2016-11-29 11:19梅强
中国设备工程 2016年14期
关键词:缓冲区威胁编程

梅强

(江西工程学院,江西 新余 338029)

基于敏感信息分类的网络信息安全编程方法优化研究

梅强

(江西工程学院,江西 新余 338029)

敏感信息指的是容易丢失或容易被他人窃取的信息,而网络安全指的是网络系统的硬件及软件系统中对数据的保护,使得数据不会因意外或蓄意因素而遭到泄漏、更改、毁坏等情况。网络信息安全编程一般要经过安全设计、安全编程和安全测试三个阶段,而基于敏感信息分类的网络安全编程则是以基本网络安全编程为基础的复杂编程手段。在设计并优化了基于敏感信息分类的网络安全编程之后,还应设计接近实际情况的仿真实验,测试软件的实用效果。

敏感信息分类;网络信息安全;编程方法

随着网络信息安全问题日益严重,安全编程技术随之受到了广泛的重视。安全编程技术能够有效降低甚至消除网络安全风险,避免信息尤其是敏感信息遭到窃取或破坏。

目前,市场上对软件的需求日益加强,为了提高软件编程的速度,很多软件开发公司已经开始聘请大量没有软件安全经验的编程人员参与到软件的制作当中。安全的程序编程非常重要,因此必须对安全编程的方法进行优化。

1 敏感信息及网络安全概述

容易丢失被不法分子窃取的、具有一定价值的信息被称之为敏感信息,根据我国工业与信息化部的要求,个人信息只有在个人主体知情并同意的前提下,他人或组织才有权对其使用。并且,处理敏感信息时必须遵循以下八项基本原则:明确目标、最少够用、公开告知、达到质量要求、获准同意、保证安全、履行诚信以及明确责任。

网络安全指的是网络系统的硬件、软件以及系统中的数据会受到保护,不会因为突发状况括蓄意因素而导致数据信息遭到泄漏、更改甚至破坏[1]。网络安全是保障系统能够持续正常运行的关键因素,是确保网络服务不会中断的最主要措施。网络安全主要具有保密性、完整性、可控性以及可审查性。

2 软件安全威胁模型

建立安全威胁的模型是应对并解决软件安全问题的有效方法之一,其基本理论为,只有明确了应用程序所受到的威胁以及需要减少风险的目标数量才能够建立起有效的安全系统。因此,应首先分析软件的安全环境等情况明确软件可能受到威胁的种类、频率以及程度,然后根据这些信息和要求建立起软件安全的基础点,将模型中创造出来的威胁关联到相应解决方案的组件上,对所有威胁的安全代价进行计算,最后根据风险的级别对威胁进行消除或减轻。

3 网络信息安全编程方法

3.1 基本网络安全编程

(1)安全设计。对编程的代码安全性问题应在设计阶段就提出,并针对相应的安全性问题设计解决的方案。软件的安全性在设计时就应被当做是程序的基础功能之一,如果仅仅在设计结束后补充安全措施,那仅仅是在已有功能的基础上添加安全模块而已,从预防风险的效果和效率上来看都不会达到理想状态。而且事后增添安全模块还有可能改变程序的接口,使得那些依赖此接口的所有代码都无法运行,给软件本身带来更大的安全问题。

(2)安全编程。安全编程的原则在于保证数据的秘密性和完整性以及数据的有效性,避免使用非安全的C函数为例,很多缓冲区溢出的问题都能够最终追溯到标准C库的几个函数当中,特别是对于未经安全检查的字符串操作来说。并且,类似于C+或C++这种基于C语言的计算机编程语言中,非安全函数的问题还是会出现,但这些危险的函数可以在本语言中找到安全的替代函数[2],只要尽量避免使用这样的函数,就可以有效降低漏洞的出现率,而这也是软件安全编程的基本要求之一。

(3)安全测试。主要方法有五种:第一,以网络骇客的思维特征测定程序安全性;第二,对软件中的所有缓冲区进行检测;第三,对所有命令行的参数输入进行测试;第四,确保所有测试人员均为该程序编程的内部工程师,绝对禁止外部人员参与到安全测试当中;第五,使用检测工具。关于软件安全测试的检测工具,一般分为静态工具和动态工具两种,静态工具只负责对代码进行检测,但不运行程序;而动态工具要通过运行程序的方式,使程序随机产生出一些缓冲区,对这些缓冲区进行安全监测。

3.2 基于敏感信息分类的网络安全编程

TN915.08

A

1671-0711(2016)10(下)-0096-02

猜你喜欢
缓冲区威胁编程
编程,是一种态度
元征X-431实测:奔驰发动机编程
编程小能手
人类的威胁
纺织机上诞生的编程
串行连续生产线的可用度与缓冲库存控制研究*
受到威胁的生命
基于ARC的闪存数据库缓冲区算法①
搞笑图片
初涉缓冲区