当sudo用户偶遇上VI/VIM发生了什么?(sudo+vi/vim=root)藏在你身后的ROOT

当sudo用户偶遇上VI/VIM发生了什么?(sudo+vi/vim=root)

一次偶然得出的亲身心得,于是记录下来提醒自己安全无小事,事事(时时)记心间。vi/vim大家再熟悉不过了,也许每天都在用它,但有时却常常容易忽略掉一些东西,一次在使用VIM修改系统配置时,发现sudo和VI/VIM相遇后藏着的鲜为人知的小秘密。
一般服务器安装配置时常管理使用的各自用户,为了服务器安全很少直接用ROOT用户进行常规操作,但有时为了提权限的需要,因此通常做法是配置sudo用户,方便快捷。特别对于系统类配置文件,需要使用到ROOT用户权限才能操作,由于我们创建了sudo用户,便可以使用sudo再加相应命令进行操作,大大方便了我们的管理。
今天讨论和展示的是我们在进行sudo用户提权时一定要科学化,全面化审视,慎重再慎重,稍有遗漏可能造成很大的安全风险或事故。
下面展示下配置sudo与VI/VIM错误相遇后的可能发生的情况。
直接配置sudo用户,未做任何限制的做法,相当于直接建了N个ROOT用户毫无区别。


让我们来看看当使用sudo和VI/VIM后:(先用用户jerry登陆测试)

先用ID命令查看下当前用户及组

接着尝试sudo vi cuocuocuo.txt

进入VI编辑器后按SHIFT:然后输入sh后回车

我们再看下发生了什么:

这不是ROOT用户吗,再次确认

硬是呢:不用ROOT密码可以直接使用ROOT权限。

不能看的目录也能直接看了(其它操作ROOT你懂的):

其它用户登陆按这个步骤操作也是一样的,这里就不演示了。
再有权限分配时错漏分配不当或遗漏的情况,总之就是让sudo 和VI/VIM正常地相遇了。
由于某种原因VIM未被禁止错给:(这次用VIM)假设原来系统没VIM,但是其它用户有YUM等安装权限后,进行了安装。

同样是jerrry用户:

执行:sudo vim cuocuocuo.txt 输入jerry用户密码

同样进入VIM编辑器后按SHIFT:然后输入sh后回车

观察变化:

已经切换为ROOT用户

Sudo+vi/vim=root
安全无小事,时刻记心间

原文地址:https://blog.51cto.com/jdonghong/2442843

时间: 2024-10-06 23:01:47

当sudo用户偶遇上VI/VIM发生了什么?(sudo+vi/vim=root)藏在你身后的ROOT的相关文章

学习vi和vim编辑器(16):vim的多窗口功能(1)

vim默认是在一个窗口中编辑所有文件,在文件间移动或者移动到文件的不同部分时只显示一个缓冲区.但vim也提供了多窗口编辑功能,可以简化复合的编辑任务.这篇文章将学习如何在一个运行的vim进程里使用多窗口,包括多窗口编辑工作的初始化与启动,在窗口间移动光标,在显示区中移动窗口等. 启动多窗口编辑: 可以在打开vim时启动多窗口编辑,也可以在编辑会话中分割窗口. 从命令行(shell)启动多窗口: 默认情况下,vim为一个会话只打开一个窗口,即使打开时已经指定多个文件.如果想从命令行中打开多个窗口,

学习vi和vim编辑器(15):vim对vi的主要改进

vim对vi做了大量改进,本章将讨论在vim中添加的主要功能:包括内置帮助功能.启动与初始化选项.新的移动命令.扩展的正则表达式.扩展的撤销.自定义可执行文件等. 内置帮助功能: vim的说明文档超过10万行,几乎所有的说明都可以通过vim内置的帮助工具取得,使用它最简单的形式就是调用" :help "命令.使用内置的帮助功能需要了解vi的导航技巧,知道如何在标签间前进与后退.当光标处于某个标签上时,按下" CTRL+] "前往该标签,按下" CTRL+T

17.sudo 用户管理

