网络安全常见漏洞类型总结
网络安全常见漏洞类型总结
1、弱口令
原因: 与个人习惯和安全意识相关,为了避免忘记密码,使用一个非常容易记住的密码,或者是直接采用系统的默认密码等。
危害: 通过弱口令,攻击者可以进入后台修改资料,进入金融系统盗取钱财,进入OA系统可以获取企业内部资料,进入监控系统可以进行实时监控等。
防御:
设置密码通常遵循以下原则:
(1)不使用空口令或系统缺省的口令;
(2)口令长度不小于8 个字符;
(3)口令不应该为连续的某个字符或重复某些字符的组合。
(4)口令应该为以下四类字符的组合:大写字母(A-Z)、小写字母(a-z)、数字(0-9)和特殊字符。每类字符至少包含一个。如果某类字符只包含一个,那么该字符不应为首字符或尾字符。
(5)口令中不应包含特殊内容:如本人、父母、子女和配偶的姓名和出生日期、纪念日期、登录名、E-mail 地址等等与本人有关的信息,以及字典中的单词。
(6)口令不应该为用数字或符号代替某些字母的单词。
(7)口令应该易记且可以快速输入,防止他人从你身后看到你的输入。
(8)至少90天内更换一次口令,防止未被发现的入侵者继续使用该口令。
2、SQL注入
原因: 当Web应用向后台数据库传递SQL语句进行数据库操作时,如果对用户输入的参数没有经过严格的过滤处理,那么攻击者就可以构造特殊的SQL语句,直接输入数据库引擎执行,获取或修改数据库中的数据。SQL注入的两个关键点:1、用户能控制输入的内容;2、Web应用把用户输入的内容带入到数据库中执行。
危害: 盗取网站的敏感信息、绕过网站后台认证、借助SQL注入获取系统权限。
防御:
(1)采用sql语句预编译和绑定变量 #{name};
(2)使用正则表达式过滤传入的参数;
(3)过滤字符串,如insert、select、update、and、or等。
3、文件上传
原理: 在文件上传的功能处,若服务端未对上传的文件进行严格验证和过滤,导致攻击者上传恶意的脚本文件时,就有可能获取执行服务端命令的能力,称为文件上传漏洞。
原因: 服务器的错误配置、开源编码器漏洞、本地上传上限制不严格被绕过、服务器端过滤不严格被绕过。
危害: 上传恶意文件、getshell、控制服务器。
防御: 白名单判断文件后缀是否合法、文件上传的目录设置为不可执行、判断文件类型、使用随机数改写文件名和文件路径、单独设置文件服务器的域名、使用安全设备防御。
4、XSS(跨站脚本攻击)
取名: XSS(Cross Site Scripting):跨站脚本攻击,为了不和层叠样式表(Cascading Style Sheets)的缩写CSS混合,所以改名为XSS。
XSS原理: 攻击者在网页中嵌入客户端脚本(通常是JavaScript恶意脚本),当用户使用浏览器加载被嵌入恶意代码的网页时,恶意脚本代码就会在用户的浏览器执行,造成跨站脚本的攻击。
危害: 盗取Cookie、网络钓鱼、植马挖矿、刷流量、劫持后台、篡改页面、内网扫描、制造蠕虫等。
防御: 对用户的输入进行合理验证、对特殊字符(如 <、>、’、”等)验证。
5、CSRF(跨站请求伪造)
原理: CSRF(Cross-Site Request Forgery),跨站请求伪造。攻击者利用目标用户的身份,执行某些非法的操作。跨站点的请求,请求的来源可以是非本站;请求是伪造的,请求的发出不是用户的本意。
危害: 篡改目标站点上的用户数据、盗取用户隐私数据、作为其他攻击的辅助攻击手法、传播 CSRF 蠕虫。
防御: 检查HTTP Referer是否是同域、限制Session Cookie的生命周期,减少被攻击的概率、使用验证码、使用一次性token。
6、SSRF(服务器端请求伪造)
原理: SSRF(Server-Side Request Forgery):服务器端请求伪造。该漏洞通常由攻击者构造的请求传递给服务端,服务器端对传回的请求未作特殊处理直接执行而造成的。
危害: 扫描内网(主机、端口)、向内部任意主机的任意端口发送精心构造的payload、攻击内网的Web应用、读取任意文件、拒绝服务攻击。
防御:
(1)统一错误信息,避免用户根据错误信息来判断远程服务器的端口状态;
(2)限制请求的端口为http的常用端口,比如:80、443、8080等;
(3)禁用不需要的协议,仅允许http和https;
(4)根据请求需求,可以将特定域名加入白名单,拒绝白名单之外的请求;
(5)后台代码对请求来源进行验证。
7、XXE(XML外部实体注入)
原理: XXE(XML External Entity Injection),即XML外部实体注入。XXE漏洞发生在应用程序解析XML输入时,没有禁止外部实体的加载,导致用户可以控制外部的加载文件,造成XXE漏洞。
危害: 任意文件读取、内网端口探测、拒绝服务攻击、钓鱼。
防御:
(1)使用开发语言提供的禁用外部实体的方法;
(2)过滤用户提交的XML数据,过滤关键词:<!DOCTYPE、<!ENTITY SYSTEM、PUBLIC。
8、RCE(远程命令/代码执行)
RCE(Remot Command/Code Execute),远程命令/代码执行。
远程命令执行: 用户可以控制系统命令执行函数的参数,也称命令注入;
远程代码执行: 用户输入的参数可以作为代码执行,也称代码注入;
命令执行可以看作是一种特殊的代码执行,代码执行相对会更加灵活。
原理: 应用程序中有时会调用一些系统命令函数,比如php中使用system、exec、shell_exec等函数可以执行系统命令,当攻击者可以控制这些函数中的参数时,就可以将恶意命令拼接到正常命令中,从而造成命令执行攻击。
危害: 命令执行漏洞,属于高危漏洞之一,也可以算是一种特殊的代码执行。
原因: 用户可以控制输入的内容、用户输入的内容被当作命令执行。
防御方式:
(1)尽量不要使用命令执行函数;
(2)客户端提交的变量在进入执行命令函数方法之前,一定要做好过滤,对敏感字符进行转义;
(3)在使用动态函数之前,确保使用的函数是指定的函数之一;
(4)对PHP语言来说,不能完全控制的危险函数最好不要使用。
9、反序列化漏洞
原因: 程序没有对用户输入的反序列化字符串进行检测,导致反序列化过程可以被恶意控制,进而造成代码执行、getshell等一系列安全问题。
危害:
(1)不安全的反序列化,主要造成的危害是远程代码执行;
(2)如果无法远程代码执行,也可能导致权限提升、任意文件读取、拒绝服务攻击等。
防御方式:
(1)应该尽量避免用户输入反序列化的参数;
(2)如果确实需要对不受信任的数据源进行反序列化,需要确保数据未被篡改,比如使用数字签名来检查数据的完整性;
(3)严格控制反序列化相关函数的参数,坚持用户所输入的信息都是不可靠的原则;
(4)对于反序列化后的变量内容进行检查,以确定内容没有被污染;
(5)做好代码审计相关工作,提高开发人员的安全意识。
10、组件未更新漏洞
原因: 组件未更新漏洞是指在应用程序或系统中使用了已知存在安全漏洞的第三方组件或库。攻击者可能利用组件的这些漏洞来对系统进行攻击与入侵。
修复方式:
(1)检查和更新:记录并评估组件并及时替换已知漏洞组件。
(2)监视漏洞:定期滚动使用组件,维护适当的升级计划,及时发现漏洞和补丁。
(3)安装新版本:下载和安装第三方组件的最新版本,通常这些版本都修复了之前版本的漏洞。
(4)代码审计:通过对组件源代码的分析和审核来检查是否存在其他漏洞,并为必要更新提供数据支持。
(5)网络隔离:可以使用网络隔离技术或虚拟容器来减少外部组件对应用程序或系统的影响。
11、未授权访问漏洞
**原因:**应用程序没有正确实施权限控制,过度宽松的文件和目录访问控制,或者允许攻击者访问并执行不应该被许可的敏感操作。
**修复方式:**修改应用程序代码,增加身份认证和权限控制机制、及时更改默认密码等。
相关文章:
网络安全常见漏洞类型总结
网络安全常见漏洞类型总结 1、弱口令 原因: 与个人习惯和安全意识相关,为了避免忘记密码,使用一个非常容易记住的密码,或者是直接采用系统的默认密码等。 危害: 通过弱口令,攻击者可以进入后台修改资料&a…...
C++自制小游戏《屠夫躲猫猫》
大家好,我是派蒙,我写了一个《屠夫躲猫猫》的游戏,下面是源代码: #include <stdio.h> #include <conio.h> #include<bits/stdc.h> #include<windows.h> using namespace std; string ID[1001]; string N…...
LabVIEW在高级结构监测中的创新应用
LabVIEW在高级结构监测中的创新应用 LabVIEW作为一个强大的系统设计平台,其在基于BOTDA(光时域反射分析)技术的结构监测中发挥着核心作用。利用LabVIEW的高效数据处理能力和友好的用户界面,开发了一个先进的监测系统。该系统专门…...
关于GitHub的git推送命令时报错密码授权失败问题
参考文章:https://cloud.tencent.com/developer/article/2362326?areaId106001 问题描述 当新建GitHub仓库后,通过git clone xxxx,命令克隆仓库到本地,想要提交修改内容,此时会报错443链接远程仓库失败,解…...
WPF Blend for visual studio使用
Blend for visual studio介绍 VS自带的Blend for visual studio是专门用来做WPF、Metro等的界面设计的可视化工具,其功能和PS类似。其目的让做界面和后台的程序分开,能快速绘制形状和路径、修改对象样式、动态显示对象(动画)、显示数据等高级操作。VS与B…...
云卷云舒:【实战篇】Redis迁移
1. 简介 Remote Dictionary Server(Redis)是一个由Salvatore Sanfilippo写的key-value存储系统,是一个开源的使用ANSIC语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 2. 迁移原理 redis-sh…...
[C#]yolov8-onnx在winform部署手势识别模型
【官方框架地址】 https://github.com/ultralytics/ultralytics.git 【算法介绍】 YOLOv8 是一个 SOTA 模型,它建立在以前 YOLO 版本的成功基础上,并引入了新的功能和改进,以进一步提升性能和灵活性。具体创新包括一个新的骨干网络、一个新…...
【uniapp】 uniapp 修改tabBar图标大小和navigationBar字体大小
app.vue文件中修改 //导航栏字体 .uni-page-head .uni-page-head__title{font-size: 30rpx !important; } // tab图标 .uni-tabbar .uni-tabbar__icon {width: 25rpx !important;height: 25rpx !important; }大佬地址:https://blog.csdn.net/AAAXiaoApple/article/…...
Visual Studio 2017 + opencv4.6 + contribute + Cmake(Aruco配置版本)指南
之前配置过一次这个,想起这玩意就难受,贼难配置。由于要用到里面的一个库,不得已再进行配置。看网上的博客是真的难受,这写一块,那里写一块,乱七八糟,配置一顿发现写的都是错的,还得…...
自定义事件总线
文章目录 什么是自定义事件总线具体实现思路分析定义结构实现 on实现 emit实现 off 源码 什么是自定义事件总线 自定义事件总线属于一种观察着模式,其中包括三个角色发布者(Publisher):发出事件(Event)订阅…...
212.【2023年华为OD机试真题(C卷)】堆内存申请(排序和贪心算法-JavaPythonC++JS实现)
🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-堆内存申请二.解题思路三.题解代码Python题解代…...
Flink Watermark和时间语义
Flink 中的时间语义 时间语义: EventTime:事件创建时间;Ingestion Time:数据进入Flink的时间;Processing Time:执行操作算子的本地系统时间,与机器无关。不同的时间语义有不同的应用场合&#x…...
HarmonyOS UI框架简介
HarmonyOS UI框架介绍 HarmonyOSUI框架是一个用于构建跨设备应用的开发框架,它属于HarmonyOS系统架构的上层框架。该框架通过提供一系列的开发模型、声明式UI范式、系统API等,帮助开发者更高效地构建用户界面。 在HarmonyOSUI框架中,开发语…...
编程羔手解决Maven引入多个版本的依赖包,导致包冲突了
最近升级了些依赖发现有个hutool的方法老报错,java.lang.NoSuchMethodError: cn.hutool.core.util.ObjectUtil.defaultIfNull(Ljava/lang/Object;Ljava/util/function/Supplier;) 在 Maven 项目中,当不同的依赖模块引入 Hutool 的不同版本时,…...
C#,入门教程(08)——基本数据类型及使用的基础知识
上一篇: C#,入门教程(07)——软件项目的源文件与目录结构https://blog.csdn.net/beijinghorn/article/details/124139947 数据类型用于指定数据体(DataEntity,包括但不限于类或结构体的属性、变量、常量、函数返回值)…...
分类预测 | Matlab实现DBO-SVM蜣螂算法优化支持向量机多特征分类预测
分类预测 | Matlab实现DBO-SVM蜣螂算法优化支持向量机多特征分类预测 目录 分类预测 | Matlab实现DBO-SVM蜣螂算法优化支持向量机多特征分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现DBO-SVM蜣螂算法优化支持向量机多特征分类预测(完整…...
计算机二级Python选择题考点——公共基础部分
计算机完成一条指令所花费的时间称为一个指令周期。(指令周期越短,指令执行就越快)顺序程序不具有并发性。(具有顺序性、封闭性和可再现性)结构化程序设计强调程序的易读性。系统软件:操作系统、编译程序、数据库管理系统 应用软件:杀毒软件在…...
《微机原理与应用》期末考试题库(附答案解析)
第1章 微型计算机概述 1.微型计算机的硬件系统包括___A _____。 A.控制器、运算器、存储器和输入输出设备 B.控制器、主机、键盘和显示器 C.主机、电源、CPU和输入输出 D.CPU、键盘、显示器和打印机 2.微处…...
如何在Android Glide中结合使用CenterCrop和自定义圆角变换(图片部分圆角矩形)
如何在Android Glide中结合使用CenterCrop和自定义圆角变换(图片部分圆角矩形) 在Android开发中,使用Glide加载图片时,我们经常需要对图片进行特定的处理,比如裁剪和圆角变换,特别是一些设计稿,…...
华为机考-手拍球游戏
【手拍手计算次数和总数】游戏规则:左手和右手拍球初始数为0,首先左手第一次拍球数1下,右手拍球1下,接下来左手在拍球时是上一次左手上一次右手的总和,右手也是上一次左手上一次右手拍球的总和,最后拍球总数…...
【线上问题】两台服务器的时间不一致导致jwt解析错误
目录 一、问题描述二、解决方法 一、问题描述 1.线上生产问题,本地和测试环境均无问题 2.本地和测试由于网关和登录服务均在同一台机器 3.线上的登录服务和网关部署不在一起,登录服务的时间正常,网关服务的服务器时间比实际快5秒 4.登录服务j…...
58.网游逆向分析与插件开发-游戏增加自动化助手接口-游戏菜单文字资源读取的逆向分析
内容来源于:易道云信息技术研究院VIP课 之前的内容:接管游戏的自动药水设定功能-CSDN博客 码云地址(master分支):https://gitee.com/dye_your_fingers/sro_-ex.git 码云版本号:34b9c1d43b512d0b4a3c395b…...
Vue-2、初识Vue
1、helloword小案列 代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>初始Vue</title><!--引入vue--><script type"text/javascript" src"https://cdn.jsdelivr.n…...
机器学习项目标记图像数据 - 安装LabelImg及功能介绍
什么是LabelImg? LabelImg 是一款流行的图像标注工具,主要用于计算机视觉领域。它允许用户为机器学习项目标记图像数据,特别是用于训练目标检测模型。 如何安装LabelImg pip install PyQt5 pip install pyqt5-tools pip install lxml pip …...
12.15 log 122.买卖股票的最佳时机 II,55. 跳跃游戏
122.买卖股票的最佳时机 II class Solution { public:int maxProfit(vector<int>& prices) {int result0;for(int i0;i<prices.size();i){if(i>0&&prices[i]-prices[i-1]>0){resultprices[i]-prices[i-1];}}return result;} }; 这道题贪心贪的时每…...
Redis - 挖矿病毒 db0 库 backup 反复出现解决方案
问题描述 腾讯云的服务器,使用 Docker 部署了 Redis 之后,发现 DB0 中总是出现 4 条 key,分别是 backup01backup02backup03backup04 而自己每次存入 db0 中的数据过一会就会被无缘无故删除掉。 原因分析 挖矿病毒 解决方案 在启动的时候…...
LiveGBS流媒体平台GB/T28181常见问题-国标编号是什么设备编号和通道国标编号标记唯一的摄像头|视频|镜头通道
LiveGBS国标GB28181中国标编号是什么设备编号和通道国标编号标记唯一的摄像头|视频|镜头通道 1、什么是国标编号?2、国标设备ID和通道ID3、ID 统一编码规则4、搭建GB28181视频直播平台 1、什么是国标编号? 国标GB28181对接过程中,可能有的小…...
Unity ShaderGraph 技能冷却转圈效果
Unity ShaderGraph 技能冷却转圈效果 前言项目场景布置代码编写ShaderGraph 连线总结 参考 前言 遇到一个需求,要展示技能冷却的圆形遮罩效果。 项目 场景布置 代码编写 Shader核心的就两句 // 将uv坐标系的原点移到纹理中心 float2 uv i.uv - float2(0.5, 0…...
C++上位软件通过Snap7开源库访问西门子S7-1200/S7-1500数据块的方法
前言 本人一直从事C上位软件开发工作较多,在之前的项目中通过C访问西门子PLC S7-200/S7-1200/S7-1500并进行数据交互的应用中一直使用的是ModbusTCP/ModbusRTU协议进行。Modbus上位开源库采用的LibModbus。经过实际应用发现Modbus开源库单次发送和接受的数据不能超过…...
如何正确安装Axure插件?详细步骤分享
产品经理在使用Axure导出html文件时,如果选择“完成后打开浏览器”,浏览器往往无法识别。此时,我们需要使用Axure官方谷歌浏览器插件直接访问浏览器中的本地html项目,否则我们需要上传到AxureCloud或使用软件本身的预览功能。接下…...
移动互联网开发找工作/武汉seo结算
综观多家企业的ERP实施情况,笔者发现有一个比较大的误区,即都忽视了计划在工作中的作用。有些企业虽然意识到计划的重要性,但是在实际工作中会因为种种原因无法落实到实处。笔者认为,计划是ERP项目中的灵魂,企业用户应…...
长沙县 网站建设/舆情危机公关公司
今日总结: 这两天都在为准备年货而忙碌着,处理各种事情。前段时间不是笔记本电脑不能连接手机开启的热点迈,现在自己突然又可以连接上了。不知道啥原因,估计是有时候手机网络信号不好,或者电脑系统不稳定的缘故造成的吧…...
三乡网站建设/广西seo搜索引擎优化
MySQL的安装 (4,5,6可省略)声明:CentOS版本为7.6,安装的MySQL版本为8.0.171. 首先要卸载掉本机自带的mysql相关,包括MariaDB。rpm -pa | grep mysql #将搜到的结果使用rm -rf 文件名 删除掉,没有就跳过rpm -pa | grep mariadb #将…...
中学生网站源码/媒体宣传推广方案
硬件工程师跟结构工程师交互的文件,就只有结构图了,也就是PCB板框,这类文件一般是由AutoCAD导出的DWG、DXF文件,当然,也有只给你3D图的(如SolidWorks、Pro-E等),让你自己导。 这里以…...
商业网站导航怎么做/如何进行网站推广
蓝桥杯 分巧克力 python 题目标题 儿童节那天有K位小朋友到小明家做客。小明拿出了珍藏的巧克力招待小朋友们。 小明一共有N块巧克力,其中第i块是Hi x Wi的方格组成的长方形。 为了公平起见,小明需要从这 N 块巧克力中切出K块巧克力分给小朋友们。切…...
学做美食的视频网站/如何做一个网页
垃圾回收1 内存分配 垃圾回收 调用垃圾回收器 对象终结 调用垃圾回收器 System.gc()和Runtime.getRuntime().gc()这两个方法 不建议程序调用此方法 对象终结 Object上的方法: protected void finalize() throws Throwab…...