基于身份认证的嵌入式Web网关安全机制的实现设计论文.pdf_第1页
基于身份认证的嵌入式Web网关安全机制的实现设计论文.pdf_第2页
基于身份认证的嵌入式Web网关安全机制的实现设计论文.pdf_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机和通信技术的发展给每个行业都带来了一场新的 变革 在工业控制领域 数据采集和设备控制数字化 网络化的趋势也越来越明显 将和技术融入到工InternetWeb 业自动化的远程数据采集和监控领域 可以降低成本 提高 效率 具有很好的经济价值和应用前景 然而 工业智能控 制设备接入也带来一些新问题 首要是互联网安Internet 全 针对智能控制设备的网络攻击会直接影响到与之相关的 大型设备的正常工作 从而对经济 生活产生重大的安全威 胁 所以必须重视并防范于未然 基于嵌入式网关的电力远程监控系统安全分析1 基于嵌入式网关的电力远程监控系统1 1 本文所提出的网络安全机制主要是针对某个电力远程监 控系统 所以在安全分析之前首先介绍该监控系统的基本架 构 该系统的通信平台以嵌入式网关为枢纽 向内通过现场 总线和若干个电力智能终端设备相连 向外通过局域网或 连接 网络结构如图 ModemInternet1 图基于嵌入式网关的电力远程监控系统1 智能设备采集现场数据 通过现场总线和嵌入式网关发 送到上 最后传送到后台主控站 主控站通过Internet 发送控制命令到网关 并由网关解包后通过现场总Internet 线发给智能设备 由于嵌入式网关连接着 是进WebInternet 入现场智能设备的 枢纽 因此是整个电力远程监控系统 网络安全的关键点 嵌入式网关的网络安全分析1 2 Web 本系统中嵌入式网关在硬件上选用了高性能的位Web32 处理器和的 软件使用免费嵌入式网络ARM16MBSDRAM 操作系统作为应用程序开发和运行平台 该嵌入式uClinux 操作系统具有稳定的内核和完整的协议 支持LinuxTCP IP 编程接口 网关的核心软件是自主开发的电力监控专POSIX 用嵌入式服务器 本文主要讨论并解决该网关面临的网Web 络安全 对于系统其他信息安全的需求不是讨论重点 通常网络安全涉及两个重要问题 其一是保密性问题 防止攻击者破译系统的机密信息 其二是认证 鉴别 问 题 确保数据的真实性 防止窜改 冒充等主动攻击 1 针 对该电力远程监控系统的应用环境 嵌入式网关中网络安全 威胁主要表现为 非授权用户登录操作 1 由于该电力监控系统不仅用来远程采集电力终端设备的 数据 同时也可以进行设备故障诊断 实时控制等操作 非 授权用户通过盗取密码等非法手段冒充登录嵌入式网关Web 并进行非法的设备控制是该监控系统面临的最大安全威胁 小则造成设备损坏 大则危害公共安全和经济生产 信息帧重放 2 重放即攻击者对截获的某次合法数据进行复制 然后出 于某种非法目的重新发送 以产生非授权的效果 其导致的 后果和第一点类似 会对终端设备产生非法操作 数据的监听和窃取 3 采集的数据经过这样一个不确定的网络传回主Internet 控站 传送的数据可能在途中被监听和窃取 由于传送的数 基金项目 国家 计划引导项目资助 8632002A001020 作者简介 赵跃华 男 教授 主研方向 计算机网络1960 与通信技术 信息安全 计算机控制等 杜云海 包明国 硕士生 收稿日期 2003 07 20 E mail zhaoyh 基于身份认证的嵌入式网关安全机制的实现Web 赵跃华 杜云海 包明国 江苏大学计算机学院 镇江 212013 摘要 在电力远程监控系统的安全需求背景下 首先分析嵌入式网关面临的网络安全威胁 然后针对嵌入式系统资源有限及具体应用环境 提出了 紧凑安全策略 最后利用摘要认证和安全协议实现了基于身份认证的嵌入式网关的安全 达到安全和资源使用的最佳平HTTPSSL 衡 关键词 嵌入式系统 网络安全 身份认证 Implementation of Security in Embedded Web Gate Based on Authentication ZHAO YuehuaDU YunhaiBAO Mingguo College of Computer Jiangsu University Zhenjiang 212013 AbstractUnder the security requirement of power remote monitor and control system the paper analyses the network security threats around the embedded gate then brings forward the tight security mechanism referring the limited system resource and the specific application condition Finally the embedded gate carries out the security with the HTTP digest certification SSL security protocol and so on so it obtains the best balance between the security and using resource Key wordsEmbedded system Internet security Authentication 第30卷 第23期 Vol 30 23 计 算 机 工 程 Computer Engineering 2004年12月 December 2004 安全技术 中图分类号 TP393 08 文章编号 1000 3428 2004 23 0111 03文献标识码 A 111 据包括电力设备参数 控制命令和登录帐户信息等 不同的 数据保密程度不同 电力参数可以明文传输 而控制命令和 登录帐户信息必须加密传输 为了节省嵌入式网关计算资 源 应该分等级对待数据的加密 病毒感染 4 由于嵌入式网关采用作为嵌入式操作系统 并uClinux 在该平台上运行相关的网络服务 例如服务器 Webftp 等 可能产生相应的安全漏洞 的内核相当成熟smtpLinux 稳定 如果上层的应用程序有较好的安全机制 就可以最大 限度地避免病毒的入侵 由以上的安全分析可知 非授权用户利用冒充和重放攻 击嵌入式网关 以取得合法用户的权利 并对网关和现场设 备进行控制是最突出的安全威胁 嵌入式网关的安全策略2 Web 基于以上监控系统的安全威胁分析 结合嵌入式系统自 身资源有限和实时性要求等特点 本系统采用 紧凑安全策 略 根据安全需求 划分该监控系统中的资源为若干安全 等级 不同等级的资源采用不同的访问控制 在满足资源安 全要求的基础上 实现嵌入式安全的计算资源最小化 达到 系统安全和资源的相互平衡 该系统共有 类资源 分别是电力参数 设备控制和授3 权数据库 其中电力参数的特点是数据量大 保密级别较 低 属于低安全级的资源 可以使用较为简单的访问控制和 数据加密机制进行数据访问和传输 从而减轻嵌入式设备的 计算负担 设备控制是高安全级的资源 数据量小 需使用 高安全级的访问控制机制 授权数据库保存着认证口令文 件 用户权限等授权信息 属于最高安全级资源 本系统采 用可信控制台通过嵌入式网关的相应端口 例如串口 进行 授权数据库的访问和修改 从而保证授权数据库的最高安全 要求 该系统的安全策略如图 2 图电力监控系统安全策略图2 安全监视器首先对客户端请求所访问资源的安全等级进 行判断 对于电力参数及其他安全等级较低的资源 采用低 安全级的认证机制 认证 进行身份认证 虽然此类资源1 面广量大 但处理安全问题的系统开销不会增加较多 对于 设备控制操作等安全等级高的资源 则采用高安全级的认证 和数据加密传输 由于控制操作之类的数据量小 访问频2 度低 因而其占用系统资源也较少 一旦通过审核 系统会 在主体与高安全级资源之间建立一专用通道 从而满足系统 高安全性和实时性的平衡 对授权数据库的访问便可通过专 用可信通道并结合安全监视器进行操作 从而满足该数据库 最高安全性的要求 本文主要讨论前两种安全认证机制的 实现 嵌入式网关网络安全的实现3 Web 通过以上策略的分析和常用网络安全技术的比较 本系 统的安全方案采用摘要认证和安全套接字协议来HTTPSSL 分别实现低安全级和高安全级资源的访问控制 从而达到安 全和资源使用的最佳平衡 嵌入式网关的核心软件是嵌入式服务器软件 该软Web 件采用 进程的进程调度策略 对安全的控制主要体现在不3 同的连接端口和不同的安全认证机制上 中低安全级的资源 请求主要由服务器的主进程在端口监听 收到请求后Web80 进行摘要认证 认证通过后交给进程 处理该请求 而HTTP2 高安全级的请求由服务器的进程 在默认端口监Web3SSL443 听 当接收到相应请求后 采用协议进行安全身份认证SSL 及相应数据的传输 并且直接由进程 处理请求的操作 本3 网关实现的主流程图如图 所示 3 图网关安全实现主流程图3 摘要认证的实现3 1 HTTP 在摘要认证中 如果服务器收到对受保护对象的访问请 求 而请求中没有提供满足条件的头域 则服Authorization 务器应返回 未授权 响应并包含头401WWW Authenticate 域 客户在第一次请求被拒绝后 则需要重发请求 其中要 包含头域 服务器接收到头域AuthorizationAuthorization 后 将根据客户给出的用户名去取对应的口令 然后进行与 客户端相同的摘要计算 和客户的值做比较 从而确定用户 的合法性 2 嵌入式网关中摘要认证实现的过程3 1 1 摘要认证的程序代码主要是嵌于嵌入式服务器软件Web 中 即在服务器守护进程中 该进程接到某个连接请求后 立即进行访问资源权限的检查 摘要身份认证过程如图 4 图摘要认证流程图4 HTTP 摘要认证中的重要数据结构和方法3 1 2 在本模块中定义了请求处理时的摘要信息数据结构 digest header rec type struct digest header struct 用户名 char username 用户在服务器上所属的域 char realm 现时值 与现在时间有关 char nonce 112 被请求资源的 char requested uri uri 摘要值 char digest 纪录摘要认证体制头信息 digest header rec 如图 所示 在摘要认证过程中 大致调用了如下4HTTP 几个重要的函数 以完成摘要认证过程 1 get digest recrequest rec r digest header rec response 本函数从请求中解析出摘要认证信息 在authenticate 中调用 digest user 2 find digest request rec r digest header rec h char a1 本函数根据用户送来的认证头域信息及从本地授权数据 库中的用户口令文件查出的密码信息 按摘要认证机制 算 出用于验证用户摘要值的正确摘要值 返回字符长的基3216 编码字符串 3 authenticate digest user request rec r 本函数对用户进行摘要认证 验证用户的身份的真实 性 具体处理过程如下 调用函数 取用户get digest rec 请求中的摘要信息 发现错误则返回错误代码 接着从授权 数据库中取用户口令信息文件 调用函数 从口get hash 令中取得用户的口令信息 然后调用函数计算find digest 值并将其和用户提供的口令进行比较 若相等 则通过hash 验证 4 digest check auth request rec r 本函数检验是否能访问该资源目录 本方法主要根据 的组信息进行文件 目录级的授权检查 用户的limitrequire 权限信息存放在授权数据库中 即使是本服务器的合法用 户 也须通过此检查被授权后才可以进行访问 本函数与 函数一起 完成全部摘要模块所负authenticate digest user 责的摘要认证工作 安全协议的实现3 2 SSL 4 由于嵌入式网关采用嵌入式操作系统 该操作uClinux 系统平台为实现协议提供了极大的方便 在本系统中 SSL 采用中使用最为广泛的 是继承于LinuxOpenSSLOpenSSL 的软件 当前版本是SSLeay0 9 0Open SourceOpenSSL0 9 实现了 和 目前被众6cOpenSSLSSL2 0SSL3 0TLS1 0 多的软件开发人员研究和使用 通信模型为标准的结构 除了在层上进SSL C S TCP 行传输之外 与一般的通信没有明显的区别 将加OpenSSL 密与认证细节移至套接字库调用中 使程序的实现Internet 更加容易 采用实现安全连接的过程及调用的相关OpenSSL 套接字如下所述SSL 3 初始化的库 1 OpenSSLssl 在使用套接字之前 需要先初始化库 使用SSLsslSSL 函数 其作用是注册可用的密码和消息摘要library init void 算法 申请并建立会话的环境 2 SSL CTX 会话环境是指该次会话所使用的安全参数的相应设置 包括通信双方的协议 证书和密码组等 首先调用SSL 函数创建本次会话连METHOD SSLv3 server method void 接所使用的协议结构 可以选择 SSLSSLv1SSLv2SSLv3 等不同的连接协议 但必须保证客户端和服务器端所使用的 协 议 相 同 然 后 调 用 SSL CTX SSL CTX new SSL 函数 申请成功则返回当前的连接环境的指METHOD SSL 针 最后根据自己的需要设置的属性 典型的是设置CTX 握手阶段证书的验证方式和加载自己的证书 SSL 建立连接 3 TLS SSL 完成环境建立后 可以基于该环境建立多个连SSLSSL 接 用函数建立具体的结SSL SSL new SSL CTX SSL 构 每个结构表示一个连接 并继承该环境的所有设SSL 置 然后用函数将结构绑int SSL set fd SSL ssl int fd SSL 定到已经连接的套接字上了 绑定成功返回 失败返回 1 建立好底层通信通道后 服务器端调用0int SSL accept 函数进行显式连接 SSL ssl 连接完成应用数据交换 4 TLS SSL 和通用网络编程类似 建立好连接后 可调用int SSL 从读取最多字节read SSL ssl char buf int num ssl num 的数据到中 bufint SSL write SSL ssl char buf int num 将中的字节数据写入 这两个函数成功时返回实bufnumssl 际读写的字节数 若返回 或负数 则表示调用失败或需要0 重试 关闭连接并释放相关资源 5 数据交换完成后 必须关闭及释放相应的套接字 分别 调用和函数来int SSL shutdown SSL ssl void SSL free ssl 完成 如果需要释放整个会话的环境 则调用SSLvoid SSL 进行环境的释放 CTX free ctx 在中可以使用自签名证书 用类似OpenSSLopenssl req 的x509 newkey rsa 102

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论