加入收藏 | 设为首页 | 会员中心 | 我要投稿 百客网 - 百科网 (https://www.baikewang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

权限维持|linux密码抓取和后门(上)

发布时间:2022-10-26 10:51:09 所属栏目:Linux 来源:
导读:  0x00 前言

  本文主要是简单介绍在获取到Linux服务器root权限的情况下,如何获取明文密码并维持权限。感谢不愿意透露姓名的抠脚大汉提供相关的踩坑笔记。

  PAM后门

  OpenSSH后门

  0x
  0x00 前言
 
  本文主要是简单介绍在获取到Linux服务器root权限的情况下,如何获取明文密码并维持权限。感谢不愿意透露姓名的抠脚大汉提供相关的踩坑笔记。
 
  PAM后门
 
  OpenSSH后门
 
  0x01 Linux服务器用户密码抓取
 
  测试机器系统信息:centos7 x64用户权限:ROOT测试机器IP:192.168.122.11.1 什么是strace和alias?strace是一个可用于诊断、调试和教学的Linux用户空间跟踪器。我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等。在后面抓取用户密码的时候,我们会使用这个软件来监控用户的ssh登录操作。alias命令用于设置指令的别名。用户可利用alias,自定指令的别名。在用户使用特定命令时,调用strace实现对密码的抓取。1.2 本地测试抓取密码第一种方式:strace命令在获取到目标ROOT权限后,可以直接在终端执行如下命令,该命令会监听sshd进程,并将登录过程及信息记录到/tmp/sshd.log文件中。
 
  接着模拟管理员ssh登录。输入正确的密码123。
 
  最后筛选登录密码。如图所示。
 
  Tips:不管是正确的密码还是错误的密码都会被记录下来。第二种方式:alias命令首先编辑bashrc文件, [当前用户] 或者[所有用户]然后将如下命令加入文件当中并保存,注意strace权限问题。
 
  然后要记得使用命令使更改的配置生效。接着使用如下命令查看记录的密码。(这里我输入cuowudemima作为密码,一样会被记录下来)cat /tmp/sshpwd*.log
 
  密码会以一行一个字符的方式来记录。使用su、sudo、scp等命令也可以。
 
  0x02 PAM后门
 
  2.1 认识PAM认证
 
  PAM认证机制:简单来说就是linux系统采取的这一种对不同用户以及系统中的不同服务进行的安全认证机制。PAM认证流程:linux系统首先确定所需认证的服务,然后加载相应的PAM的配置文件(位于/etc/pam.d下),最后调用认证文件(位于/lib/security下)进行安全认证。PAM 利用: 通过编译PAM,添加后门代码linux权限,实现自定义的用户任意密码登录。2.2 本地测试测试机器系统信息:centos7 x64PAM版本:1.1.8-23用户权限:ROOT测试机器IP:192.168.122.1pam编译需要关闭selinux,执行命令setenforce 0临时禁用SELinux。编辑/etc/selinux/config文件,将SELINUX=enforcing修改为SELINUX=disabled临时禁用SELinux[需要重启]。2.2.1 安装gcc环境查看pam版本,这里下载相应版本。2.2.2 下载pam相应版本添加后门并编译解压并编辑Linux-PAM-1.1.8/modules/pam_unix/pam_unix_auth.c文件,添加后门代码。make编译约在pam_unix_auth.c文件180行出添加如下代码:
 
  2.2.3 应用编译好的pam后门拷贝文件:修改时间戳: 加载SO文件:重点:验证自定义的密码是否能正常登录,否则不能退出[退出会导致系统无法再次登录]。此后正常登录的账户密码会记录到/tmp/文件夹下的log文件内。0x03 OpenSSH后门3.1 OpenSSH介绍与大致利用过程OpenSSH介绍:OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。用于Linux服务器登录 。OpenSSH利用过程:通过重新编译OpenSSH添加后门代码,从而获取用户登入登录其他Linux服务器时候的密码,设定自定义密码,管理员修改密码之后仍能正常登入,从而维持权限。3.2 本地测试3.2.1 下载文件、解压、patch
 
  3.2.2 修改文件内容修改includes.h文件,在文件末尾如下:
 
  3.2.3 修改Openssh版本号和ssh相关文件根据ssh -V命令查看当前机器的Openssh版本,并将version.h文件中的版本改成当前机器的版本,如下。
 
  3.2.4 编译与应用切换到文件目录:cd /root/openssh-5.9p1编译:./configure --prefix=/usr/ --sysconfdir=/etc/ssh/ --with-pam --with-kerberos5安装:make clean && make && make install重启ssh服务:systemctl restart sshd.service本文仅作为技术交流,切勿用作非法用途。
 

(编辑:百客网 - 百科网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!