首页 工作计划 工作总结 事迹材料 心得体会 述职报告 疫情防控 思想汇报 自查报告 党建材料 策划方案 教案设计 范文大全
  • 主题教育
  • 党课下载
  • 党史学习
  • 振兴乡镇
  • 工作汇报
  • 不忘初心
  • 规章制度
  • 谈话记录
  • 扫黑除恶
  • 共同富裕
  • 脱贫攻坚
  • 整改报告
  • 工作要点
  • 对照材料
  • 调查报告
  • 教育整顿
  • 观后感
  • 申请书
  • 讲话稿
  • 致辞稿
  • 评语
  • 口号
  • 发言稿
  • 读后感
  • 治国理政
  • 学习强国
  • 公文范文
  • 关于Java,Web应用程序安全技术研究

    时间:2023-05-29 13:50:05 来源:正远范文网 本文已影响 正远范文网手机站

    摘要:随着现代技术的不断发展,我国的网络技术和信息技术得到了飞速的发展,在计算机领域当中,Java Web技术得到了广泛的应用,对于现代生活当中的网络技术提供了相当便捷的服务。值得注意的是,应用程序当中的安全问题也已经成为了相当严峻的问题。在本文当中首先对Java Web应用技术所面临的安全威胁进行了概述;其次,对Java的安全体系结构和安全策略进行了分析;最后针对Web安全研究进行了分析。

    关键词:Java Web;应用程序;安全技术

    中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016)30-0265-03

    随着现代化的网络技术和信息技术的不断发展,在人们的生活当中网络已经得到了相当广泛的应用。很多现代化的网上业务已经出现了人们的生活当中,比如电子商务、电子政务、数字化图书馆、远程教育以及网上休闲娱乐功能等活动。在网络发展过程当中Web应用系统是在网络发展过程当中发展最快的。在现代化的各种政府部门或者企业当中,Web技术已经得到相当广泛的应用,因此Web系统发挥着重要的作用。值得注意的是,在网络世界当中,对其中的管束和约束也是相当大的,已经成为了网络发展的重要障碍和威胁,从而需要对其Java Web的应用安全技术进行全方位的保障,从而推动其健康的发展。

    1 Java Web应用技术所面临的安全威胁

    Web应用程序主要是在Web开发程序的基础之上进行开发的,需要利用服务器和客户端这两个基本的组件来进行维护和开发,从而可以使得对浏览器端所发出的请求进行获取,将起发送到服务器的部分进行数据的相应和一系列请求操作。在服务器端和客户端的通信协议都主要是以HTTP为基础出发点的,并且根据其中的安全级别来对通信过程当中的信息和数据进行机密性的保护和完整性的保证,一般在加密協议上都采用SSL/TLS协议来进行保障。在网络当中存在的不安全因素是相当多的,因此在对Web应用程序进行开发的时候,就对设计人员和开发人员提出了更多更高的要求。在因素当中,主要包括三个方面的不安全因素,首先是来自于客户端的安全威胁,主要是由于浏览器本身当中的缺陷而对其中的代码造成了执行方面的安全漏洞;其次是服务器端造成的安全威胁,其中主要是Web应用程序当中的服务器端的代码在进行隐藏的时候其中产生的缺陷就会造成安全方面的威胁,从而对其运行支撑环境造成相当不利的影响,比如SQL注入漏洞以及操作系统漏洞等威胁;最后在整体的信息通信过程当中还存在着一定程度的威胁,对信息的窃听以及数据方面的修改会产生不利的影响,从而对Web应用程序当中的通信数据产生机密性和完整性的缺陷。

    2 Java的安全体系结构和安全策略

    2.1 Java的安全体系结构

    在Java的安全体系结构当中,是建立在安全沙箱的基础概念之上的,对模型区分了本地代码和利用网络加载的远程代码。在本地代码当中是可以信任的,并且可以对本地的资源进行访问。在Java设计当中,对安全体系结构进行了增加,需要建立在保护域的概念之上,从而可以为其提供很大程度的安全控制。

    在保护域方面,主要对应用安全和系统安全进行了区分,其中最核心的概念就是保护域,可以对操作环境当中需要保护的部分进行指出,以此来对组件进行分组或者对被保护资源进行分组。在保护域当中,需要将具有相同权限的类进行归类,从而度保护域进行了定义。如图1所示:

    在Java类的加载安全机制当中,需要对基本类的记载其进行引入,从而对加载器之间的关系问题进行有效解决,在这过程当中Java程序当中所需要的初始类是需要进行加载的,并且对其他类的加载器,需要进行起动才能对其进行加载,如图2所示。

    在Java权限方面,是利用一个固定的类来进行表示的,为Permission,在Java当中提供了一些子类来表示具体系统的权限,并且对其子类也建立了相对应的应用程序权限,利用此种方式来实现了对Java当中安全策略的相关定义。

    2.2 Java的安全策略

    在Java的安全策略当中,最重要的是可以根据一个应用程序当中的不同来对其创建出不同的安全策略文件,从而对其中的保护域内容进行不断的提升和改进,但是对应用程度当中的代码却不会进行任何改动和变动。在安全策略文件当中,需要对应用程序当中的策略条目进行定义,并且根据文件当中的条目找到相对应的安全策略文件。

    首先在安全属性文件方面,需要对三种类型的安全策略文件进行配置,分别是系统安全策略文件、放在用户根目录之下的用户策略文件以及应用程序加载的应用安全策略文件,利用对其系统属性的设定,可以将现有的安全策略文件进行代替。同时,还有一种情况就是可以允许任何程序的人对Java现有的安全策略文件进行改变,在这个过程当中就会出现一系列的安全问题,在发生此种情况的时候需要利用Java命令来对其系统属性进行设置。

    在Java的安全策略文件方面,是包含着一系列的条目的,可以对其进行授权,但是在这个过程当中,需要进行钥箱的明确,从而利用数字前面来对相关证书和密钥进行查找。

    3 Web安全研究

    在对JavaWeb应用程序的相关安全技术进行研究的时候,可以从客户端、服务器端以及整体的通讯过程当中产生的安全威胁进行研究,可以分为以下几个方面来进行分析:

    1) 如果Web应用程序在程序级别和代码级别进行安全防范的过程当中,需要对应用程序的编写和安全级别进行不断的提升,需要对开发环境以及目标程序的安全性和运行稳定性进行充分的了解;其次还应该对黑客常用的技术进行了解,包括黑客的心理、类型、目标以及技术等相关的内容。从各个角度来对Web程序的防御性能进行编写。

    2) 还可以利用多种方式来作为用户的身份认证方式,比如数字证书等,对服务证书和客户端证书之间实现相互的连接,从而对其SSL实现双向认证的方式,最终实现数据的安全传送。

    3) 还可以利用计算机技术来充分减少Web应用程序的安全通信方面带来的各种负面影响:

    Ajax:即为一种创建交互式的网页开发技术,广泛受到了信息界的好评和关注。利用Ajax技术可以实现后台异步数据有效读取的功能,从而对用户操作的便捷性进行全方位的提升。在进行互联网技术提升的过程当中,最重要的部分就是提升用户本身的操作体验,从而实现用户可以在页面基础之上和程序进行良好的互动连接。值得注意的是利用此项技术的时间是相对较短的,因此在应用方面还存在相当大的缺陷和漏洞。在此种情况下,应该在其中进行相对应的嵌入式的保护,从而对程序进行有效的保护。在一般情况下,利用Ajax技术进行应用程序的开发过程当中,在页面发生变化的情况下就需要及时的通知用户,并且还要在服务器和客户端之间建立起专项的通道,从而对其输入的信息进行检查。如果服务器需要开展用户的相关认证工作的情况下,就应该在所用的服务器的脚本方面上进行展开,需要最大程度的对认证工作的质量以及信息的被盗取效率进行降低。

    Cookie:即为一种增强用户身份识别工作的简单性和准确性所建立的数据缓存,可以帮助应用程序的服务器对用户的身份信息进行有效快速的识别。利用了此项技术之后,在用户进行登录之后,就会对用户注册的信息进行记录,放入到缓存当中,在下一次用户进行重复访问的时候就会快速的提取到用户的相关信息,实现了信息认证程序当中的重复性工作。在利用cookie技术进行开发的时候,在过去的时间当中经常会受到黑客的攻击,从而对用户的信息数据造成泄露,造成了相当大的损失。其中web蠕虫就是攻击cookie技术的主要病毒形式。以其极强的破坏力和传播力可以对其应用程序的安全漏洞进行全方位的传播,从而对网页当中的脚本以及回话信息进行窃取。另外一方面,CSRF也可以對网站进行伪装,从而骗取用户的信任,对该网站进行利用。

    JavaScript:即为一种安全性能较完善的脚本语言,可以对对象和事件来进行驱动。利用此项技术对网页进行开发的时候是具有生动简洁的优势的,在语言的掌握方面是相对简洁的,在现阶段的开发应用过程当中收到了广大程序员的欢迎。在现阶段当中,函数句柄劫持以及DOM劫持属于此项技术当中最主要的安全威胁。函数句柄劫持,属于黑客当中常见的供给手段,对网页的那个中的方法或者变量值进行重新定义或者赋值的方式来实现对原本程序的攻击,篡改原本的程序。在很多情况下,被劫持函数的原本语句是不会被黑客保留的,此种方式下的函数反劫持工作是具有相当高的难度的,因此是难以实现的。DOM劫持也是比较常见的一种劫持方式,在对象被恶意代码进行劫持之后,函数句柄的反劫持手段所发挥的作用就会被受到限制。在现阶段的实际应用环境当中,相关的恶意代码是完全不会被包鲁到原本的句柄副本当中的,会给函数的反劫持带来巨大的限制作用。因此,目前状态下的JavaScript函数反劫持技术也是一个相当重大的难点,在对其进行开发的过程当中需要对反劫持的相关技术提出防范建议,在Web应用程序的防范方面上需要利用服务器端的验证代码来对其进行验证,从而对用户提交的数据内容信息进行客户端方面的校验,实现对逻辑相关业务的处理,加强对脚本语言的验证,在客户端进行验证,从而做到从根本上安全性能的防范。

    比如在一个应用程序当中,需要实现点击登录的功能,在进行初始认证的过程当中,就需要对应用程序进行重定向的操作,最终指向OracleAS SSO Server,在这个过程当中可以检查该用户是否是一个有效的cookie集;如果没有,就需要在用户进行提交用户名和密码的时候进行验证。在用户提交之后,就可以在服务器当中进行密码验证并且在浏览器当中设置一个SSO cookie。可以用来在服务器和浏览器之间实现通过HTTP的方式来对客户进行登录验证。在这个过程当中,是不能被第三方进行设置或者读取的,需要在一定的特定时间之后才会过期,这个过期的时间长短是由管理员来进行设置的。在整个服务器和合作应用程序进行登录的过程当中,首先需要用户访问合作伙伴应用程序A,确定没有被进行认证;之后应用程序就会将其进行重定向到SSO Server;之后就会进行用户名密码页面的显示,并且进行密码验证的时候对cookie进行设置,就会在SSO证书当中进行存储,之后就会通过认证用户登录合作伙伴应用程序的加密令牌来将用户进行重定向到合作伙伴的应用程序当中,这样就完成了A程序当中的cookie设置,如图3所示

    4 结语

    综上所述,Java Web应用程序的开发是需要建立在Java的基础知识之上的,在和Web技术建立起紧密的联系之后,从而对其进行应用程序的开发。在这个过程当中,需要针对Web技术当中存在的漏洞进行安全方面的防护,从而使得系统安全、网络安全以及数据库安全都可以得到紧密的连接。在进行分析的时候,需要根据实际情况来对数据库的安全环节进行建立,从而制定出切实可行的安全对策,利用各个层次之间的安全策略,保障数据库的安全。

    参考文献:

    [1] 彭昊辰,郑金磊.Java Web应用程序安全技术研究[J].中小企业管理与科技,2016(8):261-261.

    [2] 裴德志.基于J2EE的WEB安全研究[D].武汉理工大学,2006.

    [3] 陈华.Java Web应用程序安全技术研究[J].电脑编程技巧与维护,2010(24):123-124,139.

    [4] 张冬姣,王萍.关于Java Web应用程序安全技术分析[J].电脑迷,2016(3):48-48.

    [5] 张亚林,王开磊.Java Web应用程序安全技术研究[J].计算机光盘软件与应用,2012(4):58-58,61.

    推荐访问:技术研究 应用程序 java Web