98%的运维人员会中招的运维安全陋习,你中了几个?_计算机运维工程师有哪些无效行为

通过对比“运维+安全”、“安全+运维”、“业务+运维+安全”三个子专业的不同,我们明确了运维安全的研究领域和岗位职责。看到这里,可能大家会有疑问,是什么导致运维安全现在这么“风光”?

二、为什么我们重视运维安全?

可以说,2013-2014年是运维安全发展的一个分水岭。这两年特别之处在于作为互联网基础设施的几大应用相继被爆漏洞或被攻击,例如Struts2远程代码执行漏洞、Openssl心脏滴血、Bash破壳漏洞,以及当时“史上规模最大的DDoS攻击”导致大量.cn和.com.cn域名无法解析。在这之后,企业对运维安全投入迅速加大,各种运维安全问题也引起广泛关注。直到今天,运维安全已经成为企业安全建设的重中之重。

1、漏洞百出的软件供应链

  • struts2远程代码执行漏洞

当年S2漏洞一出,整个互联网一片哀嚎。下面是受影响的企业,大家应该几乎没有不认识的吧?

  • openssl心脏滴血

跟S2漏洞一样,杀伤力极强。

  • xcode开发的ios app感染木马

研究者发现AppStore上的TOP5000应用有76款被感染。后来发现罪魁祸首是开发人员从非苹果官方渠道下载xcode开发环境。

2、 运维安全漏洞占比明显

自从某云离去以后,不得不说国内互联网安全态势的共享逐步走向了封闭,不过借此机缘,也涌现了很多商业公司。

即便是现在留下的某天某法某眼,能查询到的统计分析数据其实也很有限。即便是某旦,其用户体验也不够好,统计分析功能无法差强人意。剩下的,各种研究报告也从来没有把运维安全问题列入单独的统计范畴,所以这里借用2016年CNVD的统计,可以发现明显属于运维安全问题的网络设备漏洞和操作系统漏洞,占比已超过20%,加上应用程序漏洞中包括的各种应用版本漏洞,相信归属于运维安全领域的漏洞比例将极其可观。

3运维安全漏洞利用性价比高

针对运维安全漏洞的攻击属于典型的“一两拨千金”,其ROI非常高:投入小、容易发现与利用、造成危害特别大。

根据微软的DREAD模型来衡量运维安全漏洞风险如下:

三、常见运维安全陋习

运维安全事件频发,一方面固然是因为运维或安全规范空白或者没有落地,另一方面也在于运维人员缺乏强烈的运维安全意识,在日常工作中存在这样那样的安全陋习导致。

下面列出了14种坑,大家可以试试对号入座,仔细想想曾几何时自己是否也踩过同样的坑?

1、修改iptables后没有还原配置,甚至清空关闭iptables

出于测试需要临时清空iptables可以理解,但是很多人会忘记还原,也没有设置自动还原机制。

iptables -F

2、脚本没有检查“*”、空格、变量

如果我们认可“不光用户的输入是不可信的,自己的输入也是不可信”,这样的坑就会少踩。

rm -rf /

v

a

r

1

/

var1/

var1/var2

3、服务启动默认监听全部地址

绝大部分应用默认配置便是如此,在没有有效访问控制的清空下开启监听所有地址,离危险也就不远了。

bind-address 0.0.0.0

4、给文件开放过大的权限时,任何人都能读写

这个跟phpinfo有点像,能给入侵者推一把。

chmod 777 $dir || chmod 666 $script

5、用root启动服务

对于大多数运维人员而言,一上机器就切到root,后面用root启动服务仿佛一气呵成。

#nohup ./server &

6、嫌麻烦不配认证,也不配访问控制

这个跟监听任意地址比较像,通常也是默认配置使然,使用者也没有意识去加固。

#requirepass test

7、单机安装docker之后忽略检查iptables,导致docker修改iptables开放外网

docker技术给我们带来的便利自不必言,但是docker带来的安全风险却一点也不少。而且,docker daemon默认是能控制宿主iptables的,如果docker daemon使用tcp socket或者启动的容器可被外部访问,则连宿主一同沦陷也不在话下。

8、sudo授权过大,导致自定义脚本提权

如果攻击者可修改脚本内容则提权易如反掌。

sudo script.sh

参考链接:

script.sh:http://script.sh

9、给开发或者QA授权root权限,他搞事你背锅?

一直以来我们强调RBAC,但是运维太忙,开发测试人员需求太多时,很多运维人员会直接授权他们root权限,而他们对系统级访问控制不甚了了,因此造成的漏洞非常“可观”。

dev@pro-app-01:/home/dev$su

root@pro-app-01:/home/dev#whoami

root

10、key/token/ssh私钥保存在txt文件里,也有把个人ssh私钥放在服务器的

op@pro-app-01:/home/op$ls ~/.ssh

id_rsa id_rsa.pub

11、把工作上的代码对外发布

连着遇到实习生把项目代码提交github了,回复的理由是git配错了。虽然不知真假,但我认为,至少他们是安全意识不足。

git remote add origin https://github.com/secondwatchCH/EFS.gitgit push origin master

12、个人home目录那么敏感,也有人拿来直接托管服务,至少.bash_history泄露是跑不了

dev@pro-app-01:/home/dev$python -m HTTPSimpleServer

13、应用选型时没有考虑安全风险

Apache Struts Version:Struts 2.5 - Struts 2.5.12 #线上业务使用受S2-052影响的S2版本

14、对软件供应链安全没有概念

从xcode事件到pip官方发现恶意ssh库,都在向我们昭示一个道理:软件供应链安全风险极大。目前比较运维人员中比较常见问题有:

  • ssh客户端或者开发IDE从百度网盘下载
  • 两眼一闭,把github/pypi/dockerhub等网站下载的应用/库/镜像直接用到生产环境
  • 未清理默认口令或者默认配置

四、常见运维安全问题

前面我们谈到了运维操作上、思路上的一些陋习,或者安全意识不足的问题,下面结合漏洞分析和响应过的情况来看,常见的运维安全问题主要可分为下面几种:

1、敏感端口对外开放

db或者cache属于敏感应用,通常部署在内网,但是如果部署的机器有内外网ip,且默认监听地址为0.0.0.0的话,则敏感端口会对外开放。如 MySQL / MongoDB / Redis / rsync / docker daemon api 等端口对外开放。

2、敏感应用无认证、空口令或者弱口令

同上,如果敏感应用使用默认配置,则不会开启认证,MySQL / MongoDB / Redis / rsync / supervisord rpc / Memcache 等应用无认证。有时贪图测试方便,配置了弱口令或空口令,则认证形同虚设。

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以点击这里获取!

]
[外链图片转存中…(img-vwuB2kuJ-1714236388553)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

需要这份系统化的资料的朋友,可以点击这里获取!

  • 19
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值