网络安全练气篇——OWASP TOP 10

2024-06-14 09:36
文章标签 top 网络安全 owasp 练气

本文主要是介绍网络安全练气篇——OWASP TOP 10,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1、什么是OWASP?

OWASP(开放式Web应用程序安全项目)是一个开放的社区,由非营利组织 OWASP基金会支持的项目。对所有致力于改进应用程序安全的人士开放,旨在提高对应用程序安全性的认识。
其最具权威的就是“10项最严重的Web 应用程序安全风险列表” ,总结并更新Web应用程序中最可能、最常见、最危险的十大漏洞,是开发、测试、服务、咨询人员应知应会的知识。
最重要的版本
应用程序中最严重的十大风险

2、TOP   10   分别是哪些?

1. SQL注入

攻击方式

通过恶意字符将恶意代码写入数据库,使其运行,产生敏感数据泄露,数据库读取,进一步在数据库执行命令

攻击类型

  • 未审计的数据框架
  • 直接使用网址URL直接传递变量
  • 未过滤的特殊字符串
  • SQL错误回显
  • SQL注入
  • 获取敏感信息进一步在服务器执行命令,实现接管服务器的目的

防护措施

  • 关闭SQL错误回显
  • 对输入的字符做转译处理
  • 对前端输入做白名单验证(长度,类型)
  • 使用一个成熟的WAF
  • 白盒审计(代码审计)
  • SQL服务运行于专门的账号,并给予最小权限

2. 失效的身份认证

攻击方式

攻击者利用网站中身份认证缺陷,以此来获取高权限,攻击服务器

攻击类型

  • 弱口令
  • 盗用身份和账号
  • 修改网络数据包以此获取用户账号权限
  • 网站设计不良,可以绕过登录页面
  • 设计者忘记设置注销登录,使之有机可乘

防护措施

  • 网站的登录页面就使用加密连接
  • 网站应该具体良好的权限控制与管理
  • 网站应该具备超时注销机制

3. 敏感数据泄露

攻击方式

通过扫描发现应用程序有敏感信息

攻击类型

  • 应用人员或者开发人员无意间上传敏感数据到Github,导致网站文件泄露
  • 敏感数据文件设置错误,导致数据库备份文件泄露

防护措施

  • 对于github泄露,定期对仓库进行扫描
  • 对网站应用目录定期扫描

4. XML外部实体(XXE)

攻击方式

当应用程序解析XML文件时包含了对外部实体的的引用,通过构造恶意的XML代码,读取指定的服务器数据或资源。

攻击类型

  • 读取服务器的数据或者资源         /etc/password
  • 读取应用程序源码

防护措施

  • 关闭DTD
  • 禁止外部实体引入

5. 失效的访问控制

攻击方式

没有校验身份,直接导致攻击者绕过权限直接访问

攻击类型

  • 绕过路径,如未读取的参数进行检查,导致路径绕过并进行读取敏感文件操作
  • 权限提升,如未对权限进行检查,导致攻击者变更权限
  • 垂直越权,导致攻击者可以从普通用户权限提升到管理员的用户权限
  • 水平越权,导致攻击者可以从用户a的权限提升到用户b的权限

防护措施

  • 对参数的白名单做过滤
  • 对权限的控制管理重新设计与限制      最小权限
  • 限制下载文件的类型

6. 安全配置错误

攻击方式

攻击者利用错误的配置,访问敏感信息或者提升权限

目录遍历

攻击类型

  • 开发或者维护人员设置了错误的配置,如 python 开发中对于 Django 框架在生产环境启用了 Debug 模式
  • 目录遍历

防护措施

  • 检查文件扩展名
  • 重命名上传文件
  • 控制上传文件的权限,如关闭权限
  • 移除不常用的页面,如安装目录文件
  • 移除临时文件,备份文件
  • 不使用常用的、简单的命名规则,防止被猜测
  • 定义白名单

7. 跨站脚本(XSS)

攻击方式

攻击者使用恶意字符嵌入应用程序代码中并运行,盗取应用程序数据

攻击类型

  • 存储型XSS
  • DOM型XSS
  • 反射型XSS

防护措施

  • 验证输入/接收的字符,过滤或者替换非法字符
  • 使用白名单机制

8. 不安全的反序列化

攻击方式

攻击者利用应用程序反序列化功能,构造恶意的反序列化对象攻击应用程序

攻击类型

  • 远程代码执行RCE
  • 注入攻击
  • 越权
  • 远程命令执行

防护措施

  • 对数据对象签名,并作完整检查
  • 数据对象中的数据做严格的类型检查,限制一部分恶意攻击
  • 隔离反序列化操作环境,对序列化和反序列化进行白名单验证
  • 在执行反序列化之前,对用户输入数据执行验证和过滤

9. 使用含有已知漏洞的组件

攻击方式

使用应用程序中的框架、库、组件、工具等已知漏洞攻击,获取高权限或者敏感数据

攻击类型

  • 敏感信息泄露
  • 提升权限
  • 远程代码执行
  • SQL注入
  • 反序列化
  • 配置错误

防护措施

  • 及时更新、修复组件漏洞
  • 移除不再使用的依赖组件

10. 不足的日志记录和监控

攻击方式

对于日志记录的监控不足,导致攻击者攻击系统、应用、盗取数据等操作无法被及时发现和追查

