PHP垃圾回收器与反序列化利用垃圾回收机制指php会自动释放程序不再需要的已分配的内存块。
PHP5.3之前采用引用计数的方式,给每个内存对象分配一个计数器,每当内存对象被引用时,计数器+1,引用撤销后(unset()),计数器-1,对技术器=0时,对内存对象进行销毁,垃圾回收机制完成,php一个生命周期后会释放此进程/线程所占的内容
存在问题:两个或多个对象相互引用,使...
RMI学习基础组成
Client
Registry
Server
通信原理
服务端绑定远程对象(java中定义的一个远程对象类)
客户端只要传value
解决端口问题:注册中心,储存远程对象value与服务端端口的映射(在远程对象创建时形成映射)
动态代码加载(JDK高版本去掉了)如果客户端调用了服务端没有的类对象,RMI允许服务端去远程的Web Server上加载类
远程接口、对象...
nc命令学习及反弹shell细节
机器名称
IP地址
操作系统
root@Decemberus
114.223.4.218
Centos7
root@Sloth
124.223.207.184
Centos7
🥣
内网
Mac os
nc命令使用版本
netcat-traditional:Kali Linux 默认带的就是这个版本,这个版本的 nc 具有-e选项,十分...
Java反序列化简述Java相对PHP序列化更深入的地方在于,其提供了更加高级、灵活地方法 writeObject ,允许开发者在序列化流中插入一些自定义数据,进而在反序列化的时候能够使用 readObject 进行读取。
Java设计 readObject 的思路和PHP的 __wakeup 不同点在于: readObject 倾向于解决”反序列化时如何还原一个完整对象”这个问题,而PHP...
JAVA反射类加载器类加载/类初始化三个步骤
类的加载: 将class文件读入内存,并为之创建一个java.lang.Class对象
任何类被使用时,系统都会为之建立一个java.lang.Class对象
系统中所有的类都是java.lang.Class的实例。
类的连接
验证阶段:检验被加载类是否有正确的内部结构,并和其他类协调一致
准备阶段:负责为类的类变量分配内存,...
💡前提:安装Xcode安装homebrew1/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
选择中科大镜像,并安装弹窗中的命令行开发者工具,安装完再执行以上命令
切换国内安装源
1cd "$(brew --repo)" &a...
Python Pickle反序列化漏洞基础知识0x00:Pickle/CPicklepickle或cPickle,作用和PHP的serialize与unserialize一样,两者只是实现的语言不同,一个是纯Python实现、另一个是C实现,函数调用基本相同,但cPickle库的性能更好,之后就以pickle库来进行演示
0x01:Pickle库及函数pickle是python语言...
JAVA WEB学习Junit 单元测试步骤0x01 定义一个测试类建议:
测试类名:被测试的类名+Test e.g. CalculatorTest
包名:xxx.xxx.xx.test e.g. cn.itcast.test
0x02 定义测试方法:可以独立运行建议
方法名:test+测试的方法名 testAdd()
返回值: void
参数列表:空参
0x03 导入juni...
Mysql提权前提条件
具有MySQL的root权限,且MySQL以system权限运行。
具有执行SQL语句的权限。
获取root密码的方法:
MySQL 3306 端口弱口令爆破
sqlmap 注入的 --sql-shell 模式
使用条件:数据库开启了shell能执行命令
1sqlmap -u www.xxxx/aboutus.php?id=1 --sql-shell
进入了...
RCE总结定义RCE,远程代码执行漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。
命令执行函数system()system()函数会调用fork()产生子进程,由子进程调用/bin/sh -c command执行特定的命令,暂停当前进程直到command命令执行完毕,当此命令执行完后随即返回原调用的进程。
当system()正常执行,将返回命令的退出码;
...