logo资料库

嵌入式系统安全分析调研报告.pdf

第1页 / 共25页
第2页 / 共25页
第3页 / 共25页
第4页 / 共25页
第5页 / 共25页
第6页 / 共25页
第7页 / 共25页
第8页 / 共25页
资料共25页,剩余部分请下载后查看
嵌入式系统安全分析调研报告 起讫日期 2011-7-13--------- 2011-7-28 调研人姓名 袁 佳
一. 引言 嵌入式系统是继 PC 机后又一个蓬勃发展的 IT 产业链。由此人们也把这个嵌 入式系统蓬勃发展的时代称为后 PC 时代。普通计算机系统存在的安全问题已受 到人们的广泛关注,并采取了各种措施。嵌入式系统是针对具体应用而设计的一 种专用计算机系统,随着嵌入式系统的发展,嵌入式系统的网络化成为嵌入式系 统发展的一大趋势。然而网络化给嵌入式系统带来的一个巨大挑战就是其安全问 题。例如“I love you”手机病毒就引起全世界范围十亿美元的损失。因此嵌入式 系统的安全问题也越来越受到人们的重视,嵌入式的互联与移动特性日益突出, 从而增强了对互联与安全性的要求。虽然可以借鉴桌面系统的安全增强方法。但 因为有硬件资源与开发环境、电源等问题的限制,嵌入式系统涉及比桌面系统更 加复杂的问题。如何增强嵌入式系统的安全问题成为一个难题!
二. 嵌入式系统存在的安全问题 由于嵌入式系统受限于它所操作的环境和所拥有的资源,使其面临许多挑战, 桌面系统的安全实现方式不能直接照搬到嵌入式系统中。 1 与桌面系统相比嵌入式系统有如下的不足之处: (1) 安全处理能力的差距 与桌面系统相比,嵌入式系统可用的计算能力是有限的,例如采用 2.6GHZ 的 Pentium 4 处理器的桌面计算机和采用 Intel StrongARM 1100 处理器的 PDA 设 备相比,前者处理 2890MI/S 条指令(MI/S 是每秒百万条指令数),而后者以最快 频率仅仅处理 235MI/S 条指令。可见前者是后者的 12 倍之多。对于现在已经有 的利用密钥(公钥、私钥、Hash 函数)实现的安全机制,它们一般要求的处理能力 比较高,例如以 3DES 加密/解密的安全协议,它的安全处理要求为 651.3MI/S, 于是在嵌入式系统中就产生了安全的处理要求与可用的计算机处理的能力不匹 配的问题,而且随着安全要求的不断增强这种不匹配的将更加明显。 (2) 能量的差距 由于密钥算法固有的复杂性,利用它实现的安全机制不仅要求很高的计算能 力,伴随而来的能量消耗也是很巨大的。例如使用摩托罗拉龙珠 MC68328 处理器 的芯片再以 10kb/s 的数据率传送和接收数据,能量消耗分别为 21.5mJ/kb 和 14.3mJ/kb。然而当其运行在安全模式下(指以 RSA 加密技术作为安全协议的一部 分)它需要额外消耗 42 mJ/kb。而目前仅以 5%-8%速度增长的电池容量却很难跟 上不断增长的安全处理的能量要求。 (3) 成本 嵌入式系统安全的一个重要的考虑因素是成本。例如为了节约成本许多制造 商限制了嵌入式系统的资源,生产了许多 8 位的微处理器。而此处理器不能存储 很长的密码,也因此影响了系统的安全性。 (4) 恶劣的工作环境 许多嵌入式系统要求即使在不可靠的用户手中也要能保证正常工作。由于许 多嵌入式是便携设备,容易引起遗失和丢失。安全的嵌入式系统要求恶意实体不 能随意的修改安全系统的设备内部。 (5) 严格的稳定性与灵活性 一些嵌入式系统控制着关乎重大国家安全的设施,如电网、核设施等,要求 更加严格的稳定性与灵活性。 (6) 复杂的设计过程 嵌入式系统的集成性不断提高,实现系统内部的可能源于不同的组织或部门 即使系统的每一个部件都是安全的,部件之间的集成也可能暴漏出新的问题。 导致嵌入式系统安全问题的根本原因可以从以下方面来讨论 2 安全问题产生的根本原因 (1)价格因素:嵌入式系统追求的目标是结构简单好用,价格便宜。公司在选 择芯片时一般满足够用就好的原则。如果从硬件上增加过多的安全措施则成本会 很高。简约的嵌入式一般选择 4 位或者 8 位机,也不能运行过多的安全任务。 (2)面广量大:嵌入式系统在工作,生活,娱乐,军事等方面都有大量的使用, 如果嵌入式系统的设计有缺陷,则影响面非常大。也即若有嵌入式系统被入侵者 利用,将会成为多点攻击的武器。 (3)电源的限制:许多嵌入式系统都是用电池供电,如果攻击将其电力提前耗
尽,则系统将处于瘫痪状态,很容易造成安全漏洞,为入侵者开了方便之门。 (4)开发队伍与环境的制约:许多嵌入式都是小团队做的,由于缺少安全方 面的专家及经费短缺,设计中对安全问题的考虑不足。 由于嵌入式系统可能存在许多弱点,对嵌入式系统的攻击表明,攻击者很少 利用设计良好的密钥算法进行攻击,而是利用实现嵌入式系统的硬件与软件进 行攻击。打个比方,密钥算法就像房子门前的一把大锁,但窗户却没有安全措 施。入侵者很容易就能破窗而入使得这把大锁变的毫无意思。下面我们就具体 分析下常见的嵌入式系统攻击
三. 常见的嵌入式系统攻击方法 依功能来分,攻击可以分为:机密性攻击、完整性攻击、可用性攻击。 安全攻击 窃听 流量分析 篡改 伪装 重放 否认 拒绝服务 按攻击方法来分,攻击可以分为:软件攻击、物理攻击与旁道攻击。下面 我们具体来了分析。 软件攻击:软件攻击是嵌入式系统的一个主要威胁,它能够下载和执行应 用代码。与物理攻击和旁道攻击相比,软件攻击所需要的基础设施对于大多数黑 客来说都可以非常容易得到。这些攻击是通过那些恶意的代理如病毒、蠕虫、特 洛伊木马来实现的,并且从各个角度如完整性、机密性和可用性来虚弱嵌入式系 统的安全。恶意的软件代理利用终端体系结果的缺点来发动攻击。 (1)基于网络安全协议 TCP/IP 栈是网络互联与安全的基础。TCP/IP 栈不仅负责设备之间的通信。而 且是很多网络互联与安全模块的赖以存在的核心软件。但是由于历史原因,其设 计之初的目标是尽可能的实现路由,并方便日后实现网络互联,并没有考虑其安 全性问题。IP 的路由过程会将数据包暴露给路由线路的任意节点,使数据外泄。 此外由于数据包到目的地的路线并不固定,在互联网上传送的包有可能被连接到 互联网上的任意节点截获、中段、篡改、或者伪造。在目前的 Internet 中,ip 包 本身并不具备安全特征,很容易伪造出 IP 包的地址即 IP 哄骗,从发以前的包, 传输途中拦截或者修改以前的包。 针对以上 IP 包容易受到攻击的特点,人们开发出了 IP 安全协议(IPsec)和安全 套接层(SsL),它们已经广泛的应用在个人电脑、高端网络服务器、路由设备以及 其它系统。在嵌入式系统中,这种网络安全安全协议通常是使用一个典型的通用 处理器。安全协议是目前使用最多的处理软件安全增强的 方法。而目前很多的 安全协议都是已加密算法为基础实现的。加密算法既可以使用软件实现也可以使 用硬件实现。加密算法包括对称加密、非对称加密和哈希算法。其中最具代表性 的是 RSA 算法,该算法的复杂性在于大数的分级复杂上。这种基于安全协议的增 强方式简单灵活与硬件无关通用性好,可以用在不同的嵌入式处理器上,然而这 些加密算法都是很耗处理器的资源与电能的,这对嵌入式来说是个挑战。因而这 种方式适用于硬件资源与电源比较宽敞的条件下。 (2).基于嵌入式操作系统 在网络环境中,网络系统的安全性依赖于网络中各主机的系统的安全性。而 主机系统的安全性正是由于其操作系统的安全性所决定的。我们知道常见的嵌入 式操作系统有 linux、VxWorks、WinCE、Symbian、Palm os 等,而许多的系统由 于其自身的特点导致具有许多的漏洞,假如攻击者利用这样的漏洞对系统进行攻
击那么对系统而言肯定会是致命的。下面我们具体分析每一种系统常见的系统漏 洞。 对于 linux 系统而言:由于 linux 的内核是用 c 语言写的,这也就造成了其具 有 c 语言的一些不安全性。例如系统调用函数时可以不用检查参数的长度。攻击 者一般是向系统的缓冲区写超过其长度的内容,造成缓冲区溢出,从而破坏程序 的堆栈,使程序返回一个具有 shell 权限的程序的地址,进而获得系统的 shell 权 限。达到攻击的目的。 1.嵌入式 Linux 的 SSL312 路由器拒绝服务漏洞 攻击步骤如下: 1)访问 NETGEAR SSL312 路由器的 web 界面。会看到一个登陆字段与密码字段。输入任 何随机字段。 2)返回错误信息,并且 URL 将包括这样的路径: https://xxx.xxx.xxx.xxx/cgi-bin/welcome/VPN_only?err=VXNlciBMb2dpbiBGYWl sZWQ= 3)修改 URL,并且重新发送你的 HTTP 请求,则该设备将崩溃并且需要一个硬 重启。 2.基于 uClinux 操作系统的三星 ADSL Modem 的系统漏洞 1):任意阅读文件:在调制解调器 OS 的系统中任何远程用户可以访问任意文 此漏洞包含以下三个方面: 件。文件可以通过未经验证的浏览器的请求获得。 2):默认用户登陆/密码都存在。 3):根文件系统的访问。通过 root 权限远程登录到设备,远程用户可以访问 系统文件。该调制解调器提供了 256MB 的 RAM 的 OS 文件系统操作,这允许潜在 的远程攻击者使用此文件系统进行恶意的攻击。例如存储蠕虫或病毒代码。 对于 Vxworks 系统而言:Vxworks 是一个运行在目标机上的高性能、可裁剪 的嵌入式实时操作系统。该系统以其良好的可靠性和卓越的实时性被广泛的应用 到通信、军事、航空等高尖端技术及实时性要求高的领域。对于 Vxworks 系统 2010 年发现具有默认启动不安全服务与不安全加密算法漏洞。 1. 默认启动不安全服务漏洞:Vxworks 默认启动了 WDB 目标代理,通过名 为 WDB 的应用组件提供目标代理调试服务,服务端口为 UDP 17185。由于 WDB 并未提供身份认证与访问控制相关的安全策略,攻击者可以直接通过 UDP 17185 端口远程读取和修改任意存储单元、执行函数调用或者管理网络设备任务。漏洞 情况在 2010 年 8 月已在互联网上披露,相关的攻击测试代码被公开并收录在国 外知名漏洞攻击测试工具 Metasploit 中。根据互联网公开信息获知,包括 Huawei (华为)、ZTE(中兴)、Ericsson(爱立信)、Motorola(摩托罗拉)在内的多家国 内外知名企业的相关设备均受到影响。国家信息安全漏洞共享平台 CNVD 进行了 初步测试,并综合国外网络安全组织报告的信息,得到 11000 余个基础电信运营 企业现网中疑受影响的设备 IP。 华为 Vxworks 设备部分检测结果如下:
中兴部分设备检测结果如下: 此漏洞有两种处理方案:1).现有版本上,配置 ACL 规则(附加访问控制的 方案),屏蔽此端口即可;2):新出版本关闭此端口。 2:不安全加密算法漏洞:用于 Vxworks 下的标准验证 API 算法的 hash 函数 易 受 碰 撞 。 已 知 用 户 名 的 攻 击 者 可 访 问 (telnet,FTP) 服 务 , 使 用 标 准 验 证 API(loginDefaultEncrypt (), loginLib 的一部分)在一个相对短的时间内暴露 破解密码,由于 hash 函数易受碰撞,不必找到实际密码只要一条字符串就能生 成相同的 hash 值。 例如当使用默认的”target/password”登陆时,‘y{{{{{kS‘会 hash 出与 password 一样的结果。因此可以使用‘y{{{{{kS‘作为密码登陆。 此漏洞的一般处理方法如下: 1).限制访问:应实施适当的防火墙规则来限制访问,使用标准的 API 的认 2).禁止服务:如果不需要的话,应该被禁用,如 FTP 或 Telnet 服务。 3).监控访问:hash 签名应该实施蛮力攻击检测服务,使用标准认证的 API。 证的任何服务。
3: Wind River VxWorks FTP 守护程序权限许可和访问控制漏洞 漏洞简介:Wind River VxWorks 中的 FTP 守护程序在许多次失败的登录尝试 4:Wind River VxWorks INCLUDE_SECURITY 功能信任管理漏洞 5:Senao SI-680H VOIP WIFI 电话 VxWorks 远程调试器访问漏洞 后不关闭 TCP 连接。远程攻击者可以借助 brute-force 攻击更容易获取权限。 漏洞简介:Wind River VxWorks 6.x, 5.x 和之前版本中的 INCLUDE_SECURITY 功 能使用 LOGIN_USER_NAME 和 LOGIN_USER_PASSWORD (又称 LOGIN_PASSWORD) 参数创建硬编码凭证。远程攻击者可以借助(1) telnet, (2) rlogin 或者(3) FTP 会话 更容易获取权限。 漏洞简介:Senao SI-680H 是一款无线电话。Senao SI-680H 无线 VoIP 电话 Firmware 0.03.0839 不对可用的 VxWorks 调试器 UDP 端口 17185 进行认证,这可 让远程攻击者访问电话操作系统、获取敏感信息以及导致系统拒绝服务。 漏洞简介:Iconfident SSH 是运行在基于 VxWorks 系统上的 SSH 服务器。 Iconfidant SSH 服务器中存在多个漏洞,可能导致系统不稳定。在 SSH 登录期 间,如果在积极时间帧中执行了登录,或发送了无效的认证凭据,或在登录时同 时执行了其他管理操作的话,就可以触发这些漏洞,导致拒绝服务。 漏洞简介:Iconfident SSH 是运行在基于 VxWorks 系统上的 SSH 服务器。 Iconfident SSH 在实现上存在安全漏洞,远程攻击者可利用此漏洞造成栈缓冲区 溢出和执行任意代码。此漏洞源于服务器的密钥交换功能的边界错误,在处理发 送到服务器的特制客户端主密钥报文时,如果客户端主密钥报文的特定长度字段 的长度超过 0x4000,可造成静态缓冲区溢出。 6:Icon Labs Iconfidant SSH 服务器多个拒绝服务漏洞 7:Iconfidant SSH 服务器密钥交换缓冲区溢出漏洞 2004 年 8 月来自数家反病毒的消息称,它们首次发现了首次发现了利用 对于 WinCE 系统:WinCE 系统是 PDA 与手机上使用非常广泛的嵌入式操作系 统。对于习惯 windows 开发的人来说,可以很方便的开发出 WinCE 下的程序。 而伴随着 internet 与手持设备的发展越来越快,对 winCE 系统的威胁也越来越 严重! Windows CE 操作系统安全漏洞、针对 PDA 进行远程攻击的特洛伊木马病毒代码。 反病毒公司赛门特克的报告将该病毒代码命名为“Backdoor.Bardor.A“,而卡 巴斯基实验室则将该恶意代码命名为” Backdoor.WinCE.Brador.a “,但两家 反病毒机构一致认为表示:使用 WinCE 草走系统的 PDA 感染该病毒以后,一旦连 接进行重启,这些恶意代码将自动运行,而整个袖珍装置将受到攻击者的远程控 制。赛门铁克公司称,一旦你的 PDA 设备感染该病毒,它将自动通过安全漏洞, 将连接互联网的 PDA 的 IP 地址发送到远程攻击者的手里,通过打开端口号为 44299 的通道,实现远程攻击。赛门铁克与卡巴斯基公司均表示,这些后面广泛 存在于使用 ARM 中央处理器的 PDA 上。赛门铁克公司安全应答中心的负责人 Oliver Friedrichs 表示,目前所发现的特洛伊木马代码是其病毒库里的一个样 本,并称“特洛伊木马已经不再是威胁互联网的主要安全杀手了,但为了免遭侵 袭,警告用户最好还是不要打开或执行来路不明的文件和程序。”与所有的特洛 伊木马代码一样,此次发现的特洛伊木马病毒同样不会自我传播,但用户应该谨 慎下载含有恶意代码的应用程序或者打开含有该病毒的电子邮件附件。
分享到:
收藏