黑客网站渗透入侵破解拿权限
10.4K subscribers
2.39K photos
108 links
Download Telegram
利用 Supabase 进行数据泄露
在之前的报告中,我们介绍了恶意软件使用的各种 C2 服务器。然而,这种恶意软件因其对开源数据库服务 Supabase 的独特使用而引人注目。Supabase 是一种开源后端即服务,类似于 Firebase,提供基于 PostgreSQL 的数据库、身份验证、实时功能和存储。它可以帮助开发人员快速构建应用程序,而无需管理后端基础设施。此外,它还支持 RESTful API 来管理其数据库。该恶意软件利用这些 API 来存储被盗数据
/网站渗透 /黑客编程技术
/软件渗透 /提取数据
/网站权限 /网站入侵破解
有需求的找我
@MoA_Ke
适用于Tomcat 8,9,10,因为8以下不能调用getContextClassLoader()获取到StandardContext,但是可以用于shiro回显

从ApplicationFilterChain找request和response还是太深的调用栈了。

从最开始的Http11Processor开始看起

其核心方法肯定是service(),在service()方法内,调用了getAdapter().service(request,response),其中的参数request,response静态变量分别是Request和Response对象

获取Request、Response,那参照上面JSP获取StandardContext的方法2

我草,直接在Http11Processor反射取request和response字段的值不就完了,那怎么获取当前环境的Http11Processor呢?

request和response并不是Http11Processor的字段,而是其父类AbstractProcessor的字段

找下看request和response在哪赋的值,栈里面可以看出在Http11Processor.service的上两帧,调用了AbstarctProtocol$ConnectionHandler#process
在调用到AbstractProcessorLight之前,有两个processor == null的if块。第一个是从recycledProcessors出栈,也就是看看缓存表里是否已有Processor了;第二个if块内,也就是缓存表里没有Processor,就调用createProcessor()新建一个。
/网站渗透 /黑客编程技术
/软件渗透 /提取数据
/网站权限 /网站入侵破解
有需求的找我
@MoA_Ke
LDAP概述
对于那些并不熟悉Lightwieght Directory Access Protocol (LDAP)人来讲,它大概像是一个目录信息。虽然LDAP在很多平台被使用,但在windows的域环境中它却是 Active Directory Services (ADS)的核心,ADS负责windows域的认证和授权,但也储存了大量的信息,这些信息包括但不限于域用户,计算机用户,域用户组,安全策略和软件更新。每一个对象都有多种属性与之关联,并且其中大部分的属性都可以通过LDAP查询。比如每一个用户都有一个”Created”的属性包含了账号创建时间。同样的每一个账户都有一个” ServicePrincipleName”属性,这也是本文接下来的重点。

微软的文档中是这样陈述的:”ServicePrincipleName(SPN)是客户端用来唯一标识一个服务实例的名称”,在略读后发现这大概为了便利widnows域中的Kerberos认证,但我们可以用它来做一些其他的事,对于我们来说,多值的ServicePrincipleName是很方便的。因为在Active Directory中任何一个用户和计算机对象都储存了账户在域中的运行的服务信息。所以这就可以很方便的定位像IIS、SQL Server,及LDAP。同样也可以很方便的查询到对应的用户在哪里登陆(比如域管理员)。这相对来说要简单些,因为SPN有一个标准化的命令约定。SPN格式为SERVICE/HOST,但有时也会包含端口像 SERVICE/HOST:PORT。 比如,如果一个域用户曾在acme.com域中运行DNS和SQL Server服务
/网站渗透 /黑客编程技术
/软件渗透 /提取数据
/网站权限 /网站入侵破解
有需求的找我
@MoA_Ke
1
Zabbix SQL Injection

该漏洞存在于httpmon.php脚本中,未登录用户也可访问。

这是由于Zabbix预先设定了一个guest用户,未登录用户都被设定为guest用户的访问权限。

如果guest用户被禁用,将不能访问httpmon.php脚本,利用该漏洞。

可以在管理员的管理面板中禁用guest用户。

从下图中可以看出来applications参数存在sql注入。

进入了$application变量中,跟踪add2favorites函数

进入$values数组的value_id中,再往下跟踪就可以发现变量没有经过任何过滤进入到sql语句中

变量处理经过了一层mysql_real_escape_string函数的过滤。

在上面那个漏洞中,下面的语句可以读取管理员的用户名与密码md5的hash值
/网站渗透 /黑客编程技术
/软件渗透 /提取数据
/网站权限 /网站入侵破解
有需求的找我
@MoA_Ke
1
STRUTS2的getClassLoader漏洞利用

在struts2任何一个action运行之前,一旦接受到用户提交参数xx=zzzzz时,就由Ognl负责调用对应的当前action的setXxx方法,至于set方法到底是干什么的,其实不重要,里面的逻辑也不重要,我们只关注这个方法调用了,参数传递了。这种对属性的改变,有时候是可以很大程度的影响后续复杂逻辑。

Object是java的基础类,所有的class生成的对象,都会继承Object的所有属性和方法,因此当前action无论是什么代码,必须有Object自带的getClass方法,这个方法会返回一个Class对象,Class对象又一定会有getClassLoader方法,最终在每个action都可以

上传webshell的可能性研究
多次的远程代码执行漏洞洗礼,我一直在脑海里模拟“ServletContext被控制了,这次能干什么”,究竟有哪些路线,可以通往代码执行的领域。

比如:Struts2会去servletContext里取到一个值,然后把它作为Ognl执行掉。这个太简单了,我自己都不信。

Ognl的Context树形结构

servletContext被转换成Map,变成了图中的application子项,这个位址很尴尬,如果是上一层Node,从上到下找到value Stack,确实有实现这个思路的可能,但现在看来,这条路断了,它不支持找到父节点。

任何一个Action的classLoader都是org.apache.catalina.loader.WebappClassLoader,这是漏洞的源头。
/网站渗透 /黑客编程技术
/软件渗透 /提取数据
/网站权限 /网站入侵破解
有需求的找我
@MoA_Ke