攻击类型

  • 日志不规范
  • 监控告警不及时
  • 日志分析于人员技能缺失

防护措施

  • 规范化的日志设置,提供清晰易读的操作手册,以便于后期阅读和维护
  • 优化监控策略和报警流程,建立完善的规则库,以便于触发相关告警,及时通知相关人员处理
  • 加强人才培训和引进专业人才,安全意识培训,聘请专业经验丰富的加入团队,提高水平

这篇关于网络安全练气篇——OWASP TOP 10的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1060028

相关文章

OWASP十大安全漏洞解析

OWASP(开放式Web应用程序安全项目)发布的“十大安全漏洞”列表是Web应用程序安全领域的权威指南,它总结了Web应用程序中最常见、最危险的安全隐患。以下是对OWASP十大安全漏洞的详细解析: 1. 注入漏洞(Injection) 描述:攻击者通过在应用程序的输入数据中插入恶意代码,从而控制应用程序的行为。常见的注入类型包括SQL注入、OS命令注入、LDAP注入等。 影响:可能导致数据泄

如何做好网络安全

随着互联网技术的飞速发展,网站已成为企业对外展示、交流和服务的重要窗口。然而,随之而来的网站安全问题也日益凸显,给企业的业务发展和用户数据安全带来了巨大威胁。因此,高度重视网站安全已成为网络安全的首要任务。今天我们就来详细探讨网站安全的重要性、面临的挑战以及有什么应对方案。 一、网站安全的重要性 1. 数据安全与用户隐私 网站是企业存储和传输数据的关键平台,包括用户个人信息、

网络安全运维培训一般多少钱

在当今数字化时代,网络安全已成为企业和个人关注的焦点。而网络安全运维作为保障网络安全的重要环节,其专业人才的需求也日益增长。许多人都对网络安全运维培训感兴趣,那么,网络安全运维培训一般多少钱呢?   一、影响网络安全运维培训价格的因素   1. 培训内容的深度和广度   不同的网络安全运维培训课程涵盖的内容有所不同。一些基础的培训课程可能主要涉及网络安全基础知识、常见安全工具的使用等,价

【网络安全】服务基础第二阶段——第二节:Linux系统管理基础----Linux统计,高阶命令

目录 一、Linux高阶命令 1.1 管道符的基本原理 1.2 重定向 1.2.1 输出重定向 1.2.2 输入重定向 1.2.3 wc命令基本用法 1.3 别名 1.3.1 which命令基本语法 1.3.2 alias命令基本语法 1.4 压缩归档tar 1.4.1 第一种:gzip压缩 1.4.2 第二种:bzip压缩 1.5 tar命令 二、VIM编辑器使用

120张网络安全等保拓扑大全

安全意识培训不是一个ppt通吃,不同的场景应该用不同的培训方式和内容http://mp.weixin.qq.com/s?__biz=MzkwNjY1Mzc0Nw==&mid=2247484385&idx=1&sn=92f5e7f3ee36bdb513379b833651711d&chksm=c0e47abdf793f3ab7f4621b64d29c04acc03b45c0fc1eb613c37f3

网络安全(sql注入)

这里写目录标题 一. information_schema.tables 和 information_schema.schemata是information_schema数据库中的两张表1. information_schema.schemata2. information_schema.tables 二. 判断注入类型1. 判断数字型还是字符型注入2. 判断注入闭合是""还是'' 三. 判

PostgreSQL 17即将发布,新功能Top 3

按照计划,PostgreSQL 17 即将在 2024 年 9 月 26 日发布,目前已经发布了第一个 RC 版本,新版本的功能增强可以参考 Release Notes。 本文给大家分享其中 3 个重大的新增功能。 MERGE 语句增强 MERGE 语句是 PostgreSQL 15 增加的一个新功能,它可以在单个语句中实现 INSERT、UPDATE 以及 DELETE 操作,非常适合数据

【网络安全】古典密码体制概述

1. 古典密码体制概述 1.1 定义与历史背景 古典密码体制是指在计算机科学和信息安全技术出现之前的传统加密方法。这些方法主要包括替换和易位两种基本形式。古典密码体制的特点是简单、易用,但安全性不高,容易被破解。在古代,人们使用纸、笔或简单的器械来实现加密和解密操作。 定义:古典密码体制是基于简单数学运算和文字替换的加密方法,包括替代密码和置换密码两大类。历史背景:古典密码的使用可以追溯到古

【网络安全 | 甲方建设】SaaS平台、Jira工具及Jenkins服务器

原创文章,不得转载。 文章目录 SaaS平台友好性 Jira友好性 Jenkins友好性 SaaS平台 SaaS,全称为 “Software as a Service”(软件即服务),是一种基于云计算的软件交付模型。在这种模型中,软件不需要用户在本地安装和维护,而是通过互联网访问和使用。软件通常由服务提供商托管,用户只需通过浏览器或轻量级客户端连接到远程服务器即可使用

PCDN 技术如何保障网络安全(壹)

在当今数字化时代,网络安全成为了至关重要的问题。PCDN(Peer-to-Peer Content Delivery Network)技术在提升内容分发效率的同时,也采取了一系列措施来保障网络安全。 一、加密传输与数据保护 PCDN 技术采用先进的加密算法对传输中的数据进行加密,确保数据在节点之间传输的安全性。无论是用户请求的内容还是节点之间共享的数据,都被加密处理,使得黑客即使截取了数据