Web应用安全漏洞与防御机制研究综述

2021-03-15 06:59梁本来
电脑知识与技术 2021年1期
关键词:防御机制安全漏洞信息安全

梁本来

摘要:随着Web应用系统的广泛使用,其安全漏洞带来的危害也与日俱增。参阅大量相关文献,列举当今Web应用常见的安全漏洞,分析了相应漏洞概念及原理,并总结了相应的防御机制,旨在为构建更为安全的Web应用系统提供思路。

关键词:安全漏洞;防御机制;Web应用;信息安全

中图分类号:TP309         文献标识码:A

文章编号:1009-3044(2021)01-0054-02

Abstract:With the wide use of web application systems, the harms of their security vulnerabilities increased steadily. Based on lots of the related literatures, the common security vulnerabilities of web applications were enumerated, whose concepts and principles were analyzed, and the defense mechanisms were summarized, which provide ideas for building the more secure web application systems.

Key words:security vulnerabilities;defense mechanisms;web applications;information security

1引言

随着Web2.0技术的应用与发展,互联网应用更加民主,更方便用户访问;而近些年,Web3.0技术也应运而生,Web应用更加智能,互动性更强,应用范围也更加广泛[1]。传统的C/S模式的应用逐渐被淘汰,Web应用承载了绝大多数信息,其中不乏大量机密和隐私信息,攻击Web应用也成为黑客们获取利益的重要方式。与此同时,Web应用系统的安全风险也随之而来。时下流行的各类开发技术降低了Web应用开发的难度,不少开发人员也欠缺足够的安全意识,导致Web应用中存在较多安全漏洞[2-3]。因此,现阶段Web应用安全正面临前所未有的严峻威胁。

2 Web应用安全漏洞及其原理

2.1 SQL注入

由于部分开发人员欠缺安全意识,导致程序忽略了对非法字符串的过滤,而这些非法字符可能包含对某些数据库系统有特殊意义的符号或命令,让攻击者有机会操控Web应用数据库,获取到Web应用系统的关键信息,导致信息被窃取、甚至更改和删除[4]。更为严重的后果可能导致Web应用服务器被植入后门程序。SQL注入攻击过程如图1所示。

2.2跨站脚本(cross-site scripting,XSS)

由于开发人员的大意,Web应用系统忽略了对用户输入字符的过滤,给攻击者注入恶意指令代码留下了可乘之机[5]。这些恶意网页程序包括JavaScript、Java、VBScript、ActiveX、 Flash 以及HTML等。通过XSS攻击,攻击者可以窃取网页内容、会话和cookie等各种内容。XSS攻击过程如图2所示。

2.3跨站请求伪造(Cross-site request forgery,CSRF)

黑客构造好恶意网站,诱骗已经登录正常Web应用(如某银行官网)的用户去访问,伪装成该用户向正常的Web应用完成一系列非法操作[6]。与XSS的差别是,CSRF通过伪装已登录的正常用户去请求受信任的Web应用,而XSS必须盗取正常用户的cookie才能发起攻击。因此,CSRF更为隐蔽,更加难以防范。CSRF攻击过程如图3所示。

2.4文件上传漏洞

由于开发人员的大意,Web应用系统如果忽略了对上传文件的验证,或者是过滤不足,可能会出现此类漏洞。攻击者将恶意脚本文件伪装成正常的图片、文本、视频等文件上传至系统,可能会导致系统乃至服务器都被操控[7]。文件上传漏洞攻击过程如图4所示。

2.5 文件包含漏洞

该类漏洞主要出现在PHP应用系统中,在APSX、JSP等Web应用系统中也有出现,但相对较少。开发人员希望更加灵活的编写代码,会频繁通过PHP函数引入文件,但如果没有对该文件进行严格的验证,就可能会导致意外的文件泄露或者恶意的代码注入[8]。当攻击者能够控制函数的动态执行变量时,就可以发起文件包含漏洞攻击。

2.6Cookies欺骗

