![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
web安全
文章平均质量分 65
晴空对晚照
这个作者很懒,什么都没留下…
展开
-
[python]pickle反序列化漏洞(未完结)
基础知识实现:pickle或cpickle,二者仅实现语言不同(前纯python,后C),而cPickle性能更好pickle库标注库,实现了数据序列化和反序列化pickle模块是以二进制的形式序列化后保存到文件(后缀:.pkl),不能直接打开序列化后字符串的表意、序列化的规则->PVM(python序列化和反序列化过程最根本的)PVM解释字节码的解释引擎执行流程PVM将源码编译成字节码python将编译好的字节码转发到PVM(python虚拟机),PVM循环迭代执行字节码指令原创 2022-03-29 17:22:01 · 5424 阅读 · 0 评论 -
[python反序列化]初步
概述数据格式若要将一个系统内的数据通过网络传输给其他系统或客户端,常需将这些数据转化为字符串或字节串并需规定一种统一的数据格式才能让数据接收端正确解析并理解这些数据的含义常用数据交换格式:XML(早期)、JSON若要将数据持久化到本地磁盘(只供系统内使用),则数据格式不要求标准统一了,只要本系统内部可识别即可NT:系统内的转换协议常随编程语言版本的升级而发生变化,故常涉及转换协议与编程语言版本的兼容问题(如:pickle)序列化/反序列化序列化与反序列化:将对象转换为可通过网络传输或可以存储原创 2022-03-29 16:46:19 · 1147 阅读 · 0 评论 -
[PHP反序列化]字符逃逸
本质:闭合分类:字符变多、字符变少共同点:php序列化后的字符串经过替换或修改,导致字符串长度变化总是先序列化,在进行替换修改操作分类字符增多思路:根据序列化后字符串格式与特点,字符个数标识了后面要识别的长度要修改某个属性就要将其替换,可通过传入的字符串控制要将前面的双引号闭合,再传入后面要构造的字符但是此时与前面字符串长度不匹配,构造无效解决:根据替换字符长度变化,将构造的字符串挤出长度范围,成为下一部分(要用替换时的长度变换填补注入字符串的空缺)tips:判断每个原创 2022-03-14 21:52:59 · 5099 阅读 · 1 评论 -
php反序列化[基础]
基础概述序列化:把复杂的数据类型压缩到一个字符串中 数据类型可以是数组,字符串,对象等 函数 : serialize()反序列化:恢复原先被序列化的变量 函数: unserialize()serialize()函数用于序列化对象或数组,并返回一个字符串据访问修饰符不同,序列化后的属性长度和属性值会有不同protected属性被序列化的时候属性值会变成%00*%00属性名private属性被序列化的时候属性值会变成%00类名%00属性名eg.[外链图片转存失败,源站可能有防盗链原创 2022-03-13 10:12:02 · 3871 阅读 · 0 评论 -
[基础]反弹shell--不定期更新
概述定义反弹shell:控制端监听在某TCP/UDP端口,被控端发起请求到该端口,并将其命令行的输入输出转到控制端分析正常情况下:用户在终端输入ssh root@ip登录目标机器,登录成功后即可开始shell操作反弹shell:与正常sshd服务相反,由控制端监听,用途需要到服务器上执行shell命令,但因防火墙等原因,无法由客户端主动发起连接,就可以用shell来满足登录和操作要求反弹👉攻击者指定服务器,受害者主机主动连接攻击者的服务器程序几种方式...原创 2022-03-10 23:40:40 · 2810 阅读 · 1 评论 -
[网鼎杯 2020 青龙组]AreUSerialz
题目source👉buu<?phpinclude("flag.php");highlight_file(__FILE__);class FileHandler { protected $op; protected $filename; protected $content; function __construct() { $op = "1"; $filename = "/tmp/tmpfile"; $原创 2022-03-10 23:13:57 · 1720 阅读 · 0 评论 -
注入(以sqlilabs分析)(未完)
Mysql注入基本知识点常用sql语句增删改查select 列名 from 表名 where 字段1='条件1'and字段2='条件2'insert into tablename(列1,列2...) values(值1,值2...)update 表名 set 列名 = 新值 where 列名 = 某值 #修改数据delete from 表名 where 列名 = 值 #删除某列drop database 库名 #删除库注释“-- ” 有空格!(在url中空格用%2原创 2021-09-05 14:33:00 · 179 阅读 · 0 评论 -
BUUCTF-[ACTF2020 新生赛]Include1
初态只有一个链接点开只有一句话解题思路啥提示也没,先看源码第二个里面没信息,第一个页面里面有个file=flag.php,指向的是第二个页面所以有个file参数,可以考虑是文件包含---->考虑要包含啥没有文件提示,考虑data与日志data用base64版传入,被检测了则尝试日志上传日志修改UA<?php echo'666';@eval($_POST['cmd'])?>echo一下一会好看出来有没有上传成功检查一下有没有上传成功!~~原创 2021-07-18 11:13:47 · 660 阅读 · 3 评论 -
ctfshow-web-AK赛-观己
初态分析2个if-else嵌套:若传入file参数则有变换,没有传入则高亮显示检查file变脸中存储的值是否含有“php”,若没有,则包含该文件有include可以考虑是文件包含方向,但是不知道文件是什么解题思路要上传文件,但是这里没有提示要上传什么----->考虑直接在url传入或传上面有的用data://----->不行过滤掉php,所有跟php有关的都不能用还剩下日志包含用日志包含,先抓包再在其中加入信息改UA头,将木马传原创 2021-07-18 11:07:24 · 145 阅读 · 1 评论