# 序列化 # 1. 定义: 利用 serialize() 将一个对象转换为字符串 1.1 先看一下直接输出对象 <?php class test{ public $name="ghtwf01"; public $age="18"; } $a=new test(); print_r($a); ?>效果: 1.2 利用 serialize() 函数将这个对象进行序列化成字符串然后输出,代码: <?php class test{ public...

# SQL 注入 # 一、注入分类 注入点分类 数字型注入 字符型注入:单引号,双引号,加括号等等 提交方式分类 GET 方式注入 POST 方式注入 COOKIE 方式注入 HTTP 头部注入:XFF,UA,REFRERE 是否回显 联合查询 布尔盲注 报错注入 时间盲注 二次注入 堆叠查询(同时执行多条语句) # 二、注入判断 工具扫描:网站漏扫工具,AWVS、AppScan、OWASP-ZAP、Nessus 等 手动测试: 单双引号,括号,进行组合测试,看是否报错 对于数字型 ?id=3-1 ?id=2# ​ 如果显示的是 ?id=2...

# 信息收集 面对任何一个问题,尽全力去熟悉他们我们才有可能更好的解决他们,这个熟悉的过程就是信息收集 # 1 查看源代码 # 1. 直接查看 view-source 主要注意源代码的中的注释,类似于 <!–> 注释里面一般藏有一些敏感信息,比如有关路径,题目的有关信息,甚至是 flag 源代码中链接的一些奇怪路径 (网站后台目录,编辑器) 根据 ctfshow-web382 , 可以看到 3 链接有一个链接比其他链接多了一个目录,逐个路径 alsckdyf/layui/css , alsckdyf/layui , alschdyf/...

# 安全的即时通信系统 # 1 系统设计 # 1.1 设计目标 本项目旨在实现一个安全的即时通信系统,主要关注点包括信息的加密传输、信息完整性的保障以及用户的隐私保护。系统的主要特点是: 新用户注册与登录功能,用户身份的安全验证,信息加密传输,采用公钥和对称密钥结合,密钥管理功能,信息完整性的校验,用户管理功能。 # 1.2 信息要求 用户注册与登录: 系统应允许新用户创建账户,并提供登录功能。注册过程中应收集必要的信息,如用户名、密码、电子邮件等。密码应通过哈希等安全手段存储。 即时消息交换: 用户应能够实时发送和接收文本消息。系统应支持多种消息类型,如文本、图片、文件等。 # 1.3...

# 文件包含: 将任何的 php 文件或者非 php 文件利用函数包含进 php 文件之后都会被当作 php 代码解析。 PHP 提供一些函数来进行各个文件之间的相互引用,并提供了一些协议用于读取或者写入文件。 # 特殊文件包含: # 最常见的使用: include('flag.php') 包含 flag.php 文件 php 代码执行的时候会写去访问 flag.php,就好似把 flag.php 文件全部放在了当前文件,并且执行包含后的这个文件 ==============> 不仅包含也会执行 # 其他函数: include 、 require 、...

# 命令执行 # 2.1 rce 中常用的 php 代码执行函数 eval() , assert() , preg_replace() , create_function() , array_map() , call_user_func()/call_user_func_array() , array_filter() , usort()/uasort() , file_put_contents() # eval() 执行一个字符串表达式,该字符串必须是合法的 PHP 代码,且必须以 分号...