java反序列化学习 SerializeableSeializeable是java实现序列化机制的工具,序列化数据包含对象类型和属性值。 Serializeable工具的简单说明 1234只需要实现Serializeable接口就可以进行对象的序列化处理序列化对象可以是基本数据类型、集合类或其他对象使用transient、static关键字修饰的属性不会被序列化父类不可序列化时,需要父类中存在无参构造函数。 相关接口 2021-04-12
Thinkphp6.0.x反序列化 分析利用链 1234567891011121314think\Model --> __destruct()think\Model --> save()think\Model --> updateData()think\Model --> checkAllowFields()think\Model --> db()后半部分利用链(同tp 5.2后半部分利用链)think 2021-04-11
Thinkphp6.0.0-6.0.1 任意文件操作漏洞复现 环境配置thinkphp6默认是没有开启session功能的,需要取消app\middleware.php文件中对session的注释 由于默认情况下没有创建session,所需要修改一下控制器,加上创建session的功能。 漏洞利用修改cookie为PHPSESSID=aaaabbbbccccddddeeeeffff1234.php,文件名长度必须等于32位 写入成功 1http://l 2021-04-10
无列名注入总结 前言在information_schema被过滤时,无法获取到表名和列名,这时候就需要通过无列名注入来获取信息。 获取表名无列名注入也是需要表名的,可以先通过InnoDb和sys来获取表名 InnoDb要求:Mysql版本>5.6 inndb中有innodb_index_stats和innodb_table_stats两张表,这两张表中存储了数据库和其中的数据表的信息,但是没有存储列名。 查 2021-04-05
ThinkPHP v3.2.* (SQL注入&文件读取)反序列化复现 参考 https://mp.weixin.qq.com/s?__biz=MzU2NDc2NDYwMA==&mid=2247484711&idx=1&sn=0dd0f72b376b4922e4ae5b8bd614ae89&scene=21#wechat_redirect 搭建环境框架会自动生成一个默认控制器,在默认控制器下添加一个测试用的Action即可。 分析1. 2021-04-04
msf和cs联动 cs派生给msf配置好listener,选择Foreign HTTP 使用cs的spawn功能 msf设置payload为/windows/meterpreter/reverse_http,ip和端口与listener中的一致,不要使用64位的payload,会出现问题。这样即可接收到派生过来的session msf派生给cs只有meterpreter类型的session才能派生给cs 使用 2021-03-11
python编写Redis漏洞检测和利用脚本 python编写Redis漏洞检测和利用脚本环境配置1234# wget http://download.redis.io/releases/redis-6.0.8.tar.gz# tar xzf redis-6.0.8.tar.gz# cd redis-6.0.8# make 执行完 make 命令后,redis-6.0.8 的 src 目录下会出现编译后的 redis 服务程序 redis- 2021-03-06
基于COM组件接口的BypassUAC COM提升名称(COM Elevation Moniker)技术允许运行在用户账户控制下的应用程序用提升权限的方法来激活COM类,以此提升COM接口权限。其中,ICMLuaUtil接口提供了ShellExec方法执行命令,创建指定进程。 原理是利用COM提升名称以高权限调用ICMLuaUtil接口,从而以高权限执行ShellExec创建指定进程。使用权限提升COM类的程序必须通过调用CoCreat 2021-03-04
typecho反序列化分析 分析1.install.php install.php中存在unserialize函数,__typecho_config可控。值被作为参数传入类Typecho_Db 2./var/Typecho/Cookie.php Typecho_Cookie::get方法从Cookie或者是POST数组中获取数据 3./var/Typecho/Db.php 跟进类Typecho_Db,传入的参数被作为字符 2021-03-03
通过添加启动目录和和修改注册表进行权限维持 添加启动目录由于启动目录不固定,需要先通过SHGetSpecialFolderPath获取启动路径,再CopyFile把要自启动的程序复制过去 12345678910111213141516171819202122#include <iostream>#include <Windows.h>#include <shlobj_core.h>int main() 2021-03-01