记录黑客技术中优秀的内容, 传播黑客文化,分享黑客技术精华

深入理解PHP Phar反序列化漏洞原理及利用方法(一)

概述Phar反序列化漏洞是一种较新的攻击向量,用于针对面向对象的PHP应用程序执行代码重用攻击,该攻击方式在Black Hat 2018会议上由安全研究员Sam Thomas公开披露。类似于对编译二进制文件的ROP(Return-oriented Programming)攻击,这种类型的漏洞利用PHP对象注入(POI),这是面向对象的PHP代码上下文中的一种面向属性的编程(POP)。由于其新颖性,这种攻击媒介在过去的几个月中越来越受到安全届的关注,导致在许多广泛部署的平台中,接连发现远程代码执行漏洞,例如:· Wordpress < 5.0.1 (CVE-2018-20148)· Drupal 8.6.
发布时间:2019-09-05 13:25 | 阅读:10015 | 评论:0 | 标签:漏洞 PHP

从PHP底层看open_basedir bypass

前言有国外的大佬近日公开了一个php open_basedir bypass的poc,正好最近在看php底层,于是打算分析一下。poc测试首先测试一下:我们用如上源码进行测试,首先设置open_basedir目录为/tmp目录,再尝试用ini_set设置open_basedir则无效果,我们对根目录进行列目录,发现无效,返回bool(false)。我们再尝试一下该国外大佬的poc:发现可以成功列举根目录,bypass open_basedir。那么为什么一系列操作后,就可以重设open_basedir了呢?我们一步一步从头探索。ini_set覆盖问题探索为什么连续使用ini_set不会对open_basedir进行覆盖
发布时间:2019-04-15 12:25 | 阅读:39447 | 评论:0 | 标签:Web安全 PHP

如何绕过过滤器和WAF规则实现PHP远程漏洞利用

概述在本文中,我们将主要分析如何绕过过滤器、输入清理和WAF规则,实现PHP的远程代码执行。通常,当我在写这样的文章时,人们总是会问,“真的有人写出这样的代码吗?”并且通常都不是疑问句。在再次被问到这个问题之前,我要抢先回答:“是真的。”在研究过程中,我们对两个易受攻击的PHP脚本进行了测试。其中,第一个脚本非常简单,并且近乎愚蠢,但它只是为了重现一个远程代码执行漏洞的利用场景:显然,第六行存在问题。第三行尝试拦截注入system、exec或passthru之类的函数。在PHP中,有许多其他函数可以执行系统命令,但我们重点关注这三个函数。该脚本在CloudFlare WAF后面的Web服务器中运行。和往常一样,我使用了
发布时间:2018-12-30 12:20 | 阅读:85708 | 评论:0 | 标签:技术 PHP 漏洞

【干货分享】PHP漏洞挖掘——进阶篇

阅读: 184从常见的PHP风险点告诉你如何进行PHP漏洞挖掘,以及PHP渗透测试中的黑盒与白盒。你与PHP大师只有这一篇文章的差距!文章目录一. PHP漏洞挖掘特点PHP漏洞组成二. PHP白盒审计一句话描述我们要做的工作被引用过很多次的一张图一些特别的代码结构当然还有“坑爹”的PHP特性见过很多次的一个界面三. 如何进行漏洞挖掘——常见的PHP风险点可操作的参数名变量覆盖magic_quotes_gpc下面几种情况可能会导致GPC被绕过1.$_SERVER数据库操作容易忘记使用单引号保护宽字节注入GPC的高级“用法”eval/preg_replace命令执行ThinkPHP一键getshell非常见命令执行函数其它PHP漏洞特殊字符截断当然还有一些在梦游的程序员…四. 黑盒与白盒的统一黑盒与白盒平时的学习应
发布时间:2017-09-15 22:10 | 阅读:406829 | 评论:0 | 标签:威胁通报 php PHP 漏洞利用 php 漏洞扫描 php上传 漏洞 php在线测试 php文件包含漏洞 php测试代

PHP网站渗透中的奇技淫巧:检查相等时的漏洞