17. sudo 用户管理 实验要求: 1. 了解Linux系统中用户管理机制; 2. 为指定用户添加特殊权限. 实验器材: 软件: 1.安装了RHEL6的vmware虚拟机. 硬件: 1. PC机一台. 背景知识: 1.Sudo用户管理 在 Linux 系统中,管理员往往不止一人,若每位管理员都用 root 身份进行管理工作,根本无法弄清楚谁该做什么.所以最好的方式是:管理员创建一些普通用户,分配一部分系统管理工作给他们. 我们不可以使用 su 让他们直接变成 root,因为这些用户都必须知道

Ubuntu 添加sudo用户

第一种方法: 添加sudo用户 当你安装Ubuntu的时候,它会自动添加第一个用户到sudo组,允许这个用户通过键入其自身帐户密 码来获得超级用户(root)身份.然而,系统不会再自动添加其他的用户到sudo组当中去.如果你想在你的共享系统上授予某人某些超级用户特权,你必须 给予他们sudo权利. 要添加新用户到sudo,最简单的方式就是使用 usermod 命令.运行 $sudo usermod -G admin username 这就你要作的,然而,如果用户已经是其他组的成员,你需要添加 -

adduser Ubuntu添加sudo用户

第一种方法: 添加sudo用户 当你安装Ubuntu的时候,它会自动添加第一个用户到sudo组,允许这个用户通过键入其自身帐户密码来获得超级用户(root)身份.然而,系统不会再自动添加其他的用户到sudo组当中去.如果你想在你的共享系统上授予某人某些超级用户特权,你必须给予他们sudo权利. 要添加新用户到sudo,最简单的方式就是使用 usermod 命令.运行$sudo usermod -G admin username这就你要作的,然而,如果用户已经是其他组的成员,你需要添加 -a 这个

linux下添加用户到sudo组 并禁止sudo用户修改密码

linux下添加用户到sudo组 创建用户  useradd hanli 为新用户设置密码  passwd hanli 创建用户组  groupadd  op 将用户添加到用户组  usermod -G op hanli 查看用户属于哪个组  groups hanli 查看用户组成员    groupmems -g wheel -l  (wheel是组名) 查看所有用户组   cat /etc/group   cat /etc/gshadow 查看所有用户       cat /etc/pass

学习vi和vim编辑器(17):vim的多窗口功能(2)

接着上一篇文章,继续学习vim编辑器的多窗口功能.本篇文章主要学习调整窗口尺寸.缓冲区及其与窗口的交互.分页编辑.关闭与离开窗口. 调整窗口尺寸: 在gvim中,可以使用鼠标调整窗口尺寸,只需要用鼠标点击及拖动窗口边界即可.如果是在vim中,只要开启mouse选型(" :set mouse=a "),也能够用鼠标调整窗口尺寸. 窗口尺寸调整命令: ^W=:试图调整所有窗口至相同尺寸(此命令受当前的winwidth和winheight选项值的影响).如果可用的屏幕块不能平均划分,vim也

学习vi和vim编辑器(14):vim概述

vim指的是" vi improved ",即改进版的vi.目前vim可能是使用最为广泛的vi同类品. 概览: 作者与简史: vim由Bram Moolenaar编写,也得到其他人的协助开发.所以vim能够随着计算机工业以及文本编辑需求而相应地成长与改变,并维持着自身的价值.今天的vim是功能最为全面的类vi编辑器之一,在线帮助也很丰富. 与vi的比较: vim的接受度比vi更为广泛,因为某些版本的vim几乎可供所有操作系统使用,而vi只适用于UNIX或类似于UNIX的系统.vi是原始

sudo用户免输sudo密码

最近一直在查如何创建sudo用户并且免输sudo密码,找了很多资料,结果发现不可行.然后今天意外的被我破解了! 环境:  CentOS 6.6 1. 首先你的有一个执行sudo的普通用户. [[email protected] ~]# useradd chengcai 2. 以root用户登录,然后修改/etc/sudoers文件: vim /etc/sudoers #################################################################