常见Web应用攻击类型有:webshell、SQL注入、文件包含、CC攻击、XSS跨站脚本攻击、敏感文件访问、远程命令、恶意扫描、代码执行、恶意采集、特殊攻击、其他攻击十二种攻击类型。

如何查看网站遭受的Web应用攻击?

(请参照以下步骤:)

  1. 访问知道创宇云安全

  2. 注册账号登陆控制台;

  3. 前往域名管理->报表;

  4. 在Web应用攻击统计子页下,查看网站遭受的Web应用攻击;

  5. 点击攻击类型分布->攻击拦截趋势的“❔”查看攻击类型名词解释说明,也可参照下文说明。

Webshell

Webshell是一种网站后门程序,通常以动态脚本语言(如:ASP、PHP、ASP.NET、JSP)编写,混入在网站目录之下,用于控制服务器系统。

图中攻击详情知该用户网站遭受webshell攻击,已被创宇盾拦截。

漏洞危害:

黑客在入侵网站后,通常会将Webshell后门文件与网站服务器Web目录下正常的网页文件混在一起,然后使用浏览器来访问这些后门,得到命令执行环境,从而控制网站或者Web系统服务器。

防御措施:

  1. 严格限制上传文件的文件类型;

  2. 严格限制写入文件操作;

  3. 服务器上安装相应的杀毒软件;

  4. 如果使用三方开发的网站系统,保持最新版本。

SQL注入

SQL 注入攻击(SQL Injection),简称注入攻击、SQL 注入,被广泛用于非法获取网站控制权,是发生在应用程序的数据库层上的安全漏洞。由于在设计程序时,忽略了对输入字符串中夹带的 SQL 指令的检查,被数据库误认为是正常的 SQL 指令而运行,进而使数据库受到攻击,可能导致数据被窃取、更改、删除,甚至执行系统命令等,以及进一步导致网站被嵌入恶意代码、被植入后门程序等危害。

图中攻击详情知该用户网站遭受SQL注入攻击,已被创宇盾拦截。

漏洞危害:

  1. 网页被篡改;

  2. 数据被篡改;

  3. 核心数据被窃取;

  4. 数据库所在服务器被攻击,变成傀儡主机。

防御措施:

过滤用户输入的数据。默认情况下,应当认为用户的所有输入都是不安全的。

  1. 在网页代码中需要对用户输入的数据进行严格过滤;

  2. 部署 Web 应用防火墙;

  3. 对数据库操作进行监控。

文件包含

文件包含漏洞是一种针对依赖于脚本运行时间的 Web 应用程序的漏洞。当应用程序使用攻击者控制的变量构建可执行代码的路径时,一旦其允许攻击者控制运行时执行哪个文件,则会引发该漏洞。文件包含漏洞会破坏应用程序加载代码的执行方式。

图中攻击详情知该用户网站遭受文件包含攻击,已被创宇盾拦截。

漏洞危害:

该漏洞可被利用在服务器上远程执行命令。攻击者可以把上传的静态文件或网站日志文件作为代码执行,获取服务器权限,并进一步篡改用户和交易数据,恶意删除网站等。

防御措施:

  1. 检查变量是否已经初始化;建议您假定所有输入都是可疑的,尝试对所有提交的输入中可能包含的文件地址(包括服务器本地文件及远程文件)进行严格的检查,参数中不允许出现 ../ 之类的目录跳转符。

  2. 严格检查 include 类的文件包含函数中的参数是否外界可控;

  3. 不要仅仅在客户端做数据的验证与过滤,将关键的过滤步骤放在服务端执行;

  4. 在发布应用程序前,测试所有已知的威胁。

XSS跨站脚本攻击

跨站脚本攻击(XSS, Cross Site Script)通常指黑客通过”HTML注入”篡改了网页,插入恶意脚本,从而在用户浏览网页时,控制用户浏览器的一种攻击。XSS漏洞可被用于用户身份窃取(特别是管理员)、行为劫持、挂马、蠕虫、钓鱼等。XSS是目前客户端Web安全中最重要的漏洞。
XSS按效果的不同可以分为3种:
a. 反射XSS:页面仅把用户输入直接回显在页面或源码中,需要诱使用户点击才能成功;
b. 存储XSS:XSS攻击代码会被存储在服务器中,由于用户可能会主动浏览被攻击页面,此种方法危害较大;
c. DOM XSS:通过修改页面的DOM节点形成XSS,严格来讲也可划为反馈型XSS

图中攻击详情知该用户网站遭受XSS攻击,已被创宇盾拦截。

漏洞危害:

XSS攻击对Web服务器本身虽无直接危害,但是它借助网站进行传播,对网站用户进行攻击,窃取网站用户账号信息等,从而也会对网站产生较严重的危害。XSS攻击可导致以下危害:

