运维安全概述

article/2025/10/14 11:45:55

运维安全概述

 

0x00 前言


运维安全是企业安全保障的基石,不同于Web安全移动安全或者业务安全,运维安全环节出现问题往往会比较严重。

一方面,运维出现的安全漏洞自身危害比较严重。运维服务位于底层,涉及到服务器,网络设备,基础应用等,一旦出现安全问题,直接影响到服务器的安全;另一方面,一个运维漏洞的出现,通常反映了一个企业的安全规范、流程或者是这些规范、流程的执行出现了问题,这种情况下,可能很多服务器都存在这类安全问题,也有可能这个服务还存在其他的运维安全问题。

本文一方面希望帮助甲方覆盖一些盲点,另一方面也能够为白帽子提供一些漏洞挖掘的方向和思路。

0x01 Attack Surface


一图胜千言,下图是个人近期总结的一些常见的运维风险点。

enter image description here

附XMIND源地址:https://github.com/LeoHuang2015/ops_security/blob/master/%E8%BF%90%E7%BB%B4%E5%AE%89%E5%85%A8.xmind

0x02 运维安全对抗发展


攻防对抗本身就是不平等的,防御是一个面,而攻击者只需要一个点。要防住同一level的攻击,需要投入的防御成本是巨大的。 在攻防对抗的各个level,高level的攻击手段是可以随意贯穿低level的防御层面。

救火

对于很多小公司(其实也包括很多大公司),对待安全漏洞的态度基本上都是遇到一个坑,填一个坑,这种纯“救火”的态度无法保障运维安全,只会像打地鼠一样,疲于奔命。

然而大部分公司都处在这个level——填坑救火(不救火的公司没有讨论的必要)。一方面是公司自身的安全意识不强;另一方面是小公司的安全资源配备有限。

漏网之鱼 VS 建设 + 运营

不同于小公司,一些大公司,特别是互联网公司,安全发展已经逐渐的从“救火”进入到“建设”的阶段。

从甲方的角度而言,这个过程是艰辛的,长久的。

在企业进入安全“建设”的阶段时,运维安全漏洞会呈指数级下降,一些常见和普通的问题不再出现。

这个时候,对抗点会集中在一些比较边缘的点。包括不常见的服务端口,依赖第三方服务的问题,又或者是一些合作方服务器安全漏洞等情况。

比如:

WooYun: 腾讯内部员工接私活导致某qq.com域服务器shell进入内网

WooYun: 腾讯某站配置不当可导致部分地区腾讯视频播放源损坏

通常情况下,造成这些安全问题并非是安全技术的缺陷,更多的是安全规范、标准流程覆盖不全的情况,如新业务三方业务收购的业务,运维体系还没有统一,运维安全建设没有及时跟上;即使在安全规范和流程覆盖完全的情况下,在具体的执行也会出现一系列问题。安全规范和标准流程越多,越容易出现执行上的问题。

这两类问题是建设时期比较典型的情况。很多时候,领导都会有这样的疑问,我们的规范、流程已经推到各个部门,看起来各个部门也按照标准执行了,为什么还会有这么多“漏网之鱼”?

于是如何主动的发现这些漏网之鱼也是一个急迫的需求。

这个时候需要安全运营的介入,安全运营在戴明环中扮演的量C/A的角色,定期check安全规范、流程标准的执行情况,然后推动安全问题的Fix,找到根本原因,一方面不断的完善规范和流程,另一方面不断的提升运维安全的覆盖面。

比较常见的就是安全扫描,通过定期扫描发现的问题,反推流程和规范的执行;当然,通过白帽子报告的漏洞,确定是流程和规范的原因后,进行反推也是一种有效的方式。

“新”漏洞 VS 预警 + 响应

天下武功,唯快不破

在运维安全提醒建设到相对完善的情况下,通常情况下,企业是相对安全的。但是,一旦有新漏洞的出现(在国内,有exp发布的漏洞往往就等于新漏洞),拼的就是响应速度。

一方面是需要安全运营对这些严重漏洞的快速预警;另一方面就是安全专家的技术功底了。在没有官方补丁发布的情况下,如何通过一些hack技巧进行防御也是非常重要的。

