PHP代码审计
文章平均质量分 83
区块链市场观察家
神就是道 道就是规律
规律如来 容不得你思议
按规律办事的人就是神
展开
-
【CNVD证书】Alkacon OpenCms_安装和配置
文章目录下载下载代码压缩包参考文章安装项目根目录Tomcat应用服务器配置安装OpenCms配置opencms参考文章下载下载代码压缩包简介:OpenCms是一个专业级别的开源网站内容管理系统。OpenCms可以非常容易的帮助建立和管理复杂的网站而无需专业的HTML知识。当使用一个复杂的模板引擎来规划站点,它提供一个类似于我们熟知的office应用的所见即所得编辑器来帮助使用者创建内容。OpenCms是一个完全开源的软件,它不需要任何许可费用。访问 OpenCms官网,需要注册才能下载,点击注册提示原创 2022-01-22 15:05:42 · 2535 阅读 · 0 评论 -
Windows 配置 Xdebug 进行动态调试
文章目录下载Xdebug动态链接库配置PHP下载Xdebug动态链接库Mac配置教程之前写过,见 给Mac安装配置PHPStorm和Xdebug访问 官网下载地址,下载 PHP 7.2 VC15 (64 bit) dll 文件。配置PHP本地选择 PHP Version 7.2.9,复制动态链接库 Xdebug.dll 到 PHP目录。打开 php.ini,在末尾粘贴如下配置代码,注意路径要与本地相符,在/tmp/目录下新建一个 xdebug 目录用于存放输出文件。zend_extens原创 2021-12-02 13:45:04 · 715 阅读 · 0 评论 -
CKEditor 历史漏洞复现:CVE-2014-5191(无Poc)
文章目录选择测试版本 4.4.2安装 2015 年发布版本 4.4.2npm 安装 - 未成功bower 安装 - 成功页面引用 CKEditor寻找并测试漏洞选择测试版本 4.4.2根据官方公告的漏洞修复情况来看,第一个选择最好是 4.4.2。安装 2015 年发布版本 4.4.2npm 安装 - 未成功访问 CKEditor 4 官方指南,查看 [Getting Started]模块。新建 down-test 目录,测试不同命令的安装结果。npm 安装命令执行结果npm原创 2021-10-27 10:12:29 · 6120 阅读 · 0 评论 -
CKEditor 版本探测和爬取历史漏洞(整理文)
文章目录版本探测历史漏洞版本探测由于是通过 ckeditor.js 引用 CKEditor JS API,所以在引用 CKEditor 编辑器的页面,可以找到前端代码引用的 ckeditor.js。ckeditor.js 文件默认包含版本信息,位置在正文的第一行,也可以搜索 version(本地搜索到72项)。历史漏洞...原创 2021-10-25 10:38:46 · 8938 阅读 · 0 评论 -
【10月进步一点点】3.系统再探 MVC 模式
文章目录全文参考《symfony 权威指南》 - [法] Francois Zaninotto, Fabien Potencier 著,根据实体书再走一遍 MVC 模式原创 2021-10-24 11:12:58 · 111 阅读 · 0 评论 -
本地搭建 CKEditor 4.16.2 并使用两种模式编写 demo(实验文)
文章目录安装 CKEditornpm 安装最新版 6.14.6编写 CKEditor 4.16.2 框架式 demo加载 CKEditor使用框架式编辑模式生成编辑器保存编辑器的数据完整样例编辑器页面 demo.php展示页面 show.php编写 CKEditor 4.16.2 内联式 demo疑问图片和目录结构npm安装编写 CKEditor demo编辑器页面 demo.php展示页面 show.php安装 CKEditor访问 CKEditor 4 官方指南,查看 [Getting Starte原创 2021-10-23 10:39:18 · 861 阅读 · 0 评论 -
Windows 安装 Symfony 2.2 框架 - 安装成功 !!(实验文)
文章目录1.通过安装器 symfony.phar 安装-出现问题环境变量添加 PHP 命令解析器下载安装器 symfony.phar安装 Symfony创建 demo 应用程序2.官网下载-只找到最新版本下载方式3.Composer 安装 Symfony安装 Composer安装 Symfony 2.2尝试 Symfony 2.3 - 同样报错1.通过安装器 symfony.phar 安装-出现问题参考:【手把手教】windows下成功安装symfony2框架教程,并创建symfony应用安原创 2021-10-22 00:10:03 · 406 阅读 · 0 评论 -
Symfony 2 历史漏洞(选择版本的依据)
文章目录Symfony 历史漏洞百度检索CVE批量搜索CVE-看这个就行了Symfony 2 历史漏洞Symfony 历史漏洞百度检索CVECVE-2021-21424: Prevent user enumeration in authentication mechanismsCVE-2020-15094PHP模板引擎的跳脱验证讯息CVE-2019-10909、验证服务ID有效性CVE-2019-10910以及Cookie杂凑的问题CVE-2019-10911CVE-2018-14773CVE原创 2021-10-21 17:44:19 · 2897 阅读 · 0 评论 -
【10月进步一点点】2.认识Symfony
文章目录Symfony概述简介发展阶段Symfony 核心基本概念阅读材料Symfony概述简介Symfony 完全由 PHP5 编写,兼容大多数数据库系统,能在 *nix 和 Windows 平台上运行。参考:《Symfony 权威指南》第一章发展阶段Symfony 版本首位版本发布时间1.xFabien Potencier 在 2005 年发布,停止维护2.0-2.82011 - 2015,停止维护3.0-3.42015 - 2017,基本停止维护原创 2021-10-20 15:07:52 · 174 阅读 · 0 评论 -
【10月进步一点点】1.单个文件的MVC实现-代码分离
文章目录原生PHP程序分离HTML逻辑和视图分离控制器 / 引擎角色分离逻辑代码中的应用部分参考原生PHP程序实现SQL-Labs第一关的功能,后台PHP需要成的工作大概如下:接收请求数据连接数据库并查询数据接收查询结果前端展示查询结果index.php 源码文件不仅包含两种编程语言,还包含多种功能。对于规模稍大的项目,这样的写法会给开发者带来很多问题,比如:没有错误检测:比如上面的连接数据库代码, 如果连不上了怎么办?糟糕的代码组织,:网站规模扩大的时候,单个文件变的没有办法维护,原创 2021-10-19 23:46:00 · 124 阅读 · 0 评论 -
学习静态代码审计_第三站:测试昆仑镜Kunlun-M项目
文章目录根据Readme.md进行安装根据Readme.md进行安装 请使用python3.6+运行该工具,已停止维护python2.7环境。 安装命令:安装依赖pip3 install -r requirements.txt配置文件迁移cp Kunlun_M/settings.py.bak Kunlun_M/settings.py初始化数据库,默认采用sqlite作为数据库(pip搞了半天)python kunlun.py init initialize在shell终端启动原创 2021-07-29 17:04:57 · 1945 阅读 · 0 评论 -
静态代码审计-大牛师长篇
文章目录LoRexxar师傅个人地址和文章LoRexxar师傅 第一次知道LoRexxar师傅从文章《从0开始聊聊自动化静态代码审计工具》开始,也开启了静态代码审计学习之旅。 刚刚收录LoRexxar师傅的资料时,不小心看了师傅今年5月份写的万字长文《创宇四年》,还得知师傅是隔壁杭电的。个人地址和文章githun地址:https://github.com/LoRexxar博客地址:https://lorexxar.cn/《从0开始聊聊自动化静态代码审计工具》,paper地址https://原创 2021-07-29 17:02:39 · 360 阅读 · 0 评论 -
学习静态代码审计_第二站:简单解读php-parser项目
文章目录前言项目官方说明0x01 PHP解析器0x02 特征0x03 快速开始0x04 文档前言 第一次接触这个项目,是2021强网杯的pop-master题目,也是这道题目给我打开了静态代码审计的大门。后来了解静态代码审计的发展历程,又接触到了昆仑镜项目。php-parse项目下载三遍了,这次要搞定她! PHP Parser 是由 nikic 开发的一款 php 抽象语法树(AST)解析工具。项目地址:https://github.com/nikic/PHP-Parser。 项目作者:ni原创 2021-07-28 11:44:59 · 612 阅读 · 0 评论 -
学习静态代码审计_第一站:编译原理和php
文章目录0x01 编译器的front end阶段和举例内容?0x02 词法分析的任务和单词种类0x01 编译器的front end阶段和举例内容?(1)编译器的作用:把高级语言程序翻译成汇编/机器语言程序。(2)翻译过程:以英译汉举例,首先分析句子语义,然后转换成汉语。要想获得语法树的表示形式,必须根据句子结构分析各短语在句子中充当什么成分,从而判断名词性成分与核心谓语动词之间的成分。要想进行语义分析,必须划分句子成分,必须识别句子中的各类短语,这称为语法分析、句法分析。要想识别句子中的各类短原创 2021-07-27 16:31:51 · 159 阅读 · 0 评论 -
PHP底层的运行机制与原理
文章目录讲在前面0x01 前言0x02 什么是PHP0x03 PHP设计理念与特点0x04 Sapi0x05 PHP执行流程0x06 PHP变量参考讲在前面 很喜欢讲述设计原理和机制的技术文章,全文转载,侵删。0x01 前言最近写PHP代码比较多,也算不上什么精通,感觉要使用php就得知道这门语言的底层原理,这里决定了解一下PHP底层的工作原理。0x02 什么是PHPPHP是一种适用于Web开发的动态语言,是一个用C语言实现,包含大量组件的软件框架。狭义方面来说,可以说是个UI框架(用户界面转载 2021-07-27 16:22:10 · 216 阅读 · 0 评论 -
PHP词法分析函数token_get_all实验
文章目录 PHP4.2开始提供了一个函数叫token_get_all,这个函数就可以将一段PHP代码 Scanning成Tokens。 实验代码:<?phpvar_dump(token_get_all('<?php echo "hello"; $a=1;echo $a+$a;?>'));?>打印信息array (size=17) 0 => array (size=3) 0 => int 379 1 => s原创 2021-07-27 15:32:16 · 309 阅读 · 0 评论 -
静态代码审计的发展
文章目录抽象语法树AST0x01 编译系统的结构0x02 词法分析静态代码审计的发展0x01 关键字匹配0x02 AST代码分析参考抽象语法树AST0x01 编译系统的结构 编译系统的结构:以人工英汉翻译举例,理解翻译过程。 In the room, he broke a windows with hammer 第1步:判断单词的词类/词性(词法分析)–> 根据词类识别句子短语,获取句子结构(语法分析)–> 根据句子结构分析短语充当成分,获取名词短语与核心谓语动词的关系(语义分原创 2021-07-26 10:22:01 · 330 阅读 · 0 评论 -
Mac配置CMS审计环境:ThinkCMFv2.2.3
文章目录搭建和配置CMS项目搭建和配置CMS项目 访问开源社区gitee.com,搜索ThinkCMF,找到https://gitee.com/eded/thinkcmf?_from=gitee_search,下载ThinkCMF 2.2.3版本到本地。 对文件夹进行重命名,复制到Mac的Web目录,先直接访问thinkcmfv2.2.3/index.php,效果如图所示。cp -r thinkcmf2.2.3 /Library/WebServer/Documents/thinkcmfv2.2原创 2021-07-26 10:25:20 · 392 阅读 · 1 评论 -
给Mac安装配置PHPStorm和Xdebug
文章目录配置Apache和PHP重新下载PHP修改Apache和PHP配置文件配置Apache和PHP重新下载PHP Mac系统预装了Apache和PHP,但预装的PHP可能会缺少PHP-CGI模板以及其它资源,所以直接重新下载最新的PHP版本然后安装配置环境变量。 至于下载方式,使用Homebrew工具,可以下载PHP并自动配置环境变量。brew search phpbrew install phpphp -v修改Apache和PHP配置文件 ...原创 2021-07-23 12:28:51 · 1144 阅读 · 3 评论 -
题库:PHP反序列化漏洞详解
文章目录 第1题:简单的反序列化利用。题目地址:120.55.195.183/MyPractice/php-unserialize/test0/index.php 第2题:绕过WAF的反序列化利用,来源[网鼎杯 2020 青龙组]AreUSerialz。题目地址:120.55.195.183/MyPractice/php-unserialize/test1/index.php 第3题:预计pop利用链,涉及class之间的调用。...原创 2021-07-15 14:54:45 · 565 阅读 · 0 评论 -
[网鼎杯 2020 青龙组]AreUSerialz
文章目录class源码参考class源码 没有涉及class之间的调用。(1)寻找跳板方法,先看read()方法,可以读取并返回$this->filename文件内容,但没有输出。(2)寻找输出函数echo,发现output($s)方法可以输出字符串。 1.弱类型绕过验证:2=="2"返回bool(true) 查看销毁函数__destruct(),更偏向于读操作直接查看flag.php。强类型的比较禁止读操作,但后面判断操作数使用的是弱比较,考虑传入$op=2,传入整型数据。 2.p原创 2021-06-26 16:59:35 · 128 阅读 · 1 评论 -
[NCTF2019]phar matches everything
文章目录信息搜集、验证利用条件信息搜集查看WP漏洞利用构造phar文件绕过简单检查Poc信息搜集、验证利用条件####验证利用条件 phar反序列化漏洞的三个条件:可以上传文件。可以执行命令的魔法函数。可以解析phar的函数,并且参数可控。 (1)条件一:上传文件到服务端,满足。 (2)可控参数和解析函数,通过前端代码找到catchmime.php的post参数name,可以访问服务器文件,满足。 (3)可执行的类、以及魔法函数,缺失信息。信息搜集 dirsearch进行目录扫描原创 2021-06-08 14:48:52 · 776 阅读 · 2 评论 -
[GXYCTF2019]BabysqliV3.0-phar反序列化正解
文章目录phar反序列化漏洞利用条件构造payload文件漏洞利用参考收获 CSDN已经记录登录过程,弱口令登录,不再赘述。phar反序列化漏洞利用条件 可以上传文件。可以执行命令的魔法函数。可以解析phar的函数,并且参数可控。 (1)upload.php可以上传文件。 (2)upload.php,具有执行命令的魔法函数。class Uploader{ public $Filename; public $cmd; public $token;function __destr原创 2021-06-08 14:46:46 · 470 阅读 · 0 评论 -
Phar反序列化漏洞原理
文章目录 来自Secarma的安全研究员Sam Thomas发现,可以在不使用php函数unserialize()的前提下,引起严重的php对象注入漏洞。原创 2021-06-08 14:42:21 · 386 阅读 · 0 评论 -
投身于PHP社区
文章目录前言学习资源前言 个人希望能真切地投入到PHP社区中去,学习PHP编程和设计原理。在精通PHP编程/设计原理的基础上,成为PHP审计领域的不逾矩之人。学习资源 PHP官网,https://www.php.net。个人评价:资料比较全面,但详细程序远远不够。 PHP中文网。个人评价:对于入门PHP的简单功能很有帮助,中文友好,适合基础学习。 《PHP 中文手册 mirror》,https://github.com/php/doc-zh。个人评价:PHP 中文文档翻译小组原创 2021-05-20 21:14:01 · 90 阅读 · 0 评论 -
匿名函数create_function()代码注入
文章目录查看PHP函数源码-暂无概述1.本地搜索-无2.PHP官网-无目标版本3.Github-无意外收获1.匿名函数create_function(arg,code)影响和利用场景查看和分析参考查看PHP函数源码-暂无概述 有时候需要查看PHP内置函数的源代码,目标源代码版本是PHP/5.0-7.0版本。值得一提的是,PHP语言是用C编写的。1.本地搜索-无 PHP源码存储在ext目录下,打开ext目录,发现全是.dll应用程序扩展文件。设置文件搜索选项,点击左上角的查看,然后点击右上原创 2021-04-29 23:17:46 · 955 阅读 · 1 评论