利用PHP_SESSION_UPLOAD_PROGRESS进行文件包含
我们可以利用session.upload_progress将木马写入session文件,然后包含这个session文件。不过前提是我们需要船家女一个session文件,并且知道session文件的存放位置。
session里有一个默认选项,session.use_strict_mode默认值为off。
此时用户是可以自己定义Session ID的。比如,我们在Cookie里设置PHPSESSID=flag,PHP ...
PHP加密解密
PHP加密解密
对称加密
采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单密钥加密。
在对称加密算法中常用的算法有:DES、3DES、TDEA、Blowfish、RC2、RC4、RC5、IDEA、SKIPJACK、AES等。
AES加密算法
密码学中的高级加密标准(Advanced Encryption Standard,AE ...
php反序列化漏洞
前言
本文总结php的反序列化,有php反序列字符串逃逸,php反序列化pop链构造,php反序列化原生类的利用,phar反序列化,session反序列化,反序列化小技巧,并附带ctf小题来说明,还有php反序列化的预防方法(个人想法),建议按需查看,如有错误还望斧正。
如非特别说明运行环境为PHP 7.2.33-1+ubuntu18.04.1
为什么要序列化 ...
PHP代码执行/命令执行总结
代码执行
eval
(PHP 4, PHP 5, PHP 7)
eval( string $code) : mixed
把字符串 code 作为PHP代码执行。
eval($_POST['c']);
直接蚁剑链接密码为c
assert
(PHP 4, PHP 5, PHP 7)
assert( mixed $assertion[, Throwable $exception]) : bool
如果 assertion 是字符串,它将会被 assert() 当做 PHP 代码来执行。
使用方法同e ...
PHP反序列化漏洞
1.什么是序列化和反序列化?
PHP的序列化就是将各种类型的数据对象转换成一定的格式存储,其目的是为了将一个对象通过可保存的字节方式存储起来这样就可以将学列化字节存储到数据库或者文本当中,当需要的时候再通过反序列化获取。
serialize() //实现变量的序列化,返回结果为字符串
unserialize() //实现字符串的 ...
口罩预约管理系统——系统网站实现(前端+PHP+MySQL)
口罩预约管理系统网站实现
一、前言
二、系统登陆逻辑及界面实现
三、用户模块
1、用户预约系统界面
2、用户查看我的订单界面
3、用户修改预约信息
四、管理员模块
1、管理员登陆界面
2、 ...
centos7 PHP7.1 Failed to restart php-fpm.service: Unit not found.
在编译PHP以后没有将PHP添加到服务列表导致使用systemcel命令时候出现
解决步骤
1.打开vi /lib/systemd/system/php-fpm.service文件,如果没有就重新新建一个
2.复制一下内容到文件内,记着更改一下PHP的文件目录
[Unit]
Description=php-fpm
After=network.target
[Service]
Type=forking
ExecStart=你的文件目录/php/sbin ...
PHP 正则匹配手机号
PHP 正则匹配手机号(国内)
PHP提供了多种内置的正则匹配函数,如php_filter() 、php_grep()、php_match_all()等,最重要的是我们要根据要判定的数据要求,来精准判定,以此来达到最后的目的。
本次,我们判定国内的手机号格式,要求:不匹配卫星电话的号段。
电信网编号总览
序号号码长度备注正则规则
1
13x
1 ...
口罩预约管理系统——数据库设计(前端+PHP+MySQL)
目录
一、背景
二、口罩预约管理系统介绍
三、数据库设计
四、 MySQL创建数据库以及数据表
五、数据库设计总结
本系统项目源码已经上传CSDN资源啦,有需要可以下载!传送门 (https://download.csdn.net/download/Charzous/18776350)
一、背景
2020年的疫情影响了我们的生产生活,政府不断加大力度联防联 ...
Linux服务器部署php环境 版本php-5.6.40(踩坑版)
项目需求要在阿里云ecs ubuntu服务器上部署php环境以便配置前端代码
与前端小哥探讨好兼容版本后,决定使用php-5.6.40
部署这玩意整了我半天。。。(踩坑...移坑!...踩坑...移坑!...)
进入步骤
1. 获取源yum,由于配置出了点问题我放弃了,还是apt-get安装工具
2. 安装php5.6.40
服务器上/usr/local/目录下执行命 ...
php 配置Gmail 发送邮件 PHPMailer
hotmail 获取邮箱授权码
准备
首先你应该登陆https://mail.google.com地址,注册一个Gmail邮箱,然后设置开启IMAP访问
打开设置,开启IMAP访问
获取应用专用密码
专用密码介绍 访问Google账号
安全性>检查是否开启双重认证
开启双重认证成功后,进入设置应用密码
选择您的常用设备,获取一次性授权码
使用PHPMailer ...
php对接“paypal/Checkout-PHP-SDK“支付流程
前言
公司一个网站项目有国外的用户给我们发邮件希望能用paypal支付,于是交给了我,我们这个项目两年前是有对接paypal通道的,但是一直没有开放,测试测了并不能完成付款流程。
看paypal官方是最近有出一个新的sdk,老的应该不在支持更新了,于是打算用新的SDK重新对接,新的github地址:https://github.com/paypal ...
PHP安装Redis扩展
PHP安装Redis扩展
开始在 PHP 中使用 Redis 前,我们需要确保已经安装了redis服务,且你的机器上能正常使用PHP。 接下来让我们安装 PHP redis 驱动,下载地址为:https://github.com/phpredis/phpredis/releases。
下载并安装
cd /opt
wget https://github.com/phpredis/phpredis/releases/tag/5.3.0RC2
tar -zxvf 5.3.0RC2
...
Navicat 使用HTTP代理连接mysql ntunnel_mysql.php
使用Navicat工具调试mysql数据库很方便,因为老的http连接mysql的代码仅支持 mysql_connect,但新的PHP已经不支持此函数了。在网上找的新方法,使用 mysqli_connect 替代。
1. 将 ntunnel_mysql.php 放网站可访问目录2. 使用浏览器测试访问 http://www.z1.com/ntunnel_mysql.php3. 配置Navicat使用http连接mysql,如下图:
...
php 请求库 guzzle 的使用
Guzzle是一个PHP的HTTP客户端,用来轻而易举地发送请求,并集成到我们的WEB服务上。
接口简单:构建查询语句、POST请求、分流上传下载大文件、使用HTTP cookies、上传JSON数据等等。
发送同步或异步的请求均使用相同的接口。
使用PSR-7接口来请求、响应、分流,允许你使用其他兼容的PSR-7类库与Guzzle共同开发。
抽象了底 ...
CTF-WEB:PHP 伪协议
目录文件包含漏洞文件包含函数包含漏洞分类本地包含远程包含伪协议PHP 伪协议使用样例data 伪协议例题:bugku-本地包含例题:bugku-flag 在 index 里例题:bugku-welcome to bugkuctf例题:攻防世界-Web_php_include参考资料
文件包含漏洞
为了更好地使用代码的重用性,可以使用文件包含函数将文件包含进来,直接使用文件中 ...
nginx如何解析php?
nginx本身不支持对外部程序的直接调用或者解析,所有的外部程序包括php必须通过FastCGI接口来调用(FastCGI接口在Linux下是socket)
为了调用CGI程序,还需要FastCGI的wrapper,当nginx将cgi请求发送给这个socket的时候,通过fastcgi接口,wrapper接收到请求,然后派生出一个线程,这个线程调用外部程序处理并返回数据;
接 ...
CTF-WEB:PHP 变量
目录特殊的变量可变变量超全局变量变量覆盖NULL 截断eval() 函数和 assert例题:bugku-变量 1例题:bugku-extract 变量覆盖例题:bugku-Web 8例题:bugku-本地包含例题:bugku-过狗一句话
特殊的变量
可变变量
一个可变变量 “$$” 获取了一个普通变量的值后,用这个值作为这个可变变量的变量名。一个美元符号表示提取变量 ...
CTF-WEB:PHP 反序列化
目录序列化与反序列化magic 方法serialize 和 unserialize 函数访问控制修饰符绕过 __wakeup()例题:bugku-flag.php例题:JMU PHP 反序列化例题:bugku-welcome to bugkuctf例题:攻防世界-unserialize3例题:攻防世界-Web_php_unserialize参考资料
序列化与反序列化
magic 方法
PHP 的面向对象中包含一些魔术方法,这些方 ...
PHP的垃圾回收机制-PHP高级面试题+详解
面试10家公司,收获9个offer,2020年PHP 面试问题
ps:本篇内容包括精选面试题与知识篇。
PHP面试题关于PHP的垃圾回收机制,PHP的垃圾回收机制引用计数 (reference counting) GC 机制,PHP可以自动进行内存管理,清除不需要的对象,PHP面试题分享PHP关于垃圾回收机制的面试题:
★我的php学习交流社群——856460874。群内 ...