比如最近几年比较大的安全事件,如2013年7月17日的struts2漏洞,2014年4月7日的心血漏洞,就算是国内甲方最强安全团队BAT也是难于幸免。 这一level,甲方非常难做,唯一能保障的就是在中招后提示响应和修复的速度。

人 安全意识 VS 安全教育

在整个运维安全的对抗中,人这一块尤为重要,运维安全做的越好,这块越发重要。

安全规范和标准可以落实到各个部门,以流程的方式强制执行。但是运维人员安全意识的问题,很难进行控制。

最简单的就是弱口令,弱口令,弱口令!

各种系统的弱口令,各种后台的弱口令,各种服务的弱口令。这么多年了从来没有断过。

很多运维有些“坏”习惯。

比如直接在web目录进行web文件备份、nohup后台运行程序。这样会导致备份文件、程序执行的日志泄露;又或者随便开一个web服务下日志或者传数据,如python -m SimpleHTTPServer,这样就直接把目录映射到所有用户,如果是根目录,影响就更大了;当然,还有些运维喜欢把自动化脚本上传到git,脚本这东西,密码就在里面,一不小心就直接泄露了密码。

比如弱口令: WooYun: 百度某分站修改了弱口令还更弱(可shell可内网)

比如web服务开放问题: WooYun: 腾讯某服务配置不当导致包括数据库文件、密码hash等任意文件可下载

比如运维在Github泄露导致的安全问题: WooYun: 淘宝敏感信息泄漏可进入某重要后台(使用大量敏感功能和控制内部服务器)

0x03 参考


http://drops.wooyun.org/papers/410

转载于:https://www.cnblogs.com/jarvise/p/5153388.html


http://chatgpt.dhexx.cn/article/sWXQbpcO.shtml

相关文章

Java-注解(Annotation)的使用(详解)

注解(Annotation) 前言一、 注解(Annotation)概述二、 常见的Annotation示例1、示例一:生成文档相关的注解2、示例二:在编译时进行格式检查2.1 JDK内置的三个基本注解2.2 代码演示 3、示例三:跟踪代码依赖性,实现替代配…

关于Annotation的那些事儿

文章目录 注解的基础方法元注解与复合注解Repeatable annotation 可重复注解Spring中解析Annotation的工具类 ###### 注解的定义说明 对于一个注解一般包括以下几个部分: 1. Target:适用目标 有一个注解如下所示: java Target(ElementType.TY…

Matlab中annotation函数的使用

目录 语法 说明 示例 创建文本箭头注释 创建文本框注释 创建包含多行文本的文本框注释 创建矩形注释 创建椭圆注释 组合使用两种类型的注释 创建后修改注释 annotation函数是给绘制的图形创建注释。 语法 annotation(lineType,x,y)annotation(lineType)annotation(…

java中Annotation详解

Java 注解(Annotation)又称 Java 标注,是 JDK5.0 引入的一种注释机制。主要作用:Annotation其实是代码里的特殊标记,这些标记可以在编译、类加载、运行时被读取,并执行相应的处理。通过使用Annotation&…

深入理解Java注解类型(@Annotation)

【版权申明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) http://blog.csdn.net/javazejian/article/details/71860633 出自【zejian的博客】 关联文章: 深入理解Java类型信息(Class对象)与反射…

【Spring AOP】@Aspect结合案例详解(一): @Pointcut使用@annotation + 五种通知Advice注解(已附源码)

文章目录 前言AOP与Spring AOPAspect简单案例快速入门 一、Pointcutannotation 二、五种通知Advice1. Before前置通知2. After后置通知3. AfterRunning返回通知4. AfterThrowing异常通知5. Around环绕通知 总结 前言 在微服务流行的当下,在使用SpringCloud/Springb…

Annotation理解及运用

什么是Annotation 我们在平时的开发过程中看到很多如@Override,@SuppressWarnings,@Test等样式的代码就是注解,注解是放到类、构造器、方法、属性、参数前的标记。 Annotation概念 Annontation是Java5开始引入的新特征。中文名称一般叫注解。它提供了一种安全的类似注释的…

Annotation介绍

Annotation思维导图

AnnotationProcessor 处理器不工作怎么定位?

什么是 Annotation Processor 构建问题 写过自定义注解处理器的老司机们乍一看这个问题觉得挺简单,是的,因为网上基本通篇都在教你怎么打日志,但是你有没有想过如果连日志都打印不出来的时候你怎么定位呢?譬如如下代码&#xff1…

