默安逐日实验室

其他

Weblogic安全漫谈(二)

前言继本系列上篇从CVE-2015-4852入手了解T3协议的构造后,本篇继续分析开启T3反序列化魔盒后的修复与绕过。Weblogic对于10.3.6推出了p20780171和p22248372用于修复CVE-2015-4852,在补丁详情中又提示了p21984589是它的超集,所以可以直接装这个合集。跟着压缩包里自带的README.txt走就行,注意一点是要改一下bsu.sh中的内存限制,不然会遇到Java
2023年3月7日
其他

ecology 9 SQL 注入漏洞分析

id,自行构造了查询密码的语句,获取管理员权限,测试通过。修复方案官方修复缓解措施厂商已提供漏洞修补方案,请按照升级说明升级该系统最新补丁。引用链接[1]
2023年3月3日
其他

Weblogic安全漫谈(一)

前言@frohoff在2015年初发现commons-collections的反序列化利用链并发布了ysoserial工具[1]。9个月后,@breenmachine对众多知名Java中间件的利用文章[2]使Java反序列化漏洞变得广为人知,Weblogic中首当其冲的就是大家多少都有点耳熟的T3协议反序列化。本篇从CVE-2015-4852入手了解T3协议的构造,作为后续T3反序列化漏洞学习和利用的基础。环境搭建与补丁定位Weblogic官网提供无补丁的初始版本下载[3],为了方便后续调试分析可以先把几个大版本的安装包(Generic)、以及某些有较大安全特性变化的JDK准备好。官方只为付费帐户提供安全补丁的下载权限,但普通账户在高级搜索页面[4]列出对应版本的补丁号与发布时间,结合官方安全公告页的CVE发布时间[5],基本可以让CVE对应上Patch。有了Patch号可以通过CSDN+某宝积分或者某鱼卖家等等方式下到补丁,Patch详情页里可以看到哈希,有官方原版zip洁癖的同学也可以对一下。环境搭建时,用WeblogicEnvironment[6]构建不同JDK与Weblogic版本的docker镜像会比较方便,后续也能用容器区分不同的补丁版本。运行前需要参考issues/8改一下Dockerfile,另外就是根据个人需要做适当调整了,比如Weblogic开启的远程调试端口默认为8453(对应IDEA默认的5005)、调整JDK版本等等。CVE-2015-4852《攻击JavaRMI概述》[7]中说过JavaRMI机制基于JRMP协议通信,Weblogic有一个与JRMP同类的应用层协议就是T3。T3协议用在Weblogic的这类商用产品当中,协议实现并不开源且没有文档,小编主要靠连蒙带猜和逆向去管中窥豹。/u01/app/oracle/Domains/ExampleSilentWTDomain/bin/stopWebLogic.sh用到了T3协议去停掉Weblogic,在执行前挂上tcpdump
2023年2月23日
其他

K8S API访问控制之RBAC利用

前言K8S对于API的访问安全提供了访问控制,主要为4个阶段,本文为第二个阶段——鉴权的RBAC。RBAC是基于角色的访问控制,使用kubeadm安装集群1.6版本以上的都默认开启了RBAC。本文主要研究集群可能存在的利用点及相对应的利用手法。API访问控制K8S的API访问控制就是通过如
2023年2月6日
其他

一点微小的贡献,逐日为云原生安全保驾护航

集群、容器安装、维护、升级和集成应用程序、虚拟机和裸机,公共或私有云上,控制您的混合环境。该漏洞允许对控制器具有读取权限的用户从磁盘读取任意文件。漏洞影响:2.9.22
2023年1月17日
其他

Linux Capabilities利用总结

前言Linux对于权限的管理,系统权限只有root才有,对于普通用户只有一些有限的权限;而对于普通用户如果想进行一些权限以外的操作,之前主要有两种方法:一是通过sudo提权;二是通过SUID[1],让普通用户对设有SUID的文件具有执行权限,当用户执行此文件时,会用文件的拥有者的权限执行,比如常用的命令passwd,修改用户的密码是需要root权限的,但是普通用户却可以使用,这是因为/usr/bin/passwd被设置了SUID,该文件的拥有者是root,所以普通用户可以使用并执行。然而SUID却带来了安全隐患,因为本身需要一部分特权,但是却拥有了root的全部权限,所以为了对root权限进行更加细粒度的控制,Linux
2023年1月13日
其他

K8S后渗透横向节点与持久化隐蔽方式探索

