黑客网站入侵 编程 搭建 渗透 破解
3.69K subscribers
417 photos
13 links
Download Telegram
映射注入
本地
通过CreateFileMapping 创建一个文件映射对象

通过MapViewOfFile 映射到内存

这两步类似VirtualAlloc 不过申请的内存类型是Mapped

然后执行shellcode 随便怎么执行 这里方便起见用回调
远程
还是先创建文件映射对象 然后映射到内存 写入shellcode

额外的一步是通过MapViewOfFile2 将本地文件视图映射到远程进程

MapViewOfFile2 与 MapViewOfFile 共享文件映射句柄 所以任何对本地映射视图中的有效载荷的任何修改都会反映在远程进程的远程映射视图中的文件中

注意进程句柄必须有PROCESS_VM_OPERATION 权限 所以这里创建完进程后通过OpenProcess指定PROCESS_VM_OPERATION再拿进程句柄 pi.hProcess不行

方便起见这里用CreateRemoteThread 如果这里用EarlyBird的话就是MapViewOfFile联动EarlyBird
通过篡改函数 导致函数执行其它逻辑

首先是通过loadlibrary加载dll到内存 然后通过GetProcAddress检索地址

这里篡改的函数需要是非常用的 否则可能会出现问题 这里选择bthprops.cpl中的BluetoothFindDeviceClose

首先是获取地址

LPVOID sacrificedAddr = GetProcAddress(LoadLibrary(L"bthprops.cpl"), "BluetoothFindDeviceClose");
修改内存权限为RWX 写入shellcode
初步审计与漏洞检测
首先,我们通过get_rce_vulnerability_feedback函数对代码进行初步审计。如果LLM分析到存在潜在的RCE漏洞或不安全的命令执行调用,反馈将被用来生成修复建议。
自适应反馈机制
在初次审计后,adaptive_feedback_loop函数会启动自适应反馈机制。如果漏洞未能修复,LLM根据修复建议对代码进行修改,并再次进行审计。这个过程会持续进行多次,直到漏洞被彻底修复,或者达到最大尝试次数。
修复代码并重新审计
fix_code_and_reaudit函数接收LLM给出的修复建议,修改代码后再次审计,确保修复有效。如果反馈仍然指示有漏洞存在,过程会继续。
提取修复建议
在每一轮反馈中,extract_fix_suggestions函数提取LLM给出的修复步骤,帮助开发者理解如何修复漏洞,并确保后续代码不会再有类似问题。
在tomcat下运行的jsp代码
这段代码是一个使用 JSP(JavaServer Pages)编写的简单网页脚本。它的功能主要是执行 Windows 系统命令并将其输出结果返回到网页。以下是对代码的逐行解释:
页面指令:

<%@ page language="java" contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.io.*"%>
○ 第一行设置了 JSP 页面使用的编程语言(Java)、内容类型,以及页面编码格式。
○ 第二行导入了 java.io.* 包,以便进行输入和输出操作。
java 凯撒加密
凯撒加密是一种古老的加密技术,它属于替换加密的一种,得名于罗马的尤利乌斯·凯撒。其基本原理是通过将字母表中的字母按照固定的位移量进行替换,从而达到加密的目的。
凯撒加密 就是一个字符串ascii进行偏移 。
代码定义了一个名为 ByteCodeEvil 的类,它的主要功能是执行一个系统命令并将其输出捕获到一个字符串中。接下来,我将详细解释每个部分的功能和工作原理:
类和构造函数
代码导入了 Java 的 URLClassLoader、URL 和 Method 类,这些类分别用于动态加载类、处理 URL 和反射调用方法。
undefined 设置内容类型:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
创建 URLClassLoader 实例,通过指定 tools.jar 文件的路径来加载类 sun.tools.attach.WindowsVirtualMachine,这是 Java 的工具包之一,通常用于操作 Java 虚拟机。
undefined 遍历方法并查找 enqueue:暂停当前线程 4000 毫秒(4 秒),可能是为了给操作一些时间完成。
WebLogic coherence UniversalExtractor 反序列化 (CVE-2020-14645) 漏洞分析

该漏洞是针对于CVE-2020-2883的补丁绕过,CVE-2020-2883补丁将MvelExtractor和ReflectionExtractor列入黑名单,因此需要另外寻找一个存在extract且方法内存在恶意操作的类,这里用到的类为com.tangosol.util.extractor.UniversalExtractor,存在于Coherence组件。

其本质上,都是通过ReflectionExtractor调用任意方法,从而实现调用Runtime对象的exec方法执行任意命令,但补丁现在已经将ReflectionExtractor列入黑名单,那么只能使用UniversalExtractor重新构造一条利用链,这里使用poc2的入口即CommonsCollections4链的入口进行构造。
禅道11.6注入分析

(需要用户权限)

第一眼看到这种传参方式,我心里是懵逼的,利用到的文件都看不出来,所以先研究一下他的URL是怎么写的。

PS:使用禅道前要将本地的apache服务和mysql服务关闭,否则会发生冲突

PS:由于环境限制,没办法搭建调试环境,所以文章中若是有错误内容还请师傅们务必斧正!!!∑(゚Д゚ノ)ノ

URL地址格式分析

应用名为:pms,根路径为index.php路径的上级路径,应用类名为router。

这里最后返回了一个实例化的类,将app名字与根路径作为参数传入。由于这里创建了一个新对象,先去router类中看一下是否有__construct()函数,没有找到就去他的父类baseRouter里找,果然在baseRouter中发现了__construct()函数
Web 缓存纠缠:导致中毒的新途径

缓存遍布整个网络的网站,在用户之间谨慎地处理数据,但很少对其进行深入研究。在本文中,我将向您展示如何远程探测缓存的内部工作原理以发现细微的不一致之处,并将其与小工具结合起来构建宏伟的漏洞利用链。

这些缺陷遍及缓存的所有层面 - 从庞大的 CDN,到缓存 Web 服务器和框架,一直到片段级内部模板缓存。基于我之前的缓存中毒研究,我将展示如何利用误导性转换、幼稚的规范化和乐观的假设来执行大量攻击,包括持续毒害在线报纸的每一页、破坏国防部内部情报网站的管理界面以及在全球范围内禁用 Firefox 更新。

超越先前的研究
2018 年,我发表了《实用 Web 缓存投毒》一书,其中展示了如何使用非标准 HTTP 标头(例如X-Forwarded-Host和X-Original-URL)来投毒缓存并入侵网站。这是一种利用缓存设计缺陷的直接方法,因此对所有缓存的影响相同。

在本文中,我将针对几乎总是包含在缓存键中的两个请求组件 - Host 标头和请求行。如果将这些组件直接放入缓存键中,则不可能将它们用于缓存投毒。然而,仔细检查后,我们会发现这些值经常被解析、转换和规范化,从而引入了漏洞,我们可以利用这些漏洞。这些漏洞源于危险但故意为之的功能,一直到解析错误和简单的转义问题,这些问题让我们使完全不同的请求发生冲突。