Cookies,是Web系统为了辨别用户身份,进行Session跟踪而储存在用户本地终端上的数据,由客户端暂时保存的信息。储存在Cookies中的大部分信息是普通的,但是不少Web系统使用Cookies来储存针对私人的数据,如:用户名、密码等信息。Cookies欺骗是通过盗取、修改、伪造Cookies的内容来欺骗Web服务器,并得到相应权限或者进行相应权限操作的一种攻击方式[9]。

2.7命令执行漏洞

由于开发人员的大意,Web应用系统如果忽略了对可执行的函数进行严格过滤,可能导致攻击者通过提交恶意构造的命令行,继承Web服务程序的权限去执行系统命令,控制整个Web应用甚至Web服务器,从而进一步渗透内网[10]。

2.8 反序列化漏洞

PHP、JAVA、Python等主流编程语言均具有反序列化问题。攻击者可以利用反序列化漏洞,通过构造恶意请求报文远程执行命令,危害較大。以JavaEE常用的中间件WebLogic为例,攻击者一旦利用此漏洞发起攻击,便可以进行内网渗透,进一步获取服务器的系统权限[11]。

3 Web应用安全防御机制

安全漏洞的出现,很大程度在于应用系统本身存在的问题,导致攻击者可以通过SQL注入、跨站脚本、伪造请求、文件上传等一系列非法操作获取Web系统甚至服务器的权限[12]。总结相应防御机制如表1所示。

4结论

本文列举了当今Web应用常见的安全漏洞,分析了相应漏洞概念及原理,并总结了相应的防御机制。当今大多数网络应用基于B/S模式,Web应用漏洞层出不穷,且不断涌现出新型攻击手法,Web应用的安全防御始终是一个动态的过程,需要相关开发人员、信息安全厂商、以及网络管理人员等共同防御,才能最大限度降低Web应用漏洞带来的危害,从而保护Web应用的安全。

参考文献:

[1] 刘雨晴. Web2.0向Web3.0 过渡下的网络信息资源组织发展—以社會化媒体为例[J].电脑知识与技术,2019, 15(36):33-35.

[2] 孙晓飞. Web应用漏洞分析与检测的研究[D].北京:北京邮电大学, 2016.

[3] 谭剑. Web网络及应用运维安全策略研究[J].电子制作, 2020,(2): 74-76.

[4] 李明. Web应用SQL注入漏洞分析及防御研究[J].福建电脑, 2020, 36(5):25-27.

[5] 刘建亮,乔兴华.跨站脚本攻击及防范方法研究[J].科学技术创新, 2020(10):137-138.

[6] 严亚萍,胡勇.浅析CSRF漏洞检测、利用及防范[J].通信技术, 2017(3): 558-564.

[7] 黄志华,王子凯,徐玉华,等.文件上传漏洞研究与实践[J].信息安全研究, 2020(2): 151-158.

[8] 周开东,魏理豪,王甜,等.远程文件包含漏洞分级检测工具研究[J].计算机应用与软件, 2014(2): 21-23.

[9] 李强,陈然,戚江一,等.基于主机特征的Cookie安全研究[J].保密科学技术, 2011(4):23-25.

[10] 刘家栋. PHP网站常见安全漏洞及防范措施[J].计算机与网络, 2016(1): 82-83.

[11] 徐江珮,王捷,蔡攸敏,等. Java反序列化漏洞探析及其修复方法研究[J].湖北电力, 2016(11): 47-50.

[12] 沈子雷.基于Web应用的网络安全漏洞发现与研究[J].无线互联科技, 2020(5):19-20.

【通联编辑:代影】

猜你喜欢
防御机制安全漏洞信息安全
防御机制在医学生抑郁的性别差异中的中介作用*
安全漏洞太大亚马逊、沃尔玛和Target紧急下架这种玩具
保护信息安全要滴水不漏
高校信息安全防护
基于安全漏洞扫描的校园网告警系统的开发与设计
保护个人信息安全刻不容缓
藏族和汉族首发精神分裂症患者心理防御机制对照研究
躯体形式障碍患者治疗前后防御机制的对照观察
信息安全
安全漏洞Shellshock简介