Linux下的常见错误配置

经过对大量客户的配置审计与渗透测试,我们总结出了一些Linux系统下的常见配置错误。我们相信总结、回顾这些常见错误可以在以后为我们节省更多时间与资源,更重要的是可以帮助系统管理员,使其服务器更加安全可靠。

五个常见配置错误如下:

1、用户/home目录的权限
2、系统中的getgid与setuid程序
3、全局可读/可写的文件/目录
4、使用包含漏洞的服务
5、默认的NFS挂载选项或不安全的导出选项

1、用户的/home目录权限

在大部分Linux发行版中,/home目录的默认权限是755,即任何登录系统的用户都可以访问其他用户的/home目录。而某些用户如管理员或开发者,可能会在他们自己的用户目录下存放某些敏感信息,如密码、访问当前或其它网络服务器的key等。

2、系统中的setgid与setuid程序

文件的set uid位非常危险,因为它可能允许文件以一种特权用户的身份运行,如root用户:如果某个文件的所有者是root,并且设置了setuid位,那么在其运行时就是以root权限运行的。这意味着如果攻击者找到了该文件的漏洞,或者以一种非预期的方式运行了该程序,那他很有可能能够以root权限执行自己构造的命令,那么整个系统的权限就沦陷了。

3、全局可读/可写的文件/目录

全局可读与可写的文件和目录产生的问题与之前介绍的因用户主目录权限配置不当引起的问题类似,但其影响范围可能涉及到整个系统。产生全局可读的文件的主要原因是,创建文件的默认umask掩码是0022或0002,正是由于这种不当的配置,那些可能包含敏感信息的文件可能被登录系统的任何人读取到。如果文件是全局可写的,那么也可能被任何人修改,也因此可能导致攻击者有机会修改某些文件或脚本来隐藏自己,并通过修改管理员经常使用的脚本来执行某些敏感命令。

4、配置不当的服务或设置

应该运行那些最小化配置的服务。经常会看到有些服务配置不当或使用默认的证书与配置,使用不安全的通信渠道的现象也非常常见,加重了服务器被攻击的风险。在使用某项服务时,需要对其选项和配置进行复审,以确保部署的安全或配置恰当。但同时也经常看到有些服务被绑定到多个端口,而不是只进行本地监听或只监听某个特定端口。

5、默认的挂载选项或不安全的导出选项

所有挂载的默认选项都是“rw, suid, dev, exec, auto, nouser, async”。但是使用这些默认选项是不恰当的,因为它们允许如NFS协议等外部挂载的文件系统中的文件被设置suid位和guid位。当导出NFS共享时,建议不要设置no_root_squash选项。通常默认为root_squash选项,但我们经常看到其在实际使用中会被修改。如果设置了no_root_squash选项,当用户以root用户登录时,对这个共享目录来说就拥有了root权限,可以作任何事。这些不当设置如果保持默认,就会允许root用户登录服务器,但本来不应该允许这种权限的用户登录的。

这些设置在配置Linux服务器时经常会被忽视,而恰恰是这些不当配置,使攻击者或恶意用户可以非法获得大量信息,或者提升自己在服务器中的权限。掩耳盗铃和一叶障目总比老老实实地加固系统来得简单,但是如果不想在自己睡得正香的时候服务器被人XXOO,就去踏踏实实地加固你的系统吧。

作者 Taskiller [via infosecinstitute]

原文发布于微信公众号 - FreeBuf(freebuf)

原文发表时间:2014-03-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏区块链

Web安全常见漏洞修复建议

看各大发布漏洞的平台,发现众多挖洞大神精彩的漏洞发掘过程,但在修复建议或者修复方案处,给出千奇百怪神一般的回复,故而总结一下修复建议(才疏学浅不算太全敬请谅解,...

3056
来自专栏张戈的专栏

Linux/SUSE安装svn客户端的问题记录

这 2 天负责架设一个支付业务的 webserver 测试项目,安装 svn 客户端的时候出现了各种问题,来记录下。 ? 一、简单的说下安装过程: #下载 wg...

3829
来自专栏张善友的专栏

ASP.NET 2.0 中 Web 事件

ASP.NET 2.0 还提供了全功能的应用程序监视和健康监视。这个系统是由一个完全可扩展事件模型和一个能将事件发送到多种接收器的事件引擎组成的。举例来说,您可...

2137
来自专栏程序员互动联盟

【专业技术】编译器的工作原理

源码要运行,必须先转成二进制的机器码。这是编译器的任务。 比如,下面这段源码(假定文件名叫做test.c)。 #include <stdio.h>int ma...

3737
来自专栏用户画像

Maven安装与配置

 1、Maven下载 http://maven.apache.org/download.cgi 直接解压到一个目录 即可

982
来自专栏闵开慧

hadoop安装配置过程总结

 一、Jdk安装 系统已经默认有安装,但不完全,所以需要自己安装 配置环境变量: 在usr下新建java文件夹,将Java7压缩文件解压在该文件夹中,并配置系统...

3726
来自专栏java闲聊

Hyper-v安装Centos7-网络配置与更新内核

笔记本用了windwos10之后发现VMware与Hyper-v不兼容,于是为了用Hyper-v,果断把VMware卸载了,如果你也有我这种想法,那么请继续往下...

3863
来自专栏java闲聊

Hyper-v安装Centos7-网络配置与更新内核

2199
来自专栏白驹过隙

RabbitMQ - 引入库产生的一次pthread_create错误

1406
来自专栏分布式系统进阶

Logstash使用中遇到的一些坑和解决方案

6752

扫码关注云+社区

领取腾讯云代金券