基于Ajax的SSH客户端系统的设计与实现外文翻译资料

 2022-11-24 15:50:31

英语原文共 13 页,剩余内容已隐藏,支付完成后下载完整资料


基于Ajax的SSH客户端系统的设计与实现

Yusuke Kosuda and Ryoichi Sasaki

东京电机大学2-2, Kanda-Nishiki-Cho, Chiyoda-Ku Tokyo, 101-8457 Japan

kosuda@isl.im.dendai.ac.jp, sasaki@im.dendai.ac.jp

摘要:Ajax技术提供了Web应用程序的功能。桌面应用程序的可操作性。在本研究中,我们提出并实施一个使用Ajax的安全外壳(SSH)客户端系统,独立于操作系统或java运行环境。在这个系统中,在A上生成SSH分组。Web浏览器使用JavaScript和Web服务器作为通信代理用SSH服务器实现端到端SSH通信。我们实现了一个原型程序,并通过实验验证了它的运行。一些网络浏览器和移动电话。该系统已启用安全SSH在一个网吧或任何移动电话的PC上进行通信。通过测量处理性能,验证了满意的性能。紧急使用,虽然在某些情况下移动速度不令人满意。本研究所提出的系统将在电子商务领域各个方面都有效。

关键词:AJAX、SSH、安全、手机、移动PC、PDA、智能手机。

1引言

近年来,许多基于Ajax技术的Web应用程序(异步)已经开发了JavaScript和XML:详见第2.1节。Ajax以谷歌MAP(1)为代表的应用极大地促进了实现。 “Web 2”不同于传统的Web应用程序,Ajax应用程序可以提供功能和可操作性等同于桌面应用程序的功能性和可操作性。自从Ajax应用程序不依赖于操作系统或java运行环境,预计它们可以用于手机、PDA或其他移动终端。由于对远程计算机极其安全的访问能力,SSH(安全)Shell:详见第2.2节)服务器和网络管理员每天使用作为工作执行的重要工具。然而,当前的SSH在任何环境下都是不可用的。即使当互联网连接终端可用,SSH通信是不可能的SSH客户端软件安装在终端中。对于紧急SSH通信,A用户需要安装有相应SSH客户端的互联网连接终端。或提供安装。因此,在本研究中,我们提出并使用一个SSH客户端系统。AJAX使得SSH通信可以从各种网络连接中获得带有安装浏览器的设备。如果广泛提供服务,所提出的系统在紧急情况下非常有用,在电子商务领域各种情况下都有效。前面描述的函数已经在这样的程序中实现。使用java [ 19 ] MindTerm,[ 20 ]。然而,这些实现方法是不可能的。适用于许多现有的PC或移动终端(手机、PDA等)java运行环境。通过本研究的结果,我们可以保证即使在以前的环境中也能安全地实现上述功能是不可能的。

2基本技术

2.1 Ajax纲要

AJAX是一种结合现有的Web应用实现技术。Web开发技术。更具体地说,异步HTTP和/或HTTPS(在此之后,我们表示HTTP和/或HTTP作为HTTP(S))通信由JavaScript的The XMLHttpRequest object和动态网页组成由动态HTML重写,就像一个网页读取到Web浏览器重写部分通过通信本身(图1)。例如,如果Ajax应用于Web搜索,搜索结果可以实时显示,因为执行搜索。不是在确认输入之后,而是在后台用户正在输入密钥。通过在后台执行通信并使用JavaScript的各种事件和功能,Web应用程序可以提供高响应性。各种功能几乎等同于桌面应用程序。The XMLHttpRequest object由PC的主要Web浏览器支持。移动电话和其他移动终端的支持不断增加。此外,通过W3C(World WiWeb Web联盟)的工作草案(2),对象正在被标准化。

AJAX应用的Web应用程序使用这样的Web标准技术作为HTML, JavaScript和样式表。如果只有支持的Web浏览器是可用的,应用程序可以独立使用的操作系统或java环境。

安全极限的同源策略(6)应用XMLHttpRequest这是Ajax核心之一。当XMLHttpRequest直接写在网上带有脚本标记的页面,只能与生成的通信进行生成。服务器(网页的同一个协议端口)。当XMLHttpRequest写在一个外部.js文件,只能用服务器生成的通信(由脚本标签调用.js文件的Web页面的同一协议端口)。