前言通常在红蓝对抗中,我们可能会通过各种方法如弱口令、sql注入、web应用漏洞导致的RCE等方法获得服务器的权限;在当前云原生迅猛发展的时代,这台服务器很可能是一个容器,在后续的后渗透由传统的提权变为容器逃逸,内网信息收集变为集群的信息收集,内网横向变成集群横向,拿下域控或者靶标变成获得集群的管理员权限;但是当拿下集群后如何拿下他们的宿主机呢?以及如何针对集群做持久化呢?本文主要从此来思考,由于目前主流的容器编排引擎和容器集群管理工具是Kubernetes,所以下文以Kubernetes集群为例。KubernetesKubernetes是一个开源的容器编排引擎和容器集群管理工具,用来对容器化应用进行自动化部署、
2023年1月10日
其他

弈 - Codeql 自动运行和项目监控工具

框架中的Context结构体中的Req成员,这个Req就是我们要找的Source点。修改go/ql/lib/semmle/go/frameworks/Macaron.qll文件,加入如下代码:
2022年12月27日
其他

花式反沙箱(上)

编者注:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。前言目前沙箱正成为判断恶意威胁的一种最快速和最简单的方式,因此反沙箱检测在实战中发挥越来越重要的作用,无论是从反溯源还是延长加载器寿命的角度,反沙箱都是红蓝对抗中不可或缺的一环。我会着重讲解我觉得有趣的手法,当然有趣不等于实用,如果你分析过APT组织的样本,会发现那些原理简单且有效的方法会被更多的使用(比如主机名/用户名/进程黑名单,环境检测,用户交互检测等),这些方法往往都是复合使用的,因为很难有一种方法可以适用所有场景。出于学习的目的我们应该都了解一下。我将反沙箱的手法笼统的分为了几类:时间规避类、环境检测类、硬件检测类、信息搜集类、用户交互类、其它类。篇幅原因,在这一篇主要介绍前两类。许多资料由于时间太久,忘记从哪里学到(白嫖)的了,参考文献如有遗漏请各位师傅提醒,文章中有哪里不对也欢迎大佬指正。一、时间规避类本来我想将这类命名为延迟执行类,但是有些手法不属于延时执行但也与时间检测有关,实在不好划分,所以我将其整合为一个类别,都是基于时间的规避技术。1)最基础的反沙箱——延时执行出于性能的考虑,沙箱不可能一直等待一个进程执行,所以有一些聪明的攻击者想到如果在执行恶意代码之前先停一段时间,只要停的时间够长,是不是就绕过了沙箱的检测呢?事实证明在沙箱环境开始识别并防御这种攻击之前,这是可行的。攻击者利用已知的一些Windows
2022年12月26日
其他

云原⽣组件Nacos新型红队手法研究

。通过该漏洞,攻击者可以进行任意操作,包括创建新用户并进行登录后操作。https://github.com/alibaba/nacos/issues/1105在Nacos
2022年12月21日
其他

浅析Pe2shellcode

编者注:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。前言众所周知,对shellcode免杀是很流行的技术,但是直接对exe的免杀方法相对稀缺,如果我们能将exe转为shellcode,然后用shellcode免杀那一套就会简单许多。所以shellcode转exe是一个很值得研究的课题。下面我将大概讲解一下pe2shellcode这个开源项目的思路。Github项目地:https://github.com/hasherezade/pe_to_shellcode。代码分析我们先看看它的项目结构,主要模块有Injector、Runshc、pe2shr。1Injector该文件夹下存在一个main.cpp。这是一个简单的远程shellcode注入的代码,用于将我们的恶意代码注入到其它进程。关于进程注入这里就不赘述了,想学习进程注入的朋友们可以关注一下这位师傅(https://modexp.wordpress.com/)。2Runshc主文件main.cpp。这是个最基本shellcode加载器,可以看出来Injector和Runshc都是给PE转成shellcode之后测试用的,测试shellcode是否能成功运行。然后就是libpeconv。这个工具也是非常经典,拿来用和学习pe结构都特别好(https://github.com/hasherezade/libpeconv),这个工具可以用来处理解析PE文件,可以用以替代windows的Createprocess制作Runshc和pe2shr。很巧的是,pe2shr里面的stub.bin是作者用汇编实现的一个简易版的libpeconv。3pe2shr然后就是文章主角pe2shc,利用了stub32.bin、stub64.bin和main.cpp。stub32.bin和stub64.bin是一个作者用汇编写的一个peloader。接着打开main.cpp看看作者怎么实现的pe2shellcode。前面就是对参数的处理,比如获取需要处理的原生pe路径,设置输出的shellcode路径,然后就是步入is_supporte_pe函数。可以看到有三点:1、必须要有重定位表2、不能是控制台应用程序3、不能是.net程序,.net的pe结构不同之处在于pe头中的IMAGE_OPTIONAL_HEARDER:这个结构中的数据目录DataDirectory包括了映像文件中的CLR头的RVA和大小。而stub并没有处理.net形式PE的代码。
2022年12月20日
其他