annotation-driven 配置详解

一、前沿 在 Spring MVC 的项目中&#xff0c;我们经常使用 <mvc:annotation-driven> 这个配置&#xff0c;那么这个配置到底是做什么的呢&#xff1f;下面来分析一下&#xff0c;首先找到 mvc 的命名空间的定义&#xff0c;如下图&#xff1a; 从上述图中可知&#xff…

深入JAVA注解(Annotation):自定义注解

一、基础知识&#xff1a;元注解 要深入学习注解&#xff0c;我们就必须能定义自己的注解&#xff0c;并使用注解&#xff0c;在定义自己的注解之前&#xff0c;我们就必须要了解Java为我们提供的元注解和相关定义注解的语法。 元注解&#xff1a; 元注解的作用就是负责注解其…

Java:annotation注解的简单理解和总结

Java annotation 注解Annotation1、Annotation的概述1.1、定义1.2、Annotation作用分类1.3、Annotation 架构 2、Annotation的语法形式3、Annotation的分类3.1、基本注解3.2、元注解3.2.1、Target3.2.2、Retention3.2.3、Documented3.2.4、Inherited: 4、自定义annotation4 .1、…

java注解的jar包_Java 注解 Annotation

目录: 从 JDK5 开始,Java 增加了对元数据(MetaData)的支持,也就是 Annotation。Annotation 其实就是代码里面的特殊标记,这些标记可以在编译、类加载、运行时被读取,并执行相应的处理。通过使用注解,开发人员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。…

Java Annotation Processing 概述

文章目录 JAVA ANNOTATION PROCESSING引言代码实现annotation-processor实现一个 Processor创建 AbstractProcessor 的子类 app 测试Reference JAVA ANNOTATION PROCESSING 引言 源码级别的注解处理最开始出现于 JAVA 5 中, 它提供了一种在编译期生成额外 “源文件” 的机制.…

annotation matlab,matlab 关于annotation函数的一点用法

这几天做毕设&#xff0c;用到了matlab的一些功能&#xff0c;先吐槽一下matlab的官方api写的是真的不好&#xff0c;很多东西不解释清楚。 首先对于所有的annotation函数&#xff0c;里面不论是维度还是大小参数&#xff0c;都是归一化到[0,1]之间的&#xff0c;也就是说&…

Android AnnotationProcessor

Android AnnotationProcessor 一.项目结构二.定义注解三.实现注解处理器(一)依赖(二)注解处理器(三)处理注解 四.使用注解处理器(一)依赖(二)使用注解(三)生成的代码 五.注意事项 注解处理器通常可以用在模块间解藕、自动生成代码等地方&#xff0c;比如router路由或者butterkn…

Annotation Processor

annotationProcessor和android-apt的功能是一样的&#xff0c;它们是替代关系。annotationProcessor是APT工具中的一种&#xff0c;他是google开发的内置框架&#xff0c;不需要引入&#xff0c;可以直接在build.gradle文件中使用。android-apt是由一位开发者自己开发的apt框架…

annotation是什么,用处,举例

1.概念&#xff1a;注解Annotation是java 1.5的新特性&#xff0c;是一种能够添加到 Java 源代码的语法元数据。类、方法、变量、参数、包都可以被注解&#xff0c;可用来将信息元数据与程序元素进行关联。Annotation 中文常译为“注解”。 2.用处&#xff1a; (1)生成文档。这…

Web大学生网页作业成品:个人博客主页 (纯HTML+CSS代码)

Web前端开发技术 描述 网页设计题材&#xff0c;DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 个人博客网站 | 个人主页介绍 | 个人简介 | 个人博客设计制作 | 等网站的设计与制作 | 大学生个人HTML网页设计作品 | HTML期末大学生网页设计作业 HTML&#xff1a;结构 CSS&…

vue搭建博客

使用vue2.0/3.0搭建博客&#xff0c;前端情绪员 实现原理安装nodejs和vue写项目项目打包和托管项目创建github仓库安装git托管项目到github仓库检查仓库并设置pages购买域名和解析域名修改更新项目ps(gitee搭建vue博客) 实现原理 使用vue打包出来的dist&#xff0c;把dist中的…