钓鱼欺骗、网站挂马、身份盗用、盗取网站用户信息、垃圾信息发送、XSS蠕虫等。

防御措施:

  1. 对重要的Cookie字段使用HttpOnly参数;

  2. 检查所有用户可控输入。对所有的输入点进行严格的检查,过滤或拦截所有不符合当前语境的输入;

  3. 检查所有用户输入的输出点。因为XSS最终攻击是发生在输出点,因此需要分析出用户输入数据的所有输出点的环境,是输入在HTML标签中,还是HTML属性、script标签、事件、CSS位置中,针对不同的输出位置,制定不同的转义或过滤规则;

  4. 处理富文本。在文章、论坛等需要用到富文本的地方,需要特别注意富文本与XSS的区分,严格禁止所有的危险标签及“事件”,原则上应当使用白名单过滤标签、事件及属性。

敏感文件访问

网站中存在一些敏感信息的文件,如配置文件、数据库、备份文件等,由于管理员和开发者的失误,导致这些文件可以让任何人访问。

图中攻击详情知该用户网站遭受敏感文件访问攻击,已被创宇盾拦截。

漏洞危害:

敏感文件能通过URL直接访问。

防御措施:

  1. 检查网站目录下是否存在敏感的文件(如打包的网站源码备份、数据库备份),以及是否可以直接通过URL访问;

  2. 网站程序在调用读取、下载文件的函数时,检查是否可以下载任意文件。

远程命令

当网站程序中需要调用系统命令,并且调用的命令可通过外部输入来控制,就存在命令执行漏洞。

图中攻击详情知该用户网站遭受远程命令攻击,已被创宇盾拦截。

漏洞危害:

没有对代码中可执行的特殊函数入口做过滤,导致客户端可以提交恶意构造语句提交,并交由服务器端执行,常见的系统调用函数,如PHP的system、exec、shell_exec等函数。黑客利用命令执行漏洞即可控制操作系统。

防御措施:

  1. 建议假定所有输入都是可疑的,尝试对所有输入提交可能执行命令的构造语句进行严格的检查或者控制外部输入,系统命令执行函数的参数不允许外部传递;

  2. 不仅要验证数据的类型,还要验证其格式、长度、范围和内容;

  3. 不要仅仅在客户端做数据的验证与过滤,关键的过滤步骤在服务端进行。

  4. 对输出的数据也要检查,数据库里的值有可能会在一个大网站的多处都有输出,即使在输入做了编码等操作,在各处的输出点时也要进行安全检查;

  5. 在发布应用程序之前测试所有已知的威胁。

恶意扫描

扫描工具频繁对网站发起HTTP请求,占用了大量的网站资源的这类行为。

图中攻击详情知该用户网站遭受恶意扫描攻击,已被创宇盾拦截。

漏洞危害:

  1. 大量恶意扫描占用服务器系统资源;

  2. 恶意扫描能够快速发现目标网站漏洞,进而入侵。

代码执行

代码执行漏洞是指应用程序对传入命令的参数过滤不严导致恶意攻击值能控制最终执行的命令,进而入侵系统,造成严重破坏的高危漏洞。

图中攻击详情知该用户网站遭受代码执行攻击,已被创宇盾拦截。

漏洞危害:

利用这个漏洞,攻击者可以执行任意代码。

防御措施:

  1. 严格检查程序参数,特别是

    “&”,“&&”,“|”,“||”,”eval”,”execute” 这类参数;

  2. 在代码中去除 system 等直接命令行执行的函数,或者禁止把通过外部传入的参数传入到该类可执行函数的参数中;

  3. 如果使用的是第三方建站程序,务必升级到最新版本。

恶意采集

恶意蜘蛛,恶意爬虫数据爬取行为,可能导致网站并发量上升,访客体验下降,商业数据泄露等风险。

图中攻击详情知该用户网站遭受恶意采集攻击,已被创宇盾拦截。

特殊攻击

利用特定APP的漏洞发起的攻击,比如discuz、dedeCMS,phpCMS等应用的系列漏洞。特殊应用漏洞被利用容易导致网站被getshell、数据泄露等问题,危害较大。

图中攻击详情知该用户网站遭受特殊攻击,已被创宇盾拦截。

其他攻击

除开以上几种具体攻击的其他恶意攻击拦截,包括智能限速拦截、恶意代理IP拦截、恶意IDC IP拦截、CC工具攻击拦截等。

图中攻击详情知该用户网站遭受其他类型攻击,已被创宇盾拦截。

手把手教你查看网站遭受到的Web应用攻击类型的更多相关文章

  1. 手把手教你从ESXI部署到vSphere web Client管理控制

    作为实验环境,一台物理机即可 既然是实验环境,那么首先把这个物理机装成ESXI6.5的宿主机并配置网络系统 第二步骤就是在ESXI上面导入OVF文件,注册一台虚机,作为数据管理中心 第三步骤就是基于这 ...

  2. Github Pages(io) + 域名重定向 (手把手教你搭建个人网站)

    好歹也成为了在读phd的人,拥有个人网站是个有排面有很必要的事儿~ 在这里利用Github Pages + 域名重定向,实现个人网站的光速搭建~ 1.0 Github Repositories 首先你 ...

  3. 手把手教你做个人 app

    我们都知道,开发一个app很大程度依赖服务端:服务端提供接口数据,然后我们展示:另外,开发一个app,还需要美工协助切图.没了接口,没了美工,app似乎只能做成单机版或工具类app,真的是这样的吗?先 ...

  4. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(四)-使用Travis自动部署Hexo(2)

    前言 前面一篇文章介绍了Travis自动部署Hexo的常规使用教程,也是个人比较推荐的方法. 前文最后也提到了在Windows系统中可能会有一些小问题,为了在Windows系统中也可以实现使用Trav ...

  5. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(三)-使用Travis自动部署Hexo(1)

    前言 前面两篇文章介绍了在github上使用hexo搭建博客的基本环境和hexo相关参数设置等. 基于目前,博客基本上是可以完美运行了. 但是,有一点是不太好,就是源码同步问题,如果在不同的电脑上写文 ...

  6. 手把手教从零开始在GitHub上使用Hexo搭建博客教程(一)-附GitHub注册及配置

    前言 有朋友问了我关于博客系统搭建相关的问题,由于是做开发相关的工作,我给他推荐的是使用github的gh-pages服务搭建个人博客. 推荐理由: 免费:github提供gh-pages服务是免费的 ...

  7. 30分钟手把手教你学webpack实战

    30分钟手把手教你学webpack实战 阅读目录 一:什么是webpack? 他有什么优点? 二:如何安装和配置 三:理解webpack加载器 四:理解less-loader加载器的使用 五:理解ba ...

  8. 【转】手把手教你把Vim改装成一个IDE编程环境(图文)

    手把手教你把Vim改装成一个IDE编程环境(图文) By: 吴垠 Date: 2007-09-07 Version: 0.5 Email: lazy.fox.wu#gmail.com Homepage ...

  9. 手把手教你用动软.NET代码生成器实例教程

    动软实战攻略 手把手教你用动软 文档编号:20110421 版权所有 © 2004-2011 动软 在线帮助:http://help.maticsoft.com 目录   一.        产品介绍 ...

随机推荐

  1. 一、初识Spring Boot框架

    一.搭建Spring Boot环境 1.选择Project,选择Spring Initializr 2.选择Sdk与默认url 3.点击 Next 4.修改一下Group信息和Artifacet,Ne ...

  2. LC 357. Count Numbers with Unique Digits

    Given a non-negative integer n, count all numbers with unique digits, x, where 0 ≤ x < 10n. Examp ...

  3. C++的学习笔记1

    一:      为了惯例具有指针成员的类,必须定义三个复制控制成员:复制构造函数.赋值操作符和析构函数.  复制构造函数分配新元素并从被复制对象处复制值,赋值操作符撤销所保存的原对象并从右操作数向左操 ...

  4. SQLSERVER大批量数据快速导入Redis

    目的 把单表近5千万的某单个字段导入到Redis,作为一个list存储. 方案一: 使用sqlcmd工具(sqlserver自带),直接生成命令在Redis-cli中执行. 方案一. 使用sqlcmd ...

  5. 阶段3 3.SpringMVC·_03.SpringMVC常用注解_3 PathVariable注解

    请求地址都一样,根据不同的请求方式,最终让不同的方法去执行.这就是restfull的风格 如果有两个查询都是get的.那么当前访问 满足条件的就是两个. 用一个占位符 {id} 演示PathVaria ...

  6. 重启 hdfs and yarn datanode

    1- start-all.sh and stop-all.sh: Used to start and stop hadoop daemons all at once. Issuing it on th ...

  7. 061. Rotate List

    题目链接:https://leetcode.com/problems/rotate-list/description/ Example 1: Input: 1->2->3->4-&g ...

  8. Django模板系统-标签Tags

    for <ul> {% for user in user_list %} <li>{{ user.name }}</li> {% endfor %} </ul ...

  9. spring 给容器中注册组件的几种方式

    1.@Bean 导入第三方的类或包的组件 2.包扫描+组件的标注注解(@ComponentScan: @Controller,@service,@Reponsitory,@Componet), 自己写 ...

  10. 从STL文件到网格拓扑

    原文链接 STL文件是什么 STL文件是网格文件的一种格式,分为二进制和文本两种类型.具体来讲,它定义了一群三角面片,比如下面是一个文本的STL示例: solid geometryplusplus f ...