常见Web应用安全漏洞原理与防御介绍

admin 2021年10月12日13:11:50评论116 views字数 2590阅读8分38秒阅读模式

    Web应用是指采用B/S架构、通过HTTP/HTTPS协议提供服务的统称。随着互联网的普及,Web应用已经融入到我们生活中的方方面面。在企业信息化的过程中,越来越多的应用也都架设在Web平台上。在这些Web访问中,大多数应用不是静态的网页浏览,而是涉及到服务器侧的动态处理。此时,如果技术人员的安全意识不足,例如对程序参数输入等检查不严格,就会导致Web应用安全问题层出不穷。轻则篡改网页内容,重则窃取重要内部数据,更为严重的则是在网页中植入恶意代码,使得网站访问者受到侵害。这使得越来越多的用户关注应用层的安全问题,Web应用安全的关注度也逐渐升温。

    本文根据当前Web应用的安全情况,列举了Web应用程序常见的攻击原理及危害,并给出如何避免遭受Web攻击的建议。

SQL注入

    当应用程序将用户输入的内容,拼接到SQL语句中,一起提交给数据库执行时,就会产生SQL注入威胁。由于用户的输入,也是SQL语句的一部分,所以攻击者可以利用这部分可以控制的内容,注入自己定义的语句,改变SQL语句执行逻辑,让数据库执行任意自己需要的指令。通过控制部分SQL语句,攻击者可以查洵数据库中任何自己需要的数据,利用数据库的一些特性,可以直接获取数据库服务器的系统权限。

    本来SQL注入攻击需要攻击者对SQL语句非常了解,所以对攻击者的技术有一定要求。但是现在已经出现了大量SQL注入利用工具,可以让任何攻击者,只要点几下鼠标,就能达到攻击效果,这使得SQL注入的威胁极大增加。

常见Web应用安全漏洞原理与防御介绍

XSS

    跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets,

    CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意html 代码,当用户浏览该页之时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。

反射型跨站脚本攻击

    攻击者会通过社会工程学手段,发送一个URL连接给用户打开,在用户打开页面的同时,浏览器会执行页面中嵌入的恶意脚本。

常见Web应用安全漏洞原理与防御介绍

存储型跨站脚本攻击

    攻击者利用web应用程序提供的录入或修改数据功能,将数据存储到服务器或用户 cookie中,当其他用户浏览展示该数据的页面时,浏览器会执行页面中嵌入的恶意脚本。所有浏览者都会受到攻击。

常见Web应用安全漏洞原理与防御介绍

命令注入

    命令注入和SQL注入差不多,只不过SQL注入是针对数据库的,而OS命令注入是针对操作系统的。OS命令注入攻击指通过Web应用,执行非法的操作系统命令达到攻击的目的。只要在能调用Shell函数的地方就有存在被攻击的风险。倘若调用Shell时存在疏漏,就可以执行插入的非法命令。

    命令注入攻击可以向Shell发送命令,让Windows或Linux操作系统的命令行启动程序。也就是说,通过命令注入攻击可执行操作系统上安装着的各种程序。

常见Web应用安全漏洞原理与防御介绍

跨站请求伪造

    CSRF(Cross Site Request Forgery),利用已登录的用户身份,以用户的名义发送恶意请求,完成非法操作。

    例如,如果用户浏览并信任具有CSRF漏洞的网站A,则浏览器会生成相应的cookie,并且用户访问危险的网站B而不退出网站。危险网站B要求访问网站A并提出要求。浏览器使用用户的cookie信息访问网站A。由于网站A不知道是用户自身发出的请求还是危险网站B发出的请求,因此将处理危险网站B的请求,从而完成了用户操作目的的模拟。这是CSRF攻击的基本思路。

常见Web应用安全漏洞原理与防御介绍

越权访问

    越权漏洞是指应用在检查授权(Authorization)时存在纰漏,使得攻击者在获得低权限用户帐后后,可以利用一些方式绕过权限检查,访问或者操作到原本无权访问的高权限功能。在实际的代码安全审查中,这类漏洞往往很难通过工具进行自动化检测,因此在实际应用中危害很大。其与未授权访问有一定差别。目前存在着两种越权操作类型:垂直越权操作和水平越权操作。

    垂直越权漏洞,也称为权限提升,是一种“基于URL的访问控制”设计缺陷引起的漏洞。由于Web应用程序没有做权限控制或者仅在菜单上做了权限控制,导致恶意用户只要猜测其他管理页面的URL,就可以访问或控制其他角色拥有的数据或页面,达到权限提升的目的。

    水平越权漏洞,是一种“基于数据的访问控制”设计缺陷引起的漏洞。由于服务器端在接收到请求数据进行操作时没有判断数据的所属人而导致的越权数据访问漏洞。如服务器端从客户端提交的request参数(用户能够控制的数据)中获取用户id,恶意攻击者通过变换请求ID的值,查看或修改不属于本人的数据。

常见Web应用安全漏洞原理与防御介绍

    随着互联网和Web技术的广泛使用,Web应用安全所面临的挑战日益严峻,Web系统时时刻刻都在遭受各种攻击的威胁。因此,像BI这种典型的Web应用,需要制定一个完整的Web攻击防御解决方案。在这里以Smartbi安全性为例,向大家介绍怎么做到防患于未然。

    首先,Smartbi通过软件自带的安全补丁工具包定期进行补丁文件的更新,并且支持热修复;其次,Smartbi从Web端、源码、组件等方面对产品进行安全问题自查,同时也通过与“补天众测平台”和“广东赛评检测中心”等第三方机构进行合作,定期对产品进行安全扫描,并积极配合解决发现的漏洞。最后,通过官方的技术支持渠道,及时响应用户对安全问题的咨询和求助。

    由此可见,Smartbi正是通过建立全方位的安全漏洞防御机制来确保用户信息的安全。但是,Web攻击防御是一个长期持续的工作,随着Web技术的发展和更新,Web攻击手段也不断发展,针对这些最新的安全威胁,需要及时调整Web安全防御策略,使Web应用在一个安全的环境中为企业服务。

好文推荐

应急响应的基本流程(建议收藏)

渗透测试面试近期热门题

干货|安全工程师面试题汇总

渗透工程师常用命令速查手册

Web常见漏洞描述及修复建议

流量分析与日志溯源的个人理解

规范报告中的漏洞名称以及修复建议

应急响应 | 7款WebShell扫描检测查杀工具

11个步骤完美排查Linux机器是否已经被入侵


欢迎关注 系统安全运维

五年甲方安全经验,每日坚持学习与分享,麻烦各位师傅文章底部给点个“再看”,感激不尽常见Web应用安全漏洞原理与防御介绍

原文始发于微信公众号(系统安全运维):常见Web应用安全漏洞原理与防御介绍

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年10月12日13:11:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   常见Web应用安全漏洞原理与防御介绍https://cn-sec.com/archives/578406.html

发表评论

匿名网友 填写信息