*本文原创作者:sarleon,属Freebuf原创奖励计划,未经许可禁止转载 PHP是现在网站中最为常用的后端语言之一,是一种类型系统 动态、弱类型的面向对象式编程语言。可以嵌入HTML文本中,是目前最流行的web后端语言之一,并且可以和Web Server 如apache和nginx方便的融合。目前,已经占据了服务端市场的极大占有量。 但是,弱类型,一些方便的特性由于新手程序员的不当使用,造成了一些漏洞,这篇文章就来介绍一下一些渗透中可以用的特性。 上面都是废话,下面我们进入正题 1.弱类型的比较==导致的漏洞 注:这些漏洞适用于所有版本的php 先来复习一下基本的语法:php中有如下两种比较符号:两个等号和三个等号(这一点和Javascript)有些类似 $a==$b $a===$b 我们来一下
发布时间:2017-03-23 22:00 | 阅读:173956 | 评论:0 | 标签:WEB安全 新手科普 php 漏洞

PHP成为首个在内核中嵌入加密库的编程语言

PHP团队最近投票一致通过了“将Libsodium库集成到PHP内核中”的决议,使得PHP成为首个使用公认现代加密库的编程语言。Libsodium是个便捷,可交叉编译,现代化,易于使用的软件库;可用于加密,解密,签名,密码哈希等。和PHP源代码一样,Libsodium是用C编写的。如今,很多公司,如Keybase,数字海洋,Riseup,Yandex,Wire和Zcash,已经他们的服务中部署Libsodium。提出加入Libsodium建议的的开发者是来自Paragon Initiative公司的首席开发官Scott Arciszewski,他曾在过去的开发会议中提倡在PHP CMS中加入更强大的加密技术。Libsodium将在PHP 7.2中出现PHP团队决定在2017年年底推出的PHP 7.2中加入Lib
发布时间:2017-02-23 22:30 | 阅读:115966 | 评论:0 | 标签:资讯 Libsodium php 加密库 加密

74cms前台某处Getshell漏洞(SSTI)