这个极限是一个对安全有利的函数,但是破坏了目标的实现。在本研究中的作用。为了避免限制,因此,从服务器生成成为中继的代理(如果协议也进行互变是不同的)。

图1 Ajax Web应用程序的图像

2.2 SSH概述

SSH是一种用于远程计算机登录和通过网络执行命令的通信协议和程序。与传统的telnet和rLogin相比,使用认证和加密技术的安全机制SSH具有以下特点:

-服务器主机身份验证,用于判断客户端是否连接服务器

允许进入,也可以防止中间人攻击

-用户认证(例如密码、公钥认证等)

服务器的一种类型,用于判断是否接受请求的连接

由用户

-通信信道加密(例如,三方、AES、RC4等)

用于客户端和A端到端加密的公共密钥加密

防止窃听的服务器

防止篡改和非法数据插入的完整性保证

有关SSH的详细信息,请参阅参考文献〔4〕。


3 现有系统

3.1现有系统概要

已经有使用AsAX应用系统的SSH客户机[5],[6]。这些系统有图中所示的配置。2和3。现有的系统通过使用HTTP(S)使用Web服务器中的SSH客户端来实现SSH通信。来自Ajax网页的XMLHttpRequest,I/O函数读取到Web中浏览器。因此,SSH通信只在Web服务器远程计算机和A服务器之间是部分的。

图2 现有系统的网络配置

图3 现有系统的软件配置

3.2 现有系统的问题

现有的系统是由窃听、篡改或欺骗的人在中间。攻击通信信道。这种攻击可能损害实质上。SSH的安全功能。.

Web浏览器和Web服务器之间的HTTP通信可能受到网络攻击者的攻击,因为通信数据未加密。

在Web浏览器和Web服务器之间使用HTTPS加密保护通信免受网络攻击。然而,这种方法的问题是Web服务器中的处理是用户的黑盒子。我们不能否认攻击来自Web浏览器或远程计算机输出命令输入的可能性。此外,用户无法验证这种可能性。

使用完全可靠的Web服务器,现有的系统适用于在家中的服务器或用户所在的组织中使用HTTPS的服务。然而,这样的系统可能不适合提供给公众的服务。

4提出系统

4.1概念

所提出的系统的目标是端到端SSH通信,它确保使用Web应用程序的SSH客户端的桌面应用程序的安全级别。现有系统的AJAX网页目前用于提供I/O接口。相反,Ajax网页具有所提议的系统中的SSH客户端的所有功能。图4显示桌面应用程序、现有系统和提议的系统的功能配置。

图4 实现的功能配置

4.2系统配置

图5显示了所提出的系统的网络配置。网络配置与现有系统相同。

图6显示了所提出的系统的软件配置。TCP代理守护进程是通过XMLHTTPROQUEST请求实现TCP通信的程序。

图7显示了所提出的系统的网络协议栈。

图5 系统的网络配置

图6。系统的软件配置

图7 提出的系统协议栈

4.3操作要点

图8显示了所提出的系统的通信序列。

所提出的系统按顺序从(1)到(6),如下列出。

(1)网页获取

通过使用Web浏览器,用户访问Web的HTTP守护进程。服务器并获取Ajax网页。因此,软件配置变为如图6所示。

(2)TCP连接请求

用户输入远程计算机名称、端口号、用户名和其他信息进入Ajax网页进行登录。使用远程计算机名称和端口号作为参数,Ajax网页发送TCP通过HTTP守护进程对TCP代理守护进程的连接请求使用XMLHutpRestQuest.

(3)TCP连接的建立

通过接收(2)的请求,TCP代理守护进程建立TCP。与SSH守护进程的连接。这就建立了虚拟TCP连接。从Ajax网页到SSH守护进程。

(4)SSH连接的建立

通过Web服务器,Ajax网页建立了SSH连接。在(3)建立的虚拟TCP连接上使用SSH守护进程(SSH通过HTTP)。

图8 提出的系统通信序列

(5)SSH接收处理

Ajax网页从SSH守护进程中反复接收SSH包通过Web服务器。对于这个处理,使用慧星[7 ]来保持请求。从Web浏览器在Web服务器上指定的时间返回一个当接收数据生成时的响应。当接收到SSH分组时。它们被解密,它们的校验字节由JavaScript计算。屏幕刷新等处理。