还在用winrm吗?浅谈http.sys的使用姿势

防火墙允许443端口入站。总体来讲,使用RD网关远程桌面登录进行网站管理,配置步骤会很繁琐,前置条件也较多,若管理员只是为了传输文件或者不需要GUI界面,则Joker的启动方式会更为方便一些。
2022年11月14日
其他

红队视角下的AWS横向移动

服务是任务的分组,可以运行多个任务。在获取到EC2实例权限时,可以列举运行在EC2上的容器:因为一个Task会绑定一个执行的Role,EC2也会绑定一个Role,所以就有下面三种横向思路:横向思路1
2022年9月28日
自由知乎 自由微博
其他

Fastjson1.2.80漏洞复现

560782c:https://github.com/alibaba/fastjson/commit/560782c9ee12120304284ba98b61dc61e30324b3commit
2022年9月6日
其他

某C2鸡肋漏洞分析:你的CS安全吗?

TeamServer控制Beacon是功能,任何所谓TeamServer攻击Beacon的操作都不能算漏洞可以看出TeamServer是核心,先从它下手。历史漏洞•
2022年5月25日
其他

WMI后门技术的攻击与检测

WMI标准使用者类以及对应的使用方法如下(https://docs.microsoft.com/zh-cn/windows/win32/wmisdk/wmi-start-page):b.
2022年4月24日
其他

红队视角下的公有云基础组件安全(二)

编者注:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。前言在去年年底,我们已经发过一篇红队视角下的公有云基础组件安全的文章,这篇是对上一篇内容的补充,主要为国外公有云如AWS、Google
2022年4月7日
其他

SpringCloudFunction漏洞分析

前言SpringCloudFunction是SpringBoot开发的一个Servless中间件(FAAS),支持基于SpEL的函数式动态路由。在特定配置下,3
2022年3月26日
其他

从DirtyPipe到Docker逃逸

exec指定的/bin/sh,它的内容在第1步中已经被替换成#!/proc/self/exe,因此实际上将执行宿主机上的runc,而runc也已经在第4步中被我们覆盖掉了。对于
2022年3月17日
其他

攻击JavaRMI概述

编者注:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。可能师傅们也遇到过这种情况:因为问题A跟进某个类方法,调试期间遇到一个更纠结的问题B,在费尽周折终于搞清楚后,蓦然回首却忘了自己在干什么(问题A)......JavaRMI与相关攻击面错综复杂,因此本文仅以时间线梳理各种绕过方法与缓解措施的主要逻辑,而不会详述具体调用栈(但会指出关键类方法)。大家可以自行跟进加深印象,也可以参考其它师傅的文章云调试。RMI全称是Remote
2022年2月21日
其他

红队视角下的公有云基础组件安全

前言“公有云是为广大用户、个人或企业提供的云基础设施。公有云就是第三方公有云供应商为用户提供可通过互联网访问的虚拟环境中的服务器空间。然后,用户可以通过购买云服务器、数据存储和其他与云相关的服务等公有云服务来访问这些服务器。虽然用户可通过互联网访问公有云,但数据将通过虚拟化与其他用户的数据隔离,以提高安全性。公有云供应商还主动确保其服务器不受漏洞影响,并使用最新的软件补丁进行更新。但最终还是由使用者负责数据在云中的使用,包括访问、身份验证、加密和应用程序配置。”随着越来越多的企业将应用、存储上云,各大公有云提供了各种
2021年12月22日
其他

容器环境红队手法总结

编者注:本文仅供学习研究,严禁从事非法活动,任何后果由使用者本人负责。引言随着云原生的火热,容器及容器编排平台的安全也受到了行业关注,Gartner在近期发布的《K8s安全防护指导框架》中给出K8s安全的8个攻击面,总结如下:镜像相关:1.
2021年11月9日