红日代审-Day4-strpos绕过
strpos1strpos(string $haystack, string $needle, int $offset = 0): int|false 参数 haystack 在该字符串中进行查找。 needle 要搜索的字符串。 offset 如果提供了此参数,搜索会从字符串该字符数的起始位置开始统计。 如果是负数,搜索会从字符串结尾指定字符数开始。 返回值返回 needle 存在于 haystack 字符串起始的位置(独立于 offset)。 同时注意字符串位置是从0开始,而不是从1开始的。如果没找到 needle,将返回 false。 警告 此函数可能返回布尔值 false,但也可能返回等同于 false 的非布尔值。应使用 [=== 运算符]来测试此函数的返回值。 Demo分析 很简单的例子。本次漏洞是开发者对 strpos...
无尽终章
《无尽终章》 当BurpSuite被抛弃于回收站,SQLMap被渗透遗忘。当IPv6同水一起枯竭,HTTP 9和星际飞船我无法想象。若Github还有一息尚存,我的博客将沦为古老的笑话。当师傅的徒弟的徒弟成为师傅死去,思维Fuzz于宇宙,cmd一般漆黑沉默,而我的尸体,又反复腐烂于哪段虚拟的时光?
红日代审-Day3-SimpleXMLElement原生类攻击
class-exists1class_exists(string $class, bool $autoload = true): bool $class 为类的名字,在匹配的时候不区分大小写。默认情况下 $autoload 为 true ,当 $autoload 为 true 时,会自动加载本程序中的 __autoload 函数;当 $autoload 为 false 时,则不调用 __autoload 函数。 也就是说class_exists接收的第一个参数class,在默认$autoload为true时,会自动传递给__autoload 函数加载 参数 class 类名。名称以不区分大小写的方式匹配 autoload 如果尚未加载,是否自动加载 返回值如果 class 是已经定义的类,则返回 **true**,否则返回 false 示例1234567<?php// 在尝试使用前检查类是否存在if (class_exists('MyClass')) { $myclass = new...
六爻初级笔记
...
云原生网关Apisix打法
本文没什么技术含量,Nday会打就行,于是直接照抄vulhub了 简介APIsix 是一个高性能、开源的云原生 API 网关,广泛应用于微服务架构中,它能够处理 API 请求并提供各种 API 管理功能,如负载均衡、API 认证、路由、限流、监控、日志记录等。APIsix 设计上考虑了云原生环境,支持高度的可扩展性、可配置性和插件化,能够无缝集成到容器化和 Kubernetes 环境中。 典型应用场景 微服务架构:在微服务环境中,APIsix 可作为前端 API 网关,负责流量控制、负载均衡、认证授权等功能。 多协议支持:适用于需要支持多种协议(如 HTTP、WebSocket、gRPC)的应用场景。 高可用架构:通过支持高并发和高性能,APIsix 可以在高可用的架构中,提供流量分发和服务治理的功能。 核心组件 APIsix Gateway:处理实际的请求流,执行路由、负载均衡、插件逻辑等。 Admin API:提供用于管理和配置网关的接口,通常用于动态更新路由规则、插件配置等。 ETCD:APIsix 使用 Etcd...
MySQL的getshell几种姿势
发篇库存,归档整理一下前朝老笔记 SQLMap里getshell的几个参数–os-shell这个参数对于MySQL来说其实就是利用into outfile写入一个webshell,于是需要有足够的写入权限,已知绝对路径的前提条件,对于MSSQL来说,是通过xp_cmdshell等组件直接执行的系统命令,二者是有区别的,前者使用webshell做了一个跳板,后者是直接执行命令的。如果mysql也想实现直接执行系统命令的效果,则需要借助UDF相关的姿势 参数 内容 前提条件 - 目标存在 SQL 注入漏洞。 - 数据库用户权限足够高,允许执行操作系统命令(如调用 xp_cmdshell、sys_exec)。 - 需要知道网站的绝对路径(如 /var/www/html)来上传 WebShell。 原理 SQLMap...
红日代审-Day2-filter_var绕过
来源:https://github.com/hongriSec/PHP-Audit-Labs/blob/master/Part1/Day2/files/README.md 很多话我不想再重复了,就直接照搬的原话,能看就行 filter_var1filter_var(mixed $value, int $filter = FILTER_DEFAULT, array|int $options = 0): mixed value 要过滤的内容。警告:标量值在过滤前,会先转换成字符串 filter 要应用的过滤器。可以使用 FILTER_VALIDATE_\* 常量作为验证过滤器,使用 FILTER_SANITIZE_\* 或 FILTER_UNSAFE_RAW 作为清理过滤器,也可以使用 FILTER_CALLBACK 作为自定义过滤器。 注意: 默认值为 FILTER_DEFAULT,是 FILTER_UNSAFE_RAW 的别名。这将导致默认情况下不进行过滤。 options 要么是选项的关联 array,要么是过滤器 flag 常量 FILTER_FLAG_\*...
红日代审-Day1-in_array弱比较问题
红日代审-Day1-in_array弱比较问题 来源:https://github.com/hongriSec/PHP-Audit-Labs/blob/master/Part1/Day1/files/README.md 很多话我不想再重复了,就直接照搬的原话,能看就行 in_array函数1in_array(mixed $needle, array $haystack, bool $strict = false): bool 大海捞针,在大海(haystack)中搜索针( needle),如果没有设置 strict 则使用宽松的比较。 needle 待搜索的值。如果 needle 是字符串,则比较是区分大小写的 haystack 待搜索的数组 strict 如果第三个参数 strict 的值为 true 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同,如果没有开启严格模式,则比较时就存在一个弱比较、强制类型转换的问题 示例 123456789<?php$os = array("Mac",...
信呼OA办公系统SQL注入
环境搭建 信呼OA V2.6.5:http://www.rockoa.com/index.php?a=down&id=285 phpstudy2018 Apache 2.4.23 php 5.5.38 mysql 5.5.53 信呼OA...
记一次某红蓝演练经历
fastadmin切入 fastadmin-任意文件读取-读数据库配置得到数据库连接信息 国外ping寻找外网开放数据库端口的真实ip 连接数据库 寻找管理员密码 无法解密,直接修改管理员密码为官方默认的123456加密后的值 进入后台 后台getshell 云上主机,遂就此作罢 切入jeecg-boot未授权 jeecg-boot-rce 翻找js得到ak/sk 接管阿里云 搭建隧道进入内网 发现nacos未授权泄露,泛微E-mobile的弱口令 泛微E-mobile任意文件读取 读取Gitlab配置文件,apixis配置信息泄露