(6)SSH发送处理

由用户输入到Ajax网页的命令由JavaScript事件。这些命令是加密的,它们的校验字节是用JavaScript计算。然后生成SSH包并发送到SSH守护进程通过Web服务器。

5 实施

实现了原型系统(AJAX网页和图6中的TCP代理守护进程)。表1中列出的函数被安装。SSH协议是SSH1〔8〕和SSH2〔9〕、〔10〕、〔11〕、〔12〕、〔13〕、〔14〕、〔15〕、〔16〕。SSH1的许多弱点已经被注意到,因此建议使用SSH2。然而,由于易于开发,我们决定使用SSH1来实现。

表1 实现系统的功能

5.1操作检查

图9和图10显示了实现的原型的屏幕截图。表2给出了用于性能检查的机器的IP地址配置。

图11显示了(2)和稍后的过程的通信,描述在第4.3部分“操作大纲”在Web服务器上捕获。通信类型是客户端和Web服务器之间的HTTP和Web服务器和远程计算机之间的SSH(SSH1)。图12和图13详细示出了图11中的176和177的分组。

图10。终端窗口截图

表2 IP地址配置

图11 在Web服务器上捕获的数据包

图13 SSH加密包的细节(177号)

在从图12所示的HTTP分组的“session=”开始的行中,“数据=”之后的“AAAAED5PMOP”(以下简称)的数据被编码成Base64。这对应于图13所示的SSH加密分组(即,TCP有效载荷)的“00 00 00 00 DE 4F”(以下省略)。这表示从客户端到远程计算机的端到端SSH通信。

所实现的系统被验证为使用以下主要网络进行操作浏览器(所有运行在WindowsXP家庭版SP2):

Internet Explorer 6

Mozilla Firefox 2

Opera 9.26

Safari 3.1

5.2手机支持

此外,我们分别使用移动电话KDDI AU W53S提供的PC站点查看器(Opera Mini 3.1)来验证移动终端的AJAX网页,PC的Web页面与PC的相同,除了在每一行馈送的通信之外。

6建议系统的评估

6.1安全评估

6.1.1使用SSH客户端功能防止非法访问Ajax网页的安全性所提出的系统基于web服务器的假设,即Ajax网页通常读入web浏览器以提供SSH客户端功能。这一假设包括两个条件:

(A)web服务器中的页面正常。

(B)当从web服务器下载到web浏览器时,页面不会在通信信道上被篡改。

( B )的条件可以通过使用HTTPS来实现。

( A )的条件不容易完全满足。页面的组件( HTML、JavaScript和样式表)允许在客户端上浏览它们的源代码。因此,有知识的人可以分析它们(在当前实现下大约2.5k个步骤)。白名单类型程序还可以实现自动判断。在这些情况下,服务器提供者被认为对非法行为具有心理逻辑抵抗。如果作者单独提出的互联网标记[17]变得流行,这种预防将变得容易。互联网标志是一个可靠的第三方保证内容有效性的机制。

6.1.2安全防范在现有系统中的中间人攻击

在建议的系统中,Ajax web页面具有SSH客户机功能,并直接处理4.1节中提到的SSH数据包,以便在客户机和远程计算机之间实现端到端加密。通过SSH登录到远程计算机和稍后的命令交换,这种加密防止了在现有系统中出现问题的中间人攻击。

6.1.3一般SSH客户机的安全性

在SSH中,客户端通常验证连接到服务器的公钥,以防止中间人攻击。对于此验证,SSH桌面应用程序会将公钥与在known _ hosts文件中注册的公钥列表中的公钥进行比较。这个函数现在还没有在提议的系统中实现,但是如果一个基于密码的加密函数(参见参考资料.[18])被添加到一个Ajax web页面,它提供了SSH客户端函数,并且如果加密的已知主机文件存储在web服务器中,那么这个函数将被添加到一个Ajax web页面中。

从上述情况来看,该系统在安全性上并不逊于SSH桌面应用程序,可以抵御中间人攻击。

在现有的SSH无法保证安全的情况下,所提议的系统不能解决分布式拒绝服务(DDoS)攻击。

6.2性能赋值

从用户的角度,测量了登录的时间和所实现系统的每个性能的I/O处理。

表3和表4列出了客户端规范,表5列出了每个规范的平均10个测量值。( A )

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[22569],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。