from:90sec 这是一个服务端模板注入漏洞。 Application/Home/Controller/MController.class.php <?php namespace HomeController; use CommonControllerFrontendController; class MController extends FrontendController{ public function index(){ if(!I('get.org','','trim') && C('PLATFORM') == 'mobile' && $this->apply['Mobile']){
发布时间:2017-02-21 07:40 | 阅读:444058 | 评论:0 | 标签:PHP 74CMS getshell 前台 cms 漏洞

蝉知 5.6 getshell

前台注入 在/chanzhieps/system/module/cart/control.php页面的add函数 public function add($product, $count) { if($this->app->user->account == 'guest') { /* Save info to cookie if user is guest. */ $this->cart->addInCookie($product, $count); $this->send(array('result' => 'success', 'message
发布时间:2017-01-21 05:20 | 阅读:206890 | 评论:1 | 标签:PHP 蝉知CMS

dedeCMS友情链接getshell漏洞分析

在tpl.php中/*--------------------------- function savetagfile() { } 保存标签碎片修改 --------------------------*/ else if($action=='savetagfile') { if(!preg_match("#^[a-z0-9_-]{1,}.lib.php$#i", $filename)) { ShowMsg('文件名不合法,不允许进行操作!', '-1'); exit(); } require_once(DEDEINC.'/oxwindow.class.php'); $tagname = preg_replace("
发布时间:2017-01-02 13:35 | 阅读:381636 | 评论:0 | 标签:PHP dedecms 友情链接 cms 漏洞

Finecms 任意文件下载

Author:Sinner 漏洞文件: controllersApiController.php Line 54 public function downAction() {         $data = fn_authcode(base64_decode($this->get('file')), 'DECODE');         $file = isset($data['finecms']) && $data['finecms'] ? $data['finecms'] : '';         if (empty($file)) {             $this->msg(lang('a-mod-213'));         }         if (
发布时间:2016-12-27 08:20 | 阅读:161058 | 评论:0 | 标签:PHP finecms 任意文件下载 cms

FineCMS后台getshell

简单看了下该程序的mvc,锁定了一个可疑处,config/site.ini.php 与后台此处对应 点击添加网站 网站名称随便写 绑定的域名写为’,phpinfo()【注:此处为了省事仅用phpinfo作为例子,实际此处可做任何操作,只需要在’,后面添加php语句即可,可通过file_put_contents进行写入文件操作】 然后直接点击提交即可 然后访问/index.php?s=admin&c=site即可看到phpinfo输出的信息
发布时间:2016-12-07 01:30 | 阅读:168881 | 评论:0 | 标签:PHP finecms cms

挖掘PHP禁用函数绕过利用姿势

前言 记得以前乌云还在的时候,有个哥们在zone里问: php如果把dl,exec,system,passthru,popen,proc_open,pcntl_exec,shell_exec  这些函数都禁用了,应该如何执行命令。 当时我看他给出的php版本很低,就直接用反序列化uaf直接调用exec的原型强行反弹了个shell。不过最后那哥们找到了一种利用LD_PRELOAD 和 mail函数的方法进行了绕过,见原drops上的文章 《利用环境变量LD_PRELOAD来绕过php disable_function执行系统命令》。这个方法其实在08年就已经有人提出来了:php-bug 。应该还是有人记得这个哥们的,反正我是特别佩服他。 其实在php中,类似的问题还是存在很多的,本文将记录一次完整的php禁用函数
发布时间:2016-11-23 04:00 | 阅读:143094 | 评论:0 | 标签:代码审计 php 利用姿势 禁用函数 禁用函数绕过 绕过

PHP Hacker代码审计秘籍

*本文原创作者:VillanCh,转载须注明来自FreeBuf.COM  这篇文章不是给 PHP 程序员看的,而是给渗透测试爱好者准备的,( ̄︶ ̄*))。 本文不是 PHP 教程,本文只针对 PHP 的各种奇淫技巧进行整理和证明,在进行渗透测试(WEB 安全)的学习中,经常需要涉及到 PHP 编程,或者 PHP 编写 Webshell 或者一句话木马,一般的 PHP 马经常被各种软件发现被杀。与此同时,网络经常流传一些免杀马(当然免杀一句话很有可能藏后门大家都是知道的),那么那些免杀是怎么做出来的?打开看,可能就是非常难看难以阅读的 PHP 代码(为了混淆各种杀软的侦察)。  当然,怎么样写出那种奇奇怪怪的东西呢?这就取决于你对 PHP 这门语言的了解程度:你是一个 PHP 开发者,通过 P
发布时间:2016-11-18 22:50 | 阅读:112737 | 评论:0 | 标签:新手科普 php 渗透

php代码审计基础

1.session本地浏览器中的变量,是可控的.PHP中还有一个变量$_session每个访问者的sessionID是不同的.这个值就用来区分每个用户.PHPSESSID=cmebf7jkflu5a31vf67kbiopk42.$_files 上传变量包含了:js验证,扩展名验证,MIME验证,目录验证js验证简单,不加载就可以了。扩展名验证, 如php,php3MIME验证, text/phpdemo: if (($_FILES['upfile']['type'] == 'image/gif') || ($_FILES['upfile']['type'] == 'image/jpeg')目录验证,利用iis6的特殊解析,这里主讲php,就不细说了。3数字型注射直接使用intval($_GET[id]),强制转
发布时间:2016-11-18 04:20 | 阅读:113256 | 评论:0 | 标签:Code MySQL PHP

Metinfo5.3.10版本Getshell

好久没代码审计了,今早上cheery师傅跟我说了一下这个洞,尽管这个洞已经被修复了,但是还是比较新的,看了下没那么难,就简单写下步骤: 0x01 首先看一下配置的文件include/common.inc.php 发现Metinfo采用了伪全局变量的这样一个设置,那么是否会有变量覆盖之类的漏洞,grep下: 0x02 觉得login那里应该会发生点什么故事XD 既然这样的话,看了下后台登录的地方: login.php login_check.php login_out.php 0x03 一共三个文件,看一下check,既然包含了common.inc.php,那么就意味着里面存在一些可控的变量: 果不其然,对于参数并没有初始赋值,比较开心XD 研究了下发现有两种做法: 0x01:知道路径的话: 既然可以r
发布时间:2016-11-09 04:55 | 阅读:112058 | 评论:0 | 标签:PHP getshell metinfo 漏洞

乐尚商城CMS 前台任意文件上传

from: 90sec author:LionEiJonson 0x01:序言 前段时间我发表了”乐尚商城后台任意文件上传”,当时没注意到它整个后台调用的方法都没做登录验证,所以尴尬的以为是后台 getshell,昨天经论坛一朋友提醒才明白是前台 getshell,如果需要看代码分析的朋友可以传送到 ( https://forum.90sec.org/forum.ph … &extra=page%3D1 ),我这里主要谈谈怎么前台 getshell,顺带请教个问题,望大牛赐教。 0x02:前台 Getshell 我们先本地搭建,登录后台测试是否可以任意文件上传,顺带抓取 POST 包: 通过截图可以看到 shell 成功上传,但想要利用这个洞的时候有点棘手,因为
发布时间:2016-10-17 00:40 | 阅读:136774 | 评论:0 | 标签:PHP getshell 乐尚商城CMS 前台 文件上传 漏洞 cms

公告

关注公众号hackdig,学习最新黑客技术

推广

工具

标签云