网络安全-攻击流程-应用层
应用层攻击针对OSI模型的第七层(应用层),主要利用协议漏洞、业务逻辑缺陷或用户交互弱点,直接威胁Web应用、API、数据库等服务。以下是常见应用层攻击类型及其流程,以及防御措施:
1. SQL注入(SQL Injection)
攻击流程:
- 漏洞探测:攻击者向输入字段(如登录框、搜索栏)提交试探性SQL语句(如
' OR 1=1 --)。 - 语句构造:若应用未过滤输入,恶意SQL语句被拼接至数据库查询中。
- 数据窃取/篡改:执行非法操作(如提取用户表、删除数据、绕过身份验证)。
防御措施:
- 使用参数化查询(预编译语句)或ORM框架。
- 输入验证与过滤(白名单机制)。
- 部署Web应用防火墙(WAF)拦截恶意语句。
2. 跨站脚本攻击(XSS)
攻击流程:
- 注入恶意脚本:攻击者在用户可输入区域(如评论框)插入JavaScript代码(如
<script>alert('XSS')</script>)。 - 脚本传播:未转义的脚本被服务器存储或直接反射到其他用户页面。
- 用户劫持:受害者浏览器执行恶意脚本,窃取Cookie、重定向到钓鱼网站或劫持会话。
防御措施:
- 对用户输入和输出内容进行HTML转义(如
&转&)。 - 设置HTTP头
Content-Security-Policy (CSP)限制脚本来源。 - 标记Cookie为
HttpOnly和Secure。
3. 跨站请求伪造(CSRF)
攻击流程:
- 构造恶意请求:攻击者创建伪装成合法操作的请求链接(如转账URL)。
- 诱导用户触发:通过钓鱼邮件、恶意网站诱导已登录用户点击链接。
- 执行非授权操作:用户浏览器自动携带Cookie发送请求,执行攻击者预设操作(如修改密码)。
防御措施:
- 使用CSRF Token(服务端生成并验证唯一令牌)。
- 检查请求头
Referer或Origin字段。 - 关键操作需二次验证(如短信验证码)。
4. 应用层DDoS攻击
攻击流程:
- 模拟合法请求:攻击者发送大量高仿真的HTTP请求(如频繁访问登录页、API接口)。
- 资源耗尽:目标服务器因处理请求耗尽CPU、内存或数据库连接。
- 服务瘫痪:正常用户无法访问服务(如电商秒杀场景下的CC攻击)。
防御措施:
- 设置请求频率限制(如IP限速、人机验证)。
- 使用CDN缓存静态内容,减轻源站压力。
- 基于AI/ML的行为分析识别异常流量。
5. 钓鱼攻击(Phishing)
攻击流程:
- 伪造信任:攻击者仿冒合法网站或邮件(如银行、社交平台)。
- 诱导交互:通过链接、附件诱导用户输入敏感信息(账号、密码)。
- 信息窃取:攻击者获取数据后实施进一步攻击(如账户盗用、勒索)。
防御措施:
- 用户教育(识别钓鱼邮件特征)。
- 部署邮件网关过滤恶意链接。
- 启用多因素认证(MFA)降低凭证泄露风险。
6. 文件上传漏洞
攻击流程:
- 上传恶意文件:攻击者上传包含后门(如
.php、.jsp)或恶意脚本的文件。 - 服务器执行:若服务器未限制文件类型或未隔离存储,恶意文件被解析执行。
- 控制服务器:攻击者获取服务器权限,植入木马或窃取数据。
防御措施:
- 限制上传文件类型(白名单校验扩展名和MIME类型)。
- 重命名文件并存储至非Web目录。
- 使用杀毒软件扫描上传内容。
7. API滥用攻击
攻击流程:
- 接口探测:攻击者枚举API端点(如
/api/v1/users)。 - 越权访问:利用未授权访问漏洞(如未鉴权的管理接口)获取敏感数据。
- 数据泄露:批量爬取用户信息或滥用业务逻辑(如无限领取优惠券)。
防御措施:
- 实施严格的身份认证与权限控制(OAuth 2.0、JWT)。
- 限制API调用频率与返回数据量。
- 使用API网关监控和日志分析。
8. 命令注入(Command Injection)
攻击流程:
- 注入系统命令:攻击者通过输入字段注入操作系统命令(如
; rm -rf /)。 - 服务端执行:应用未过滤直接调用系统命令(如调用
ping命令)。 - 系统控制:攻击者执行任意命令,删除文件或反弹Shell。
防御措施:
- 避免直接拼接用户输入到系统命令。
- 使用安全的函数替代(如Python的
subprocess而非os.system)。 - 输入内容严格校验(禁止特殊字符)。
9. 业务逻辑漏洞
攻击流程:
- 逻辑绕过:攻击者利用业务流程缺陷(如修改价格参数、重复提交订单)。
- 非法获利:通过篡改数据或绕过限制实现非预期操作(如0元购、刷积分)。
- 系统失衡:破坏业务规则,导致资金损失或数据混乱。
防御措施:
- 关键业务操作服务端二次校验(如支付金额、库存)。
- 记录并审计用户操作日志。
- 设计业务流程时进行威胁建模。
10. 零日漏洞利用
攻击流程:
- 漏洞发现:攻击者挖掘未公开的应用程序漏洞(如框架缺陷、配置错误)。
- 编写Exploit:开发利用代码绕过现有防护措施。
- 定向攻击:针对目标发起攻击,获取控制权或窃取数据。
防御措施:
- 定期更新应用和依赖库(如Java Log4j漏洞修复)。
- 参与漏洞赏金计划,提前发现潜在风险。
- 部署运行时应用自我保护(RASP)技术。
通用防御策略
- 纵深防御:结合WAF、IDS/IPS、日志监控等多层防护。
- 安全开发:遵循安全编码规范(如OWASP Top 10)。
- 定期渗透测试:模拟攻击检测漏洞。
- 最小权限原则:限制应用和用户的访问权限。
应用层攻击隐蔽性强且危害直接,需通过技术防护、流程管控和用户教育综合应对。
相关文章:
网络安全-攻击流程-应用层
应用层攻击针对OSI模型的第七层(应用层),主要利用协议漏洞、业务逻辑缺陷或用户交互弱点,直接威胁Web应用、API、数据库等服务。以下是常见应用层攻击类型及其流程,以及防御措施: 1. SQL注入(SQ…...
java八股文-spring
目录 1. spring基础 1.1 什么是Spring? 1.2 Spring有哪些优点? 1.3 Spring主要模块 1.4 Spring常用注解 1.5 Spring中Bean的作用域 1.6 Spring自动装配的方式 1.7 SpringBean的生命周期 1.8 多级缓存 1.9 循环依赖? 1 .8.1 原因 1.8…...
Jvascript网页设计案例:通过js实现一款密码强度检测,适用于等保测评整改
本文目录 前言功能预览样式特点总结:1. 整体视觉风格2. 密码输入框设计3. 强度指示条4. 结果文本与原因说明 功能特点总结:1. 密码强度检测2. 实时反馈机制3. 详细原因说明4. 视觉提示5. 交互体验优化 密码强度检测逻辑Html代码Javascript代码 前言 能满…...
【Scrapy】Scrapy教程2——工作原理
文章目录 数据流组件引擎Engine调度器Scheduler下载器Downloader爬虫Spiders项目管道Item Pipeline下载器中间件Downloader Middlewares爬虫中间件Spider Middlewares 在学习Scrapy前,我们需要先了解其架构和工作原理,这样才能很好的去使用Scrapy。 Scra…...
探索 DeepSeek:AI 领域的璀璨新星
在人工智能飞速发展的当下,DeepSeek 作为行业内的重要参与者,正以独特的技术和广泛的应用备受瞩目。 DeepSeek 是一家专注于实现 AGI(通用人工智能)的中国人工智能公司。它拥有自主研发的深度学习框架,能高效处理海量…...
宏基传奇swift edge偶尔开机BIOS重置
电脑是acer swift edge, SFA16-41,出厂是Win11系统, BIOS版本出厂1.04,更新到了目前最新1.10。 问题是 会偶尔开机ACER图标变小跑到屏幕左上方,下次开机BIOS就会被重置,开机等待很长时间。 因为是偶尔现象的…...
自动驾驶---如何打造一款属于自己的自动驾驶系统
在笔者的专栏《自动驾驶Planning决策规划》中,主要讲解了行车的相关知识,从Routing,到Behavior Planning,再到Motion Planning,以及最后的Control,笔者都做了相关介绍,其中主要包括算法在量产上…...
【C语言】第一期——数据类型变量常量
目录 1 字面量 2 整数类型 2.1 整数类型的取值范围 2.1.1 sizeof 运算符 2.2 GB、MB、KB、B之间的关系 2.3 定义整数类型的变量并打印 2.4 整数类型代码演示 3 浮点类型 3.1 浮点类型的取值范围 3.2 定义浮点类型变量并打印 3.3 保留2位小数点 4 char字符型 4.1…...
04运维实用篇(D4_日志)
目录 一、简介 二、代码中使用日志工具记录日志 1. 操作步骤 步骤1:添加日志记录操作 步骤2:设置日志输出级别 步骤3:设置日志组 2. 知识小结 三、优化日志对象创建代码 1. 实例 2. 总结 四、日志输出格式控制 1. 实例 2. 总结 …...
centos部署open-webui
提示:本文将简要介绍一下在linux下open-webui的安装过程,安装中未使用虚拟环境。 文章目录 一、open-webui是什么?二、安装流程1.openssl升级2.Python3.11安装3.sqlite安装升级4.pip 下载安装open-webui 总结 一、open-webui是什么? Open W…...
UE求职Demo开发日志#32 优化#1 交互逻辑实现接口、提取Bag和Warehouse的父类
1 定义并实现交互接口 接口定义: // Fill out your copyright notice in the Description page of Project Settings.#pragma once#include "CoreMinimal.h" #include "UObject/Interface.h" #include "MyInterActInterface.generated.h…...
Visonpro 检测是否有缺齿
一、效果展示 二、上面是原展开工具CogPolarUnwrapTool; 第二种方法: 用Blob 和 CogCopyRegionTool 三、 用预处理工具 加减常数,让图片变得更亮点 四、圆展开工具 五、模板匹配 六、代码分解 1.创建集合和文子显示工具 CogGraphicCollec…...
第1章大型互联网公司的基础架构——1.6 RPC服务
你可能在1.1节的引言中注意到业务服务层包括HTTP服务和RPC服务,两者的定位不一样。一般来说,一个业务场景的核心逻辑都是在RPC服务中实现的,强调的是服务于后台系统内部,所谓的“微服务”主要指的就是RPC服务;而HTTP服…...
今日AI和商界事件(2025-02-15)
根据2025年2月15日的科技动态,以下是今日AI领域的重要事件及相关进展总结: 1. DeepSeek日活突破3000万,开源生态加速AI普惠 里程碑意义:开源大模型DeepSeek宣布日活跃用户数突破3000万,其R1模型凭借开源策略和低成本优…...
算法题(69):搜索插入位置
审题: 需要我们在有序数组中找到等于target值的元素的下标若没有则返回target按顺序会插入的位置的索引 思路 : 我们可以使用二分查找的方法 方法一:二分查找 和普通的二分查找不同,本题若没有找到就需要返回它按顺序插入的位置的…...
在 Linux 系统中,tc(Traffic Control) QoS 常用命令简介
在 Linux 系统中,tc(Traffic Control)命令是一个强大的工具,用于配置和管理网络流量控制。以下是 tc 命令的常用功能和基本用法: 1. 查看当前队列规则 使用以下命令查看指定网络接口上的队列规则: tc qd…...
如何画产品功能图、结构图
功能图的类型 常见的功能图包括数据流图、用例图、活动图、状态图、类图、组件图、部署图等等,不同的应用场景和目标下,需要确定不同的功能图类型。 数据流图 用例图 状态图 类图 组件图 组件图是由软件系统、组件和组件之间的关系组成的图形…...
4090单卡挑战DeepSeek r1 671b:尝试量化后的心得的分享
引言: 最近,DeepSeek-R1在完全开源的背景下,与OpenAI的O1推理模型展开了激烈竞争,引发了广泛关注。为了让更多本地用户能够运行DeepSeek,我们成功将R1 671B参数模型从720GB压缩至131GB,减少了80%ÿ…...
SpringBoot速成(12)文章分类P15-P19
1.新增文章分类 1.Postman登录不上,可以从头registe->login一个新的成员:注意,跳转多个url时,post/get/patch记得修改成controller类中对应方法上写的 2.postman运行成功: 但表中不更新:细节有问题: c是…...
C++17中的clamp函数
一、std::clamp() 其实在前面简单介绍过这个函数,但当时只是一个集中的说明,为了更好的理解std::clamp的应用,本篇再详细进行阐述一次。std::clamp在C17中其定义的方式为: template< class T > constexpr const T& cl…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...
学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配
AI3D视觉的工业赋能者 迁移科技成立于2017年,作为行业领先的3D工业相机及视觉系统供应商,累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成,通过稳定、易用、高回报的AI3D视觉系统,为汽车、新能源、金属制造等行…...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
JAVA后端开发——多租户
数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
《C++ 模板》
目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板,就像一个模具,里面可以将不同类型的材料做成一个形状,其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式:templa…...
怎么开发一个网络协议模块(C语言框架)之(六) ——通用对象池总结(核心)
+---------------------------+ | operEntryTbl[] | ← 操作对象池 (对象数组) +---------------------------+ | 0 | 1 | 2 | ... | N-1 | +---------------------------+↓ 初始化时全部加入 +------------------------+ +-------------------------+ | …...
【免费数据】2005-2019年我国272个地级市的旅游竞争力多指标数据(33个指标)
旅游业是一个城市的重要产业构成。旅游竞争力是一个城市竞争力的重要构成部分。一个城市的旅游竞争力反映了其在旅游市场竞争中的比较优势。 今日我们分享的是2005-2019年我国272个地级市的旅游竞争力多指标数据!该数据集源自2025年4月发表于《地理学报》的论文成果…...
