自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

被遗弃的庸才博客

当你的才华还支撑不起你的野心的时候,你就应该静下心来学习。

  • 博客(193)
  • 资源 (1)
  • 收藏
  • 关注

原创 mmc20创建进程c/c++实现

,在查找有意思的包含exe方法的时候发现了mmc20,且接口是6efc2da2-b38c-457e-9abb-ed2d189b8c38。但常见的使用mmc20都是用的vbs和powershell来创建的进程,这里提供c/c++的实现。最近写了一份遍历clsid所有接口的代码(

2023-09-19 16:46:36 351 2

原创 ZwProtectVirtualMemory使用出现的问题和

需要注意的是这个函数未文档话,网上随便找了个定义,发现报错0xC00000F1注意第三个参数应该是SIZE_T*类型了,PULONG传进去如果复制的时候是ULONG,前面的高4位不会清零会出错。

2023-08-10 19:27:43 484

原创 某vm样本的分析

从遥远的东方收到的一个样本,好嘛!打开之后一直不停的在创建和结束进程,又是vmp。还是老方法,dmp下来之后看看,好嘛,main函数被vm了,代码一堆不好分析。这次提高了难度,f5不了了,右键回收站。看看行为,一直在重复创建和结束进程,并且会生成两个文件,这两个文件不能直接打开,但是不影响(你复制到其他目录就能正常打开了)。你这一直创建和结束的岂不是想卡死我的虚拟机?想办法先干他娘的一炮,这类有守护进程的程序往往需要注意以下它的命令行参数,看看它有什么参数?

2023-04-14 15:53:53 666 1

原创 某vm加壳分析

早上哥们儿那里发了一个样本过来,让弟弟简单的看看这是个什么东西,好嘛!点开就是vm警告,右键回收站。还是得给好哥哥一点面子,在看看,放进虚拟机之后直接运行,现象就是闪一下,也没有vmp的警告,你这闪一下是什么意思?吓唬谁呢?

2023-04-10 16:51:07 744

原创 重写部分调试体系的DebugPort隐藏

能正常调试vmp和se,并且没有debugport的痕迹(如果你想调试某游戏,我的评价是我不知道,因为我不玩)。al-khaser_x86下除了父进程和watch memory,debug的痕迹都没有了(当然检测的方式还有窗口名和进程名的方式,这里并没有处理,你可以参考hyperhiden把这些也加上),NtYieldExecution在当前开了vt的虚拟机下就是bad(不管)。

2023-01-11 15:00:16 1436

原创 关于sysdiag的利用

因为之前装了某绒,某绒又有一个比较好用的ark工具某绒🗡,想着应该有机会利用一下它的驱动。接着在driver下面找到了它的驱动,简单分析了一下,发现有可以利用的ioctl。这里有duphandle,操作和之前的利用一样复制system的物理内存句柄就行了。

2022-12-14 11:02:58 1845 1

原创 关于操作PPL进程引发的一些问题

之前发布过一篇关于procexp的利用,但是最近有brother说,最新的版本不能利用了,然后就去下载了最新版本的。发现判断了是不是受保护进程,不是就拒绝。这里简单看一下这个函数,发现对比的是_PS_PROTECTION,其实就是Windows Vista之后引进的ppl保护机制,。好了,现在想办法怎么让过。1、找能够清零PsIsProtectedProcess_180005238全局变量的漏洞;2、找能利用的ppl进程;

2022-12-08 17:04:14 842 1

原创 某CCC-BASE的逆向

很早之前就已经分析过一遍,一直放在。今天突然又看到了,放着也是放着,索性拿出来分享一下;这里的版本是22-03-14,时间比较久了,有些可能说的不全,可能和你的分析有差别,以你的为准。

2022-10-28 11:18:51 1359 3

原创 WFP实现的端口复用

部分服务器只开80/443端口,那么只往服务器的80/443发送数据,而有的情况下,我们需要在内部监听一个9999端口,怎么让数据能正常通过80然后到9999呢?

2022-09-30 09:52:28 1781

原创 ProcExp的利用

事件的起因是这篇,简单来说就是ark工具能够打开和复制system的句柄,其中\Device\PhysicalMemory的句柄可以映射到当前进程,从而直接操作物理地址。

2022-09-30 09:35:28 3485

原创 VMP3.6的反调试和反虚拟机

看雪上有人泄露了3.6.0.1406,第一时间先下载下来,然后加壳之后扔进x32dbg,A debugger has been found....... 还能怎么办?右键回收站。正准备放弃的时候,想了想要不在看看,好吧那就在看看,结果一段瞎分析之后定位到了scylla没有处理完善的函数NtQueryInformationThread和QueryInformationProcess你问我怎么定位的,全是某牛姓男子给我说的,还有需要注意的时这些api下执行是不会断下的,因为它自己shadow了一份syst

2022-06-27 14:31:59 4590 1

原创 VMP 2.13.8 反调试问题

拿到一个样本,加的vmp2.13.8,反手就是回收站,结束。但是想了想,还是先看看有没有什么有意思的字符串可以玩玩,丢进x32dbg。我寻思我也开了插件啊那怎么会被发现呢?简单的自己加了vmp2和vmp3试试,发现vmp2比vmp3tls,说不定tls里面先对oep(0xcc)进行了crc校验,从而导致调试器被发现,这里关闭掉入口断点程序正常跑起来了,结束,右键回收站。...

2022-06-22 11:07:33 639

原创 Https的流量透明

WinDivert-openssl-https流量透明

2022-06-07 15:20:25 923 2

原创 ntoskrnl.lib(loadcfg.obj) : error LNK2001: 无法解析的外部符号 ___security_cookie 解决方法

背景今天编译公司x86驱动的时候发现了如下报错,我也奇怪,为什么会找不到符号后来发现是因为用的xp的lib。ObRegisterCallbacks最少都是sp1改为win7\i386,错误变成了后来在网上找了找,都是一个人写的,被反复的转载,意思是win7不能用__try,那怎么解决这个问题。解决方法加入BufferOverflowK.lib 参考链接...

2022-04-07 15:31:12 715

原创 映射dll到r0的高维注入

背景之前写过一篇把r3代码放r0并且跑起来的例子,当时win10会出现1a错误,原因是我没关KPTI,导致页面异常,最近又看到了类似的注入,于是写了点代码映射dll在r0,并注入到目标进程,代码:GitHub。相关知识介绍首先呢,大家都知道不同进程之间的虚拟地址是分开的,你改你的地址数据不会影响另外的进程。但是对于系统dll而已,不会经常修改,所以一般情况下只会映射一份,系统的ntdll和kernel32这类的dll的物理内存都是同一份。顺便说一下什么是COW,CORY-ON-WRITE写时拷贝

2022-03-03 15:37:12 1104 6

原创 有痕注入的分析和实现

背景之前分析过某老哥的超级注入,最近突然来了兴致,简单的把它实现一下。开整首先说一下思路1、找到目标进程,并且暂停它的第一个线程;2、在目标进程中申请一个页大小的内存,放入shellcode,x86和x64分别做对应的处理(这里使用的是LdrLoadDll(加载之后痕迹比较明显),不满意可以自己映射,修复IAT);3、替换返回到r3的eip/rip为shellcode的起始地址,恢复线程等待线程执行;4、创建工作线程释放内存资源;看着也挺简单的,这里有几个坑需要注意一下。

2022-02-21 16:39:38 4528

原创 VMP3.5 脱壳--查找OEP

背景无VMP的介绍相信看到这篇文章的人都听过或了解过vmp,基本遇到vmp加壳的程序基本就是右键回收站,但是如果只是简单的加了一层vmp壳的话,还是可以分析的。vmp加壳方式下面是程序代码int main() { printf("222222222\n"); system("pause"); return 0;}然后把随机基地址关一下,方便之后查找main函数这里说明一下,目前大部分人加壳都会虚拟化代码段,这样的话基本上就需要右键回收站了,主要是核心代码被vm

2022-01-19 13:20:23 13219 2

原创 读取QQ ClientKey失败分析

Make ClientKey Greate Again!!!背景网上有不少获取QQ ClientKey的方式,主要是两种:一种是模拟浏览器访问本地登陆QQ的方式获取ClientKey;第二种就是注入到QQ通过调用它的导出函数获取ClientKey;上述的两种方式都不难找到各种源码和一些分析,这里跳过。绕过这里使用第一种,原因:不会注入到qq,没什么乱七八糟的风险不少朋友会发现在发送第二个请求(localhost.ptlogin2.qq.com)的时候会出现403,而且

2022-01-14 16:51:15 712 2

原创 利用Hook的方式监控powershell的命令行参数

背景之前老哥在搞powershell,然后我也了解一下,随后找到了一个系统函数。步骤首先一般样本在执行powershell的时候都是,powershell.exe + 命令行参数,这里用x96的来添加参数,先利用notepad试试水。然后在microsoft.powershell.consolehost.ni.dll:Microsoft.PowerShell.ConsoleHost.DoRunspaceLoop(System.String, Boolean, System.Collect

2022-01-06 10:10:41 628

原创 加载系统的.NET的符号

背景之前老哥的项目用到了.net的代码,但是默认的windows符号路径Symbol information是下载不了的。这里提供一种方式使用windows自带的ngen.exe程序去创建符号,命令如下C:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe createpdb C:\Windows\assembly\NativeImages_v4.0.30319_32\System.Manaa57fc8cc#\42de74cf60be291

2022-01-05 09:51:00 348

原创 以C++的方式使用C#

起因之前公司的老大哥高级项目中用到了c#,之后相互嘲笑了一下。后来想到c#中有提供了很多的成员方法,所以好奇c#这种JIT编译的是不是每一个对象的成员函数的地址都是一样的,但是我又不会c#,所以东拼西凑写了一个C#版本的C++demo。编译时候又几个要注意的点:1.vc++目录=>引用目录加入==>C:\Program Files (x86)\Reference Assemblies\Microsoft\WindowsPowerShell\3.02.c++ ==> 常规==

2021-12-06 17:05:45 767

原创 利用Openssl写一个简陋的https劫持

背景前面说过可以使用WinDivert+MITM搞一手流量透明,现在转发流量的项目已经有了,虽然只有第一部分(后面的代码分析可能会鸽了,代码已经看完了也大概知道了原理,但是不想写),然后需要知道https流量劫持怎么处理,于是在互联网的帮助下找到了这个,虽然他也是转发,但是原文已经找不到了,所以象征的贴一下,还有一个是模拟ssl握手的项目。开整这部分涉及到很多知识,可能会提及,也可能不会,不会的可能比较大。下面是https代理的原理,如果你使用windows下面的internet setti

2021-11-24 16:59:22 2690

原创 WinDivert驅動的簡單分析(1)

。。。爲什麽你的字體變成了繁體字?因爲按錯了Ctrl+shift+F,於是先將就用幾天看好不好用。不知道會不會持續更新這個,先寫寫看,因爲我比較懶,説不定就不想寫了!背景WinDivert是一個開源的基於WFP的網絡驅動,主要用在嗅探、抓包、防火墻,這裏就簡單的分析一下該驅動,因爲自己也沒怎麽接觸過WFP和WDF的驅動編程,文中一定會出現理解或者解釋有誤的地方,我也控制不了!WFP簡介WFP是windows提供的用來做網絡過濾的一種組件,當然還有tdi、ndis這類傳統的網絡過濾,一般w

2021-11-16 17:49:47 1054

原创 WinDivert+MITM实现https流量透明

1.背景自己想了解一下Https如何透明,于是找到了这个项目,但是需要自己把流量定位到8080端口。windows是支持代理流量的,常见的代理方式是修改internet setting(某不愿透露姓名的哥儿说SSR也是通过这种方式代理本地的流量),如下图所示。接着简单分析一下这个代理服务器是如何实现。通过ProMon不难发现,iexplore是通过修改注册表的方式实现的。那么我们怎么通过API来指定自己的代理服务器,这里通过栈回溯,发现使用的是WININET.dll下的InternetS

2021-11-12 10:32:20 3368 4

原创 某超级注入程序的驱动逆向

1、起因从哥们儿那找到了一个超级注入的工具,打开一看加了vmp,然后还有驱动的驱动,于是这里把驱动提取出来,简单分析一下。1.1运行让程序先把驱动释放出来,可以看到这里需要买卡,然后才会释放驱动加载(简单破解一下就行,不是重点)1.2破解之后下一个CreateServiceA断点,让它在加载驱动之前断下,接着将驱动拷贝出来。从下图可以看到虽然驱动有签名,但是个过期签名,高版本windows10上是加载不上的。2、驱动分析好消息是驱动没有加壳,可以f5分析一下2.1W.

2021-11-05 16:39:44 2330 7

原创 关于win7下r3窗口进程保护的一些方式

背景随着Windows PG保护的出现,过去内核挂钩inline hook的时代逐渐远去,hook OpenProcess的日子也一去不复返了。那么,如果想在Windows操作系统上不那么轻易的被结束掉(这里主要考虑不在r3被结束,都在内核还干不掉你),有没有什么方法?常见方式通常情况下如果是在r0,注册一个ObRegisterCallbacks回调,对PROCESS_TERMINATE权限进行限制,就能解决别人调用TerminateProcess结束进程的情况。if (pOperatio

2021-08-06 18:50:23 2007

原创 Windows内核地址跑r3代码实现

背景最近在看雪上看到了一篇修改页属性的博客https://bbs.pediy.com/thread-266781.htm,之前的同事也提到过有人在r0跑dll,于是趁着这个机会把原作者的代码改了下,将申请的内核地址改成user可读,如下所示,这里有几点需要注意的1、在win10 1903 中测试失败,蓝屏0x1a,会对pxe做检查2、内核的pte基址是写死的3、不支持大页#include <Ntifs.h>#include <ntimage.h>#inclu

2021-04-30 17:49:25 900 2

原创 使用ObGetObjectSecurity出现返回0xC000000D的问题

背景因为公司的某项功能的要求需要获取到当前文件对象的安全描述符,在msdn上找了一遍之后发现了这个api,定义如下:https://docs.microsoft.com/en-us/windows-hardware/drivers/ddi/wdm/nf-wdm-obgetobjectsecurityNTSTATUS ObGetObjectSecurity( PVOID Object, PSECURITY_DESCRIPTOR *SecurityDescript

2021-04-20 17:57:57 258

原创 PassUAC的简单实现(二)

四、通过管理员创建进程的流程在第一篇中大致了解了每一个进程都有一个权限之后,这里简单了解一下管理员进程的创建。https://github.com/xyddnljydd/PassUAC首先来感受一下进程的创建步骤:1、右键管理员启动一个进程2、会弹出一个对话框,询问用户是否要以管理员的身份打开进程3、当点击是之后会打开一个管理员身份创建的进程,点击否则什么也没有发生一样,且进程树也是挂载explore下面的4、实际真的是这么简单的吗?explore创建一个弹窗,询问用

2021-04-18 15:21:09 285

原创 PassUAC的简单实现(一)

一、前言在我的GitHub中放了一个PassUAC的项目(https://github.com/xyddnljydd/PassUAC),其实早就放上去了,只是没有时间来写这篇博客(你打游戏的时候可不是说没有时间哦!),这里简单来讲解一下它的实现原理和防护手段。二、背景知识首先来了解一下UAC是个什么东西,其实就是用户帐户控制(User Account Control),它能干什么?不知道小伙伴有木有这样一种经历,就是在打开某些程序的时候会有弹窗(会发出 当当当 的声音),有的是蓝色的,有的为什么

2021-04-17 16:14:45 300

原创 CVE-2020-1066 任意文件替换漏洞分析和利用

1、背景漏洞是作者cbwang505发现的,并且作者本人在他的GitHub上传了EXP的利用代码,由于这个和RPC相关,自己也研究过RPC,所以分析了一下。但是在具体实现过程中自己遇到了很多问题,这里将它记录下来,同时帮助想要了解任意文件替换漏洞的同学入门(虽然自己也是菜狗)。任意文件替换漏洞的原理可以在这里了解一下,本文也会简单介绍一下任意文件替换漏洞是怎么产生的,以及我们怎么去利用。首先每一个文件和文件夹都有它的访问属性如下所示,每一个用户对它的操作权限也不尽相同,从下面两张图可以看出syste

2021-03-07 15:08:15 951 1

原创 分析Windbg将DMP文件解析为x86模式

工作的时候拿到一手DMP,发现Windbg把它解析成了x86出现这个问题是因为当前的进程是x32的,所以会出现这种情况,可以看到上面的地址都是32位的,我们不能正常的分析代码。可以使用下面的这个指令 !wow64exts.sw可以看到解析的地址已经正常了,但是如果访问这个地址会出现异常那么如何得到真正的Rip和Rsp呢?可以看到这里给出了Context的地址,那么这就好办了,直接使用 dt _CONTEXT 0xfffff88002fdeb10 就能观察到正确的Rip和.

2021-01-29 16:16:56 309

原创 MSRC Case 62198 A local-only temporary DoS for IE

SUMMARYWhen IE loads VsaVb7rt.dll and the attribute is contentEditable, it causes a crash after the clicked COM object.DescriptionWindows 7 sp1-windows 10 17763.1457 Original iexplore.exe.Root cause analysisClick the Com object to trigger an exce

2021-01-26 16:47:49 120

原创 如何分析加上SE壳的.net程序

对于搞二进制的朋友都知道VMP、Tmd、SE等壳都是目前最强的壳,基本上对于我这种菜狗就是右键回收站。之前我读大学的网络验证程序就是加的Se壳,虽然大学学习的也不是安全方向的,但是那时接触了破解,大概了解了od怎么使用,于是拖进od开始f7+esp定律(那时原理也不懂就看别人是怎么搞的),后来发现了它加的Se壳,我的直觉告诉我事情不简单。的确事情变得有趣起来,网上确实收了不少资料,但是很多资料不适合新手以及发布视频的人水平参差不齐,而且大部分加vmp和se都是外挂,所以破解通常都是e语言写的,说

2020-12-27 23:38:30 2010 1

原创 内核中获取远程名称管道IP

最近需要在内核中获取远程名称管道的源地址所以首先逆向了r3的GetNamedPipeClientComputerNameW,该函数在kernelbase.dll中实现,为了更好的分析函数需要下载符号,使用下面的命令symchk /r D:\rpc\kernelbasex32 /s SRV*D:\rpc\kernelbasex32\*http://msdl.microsoft.com/download/symbols有了符号分析起来的简单了,最后将该函数所做的事情写成c代码如下:ULONG

2020-12-16 22:44:52 288

原创 _KWAIT_BLOCK使用时遇到的问题

最近在写代码的时候遇到一个问题,就是_KWAIT_BLOCK中的取出来的Kthread取出来的数据是有问题的。首先了解一下_KWAIT_BLOCK是什么东西,这个结构体是挂在_Kevent下面的Header,这个header只要是可等待对象都会有这个结构体(能够被wiatforsingleobject等待的都是可等待对象),这个header最后一个字段里面有一个双向链表指向这个事件的Kwait_block这个结构体,同时这个结构体会挂在正在等待的线程的KWAIT_BLOCK这个字段上,我们可以通过Kwa

2020-12-09 22:43:35 602 1

原创 win10 x64 1903的miniVT实现ept

代码是之前写的,由于之前比较习惯c语言。所以很多东西包括方法都是放在一个main函数中,具体实现的功能就是一个简单的读写和指向分离。也抄了不少人的代码(不这是我自己写的,cv之后就是自己的了)首先是main函数,用的sublime中文会乱码,vt最核心的还是嵌套(但是我不会),还有就是各个版本的兼容。#include "CPU.h"#include "MSR.h"#include "comm.h"#include "EPT.h"#include "WMX.h"extern void in

2020-12-08 00:38:40 1771 1

原创 分享一个之前写的mbr的分析过程

一、概述(前言)修改MBR,挂钩13号中断,继续挂钩BlLoaderBlock结构得到内核基址,完成对IoInitSystem挂钩执行样本的驱动文件,为防止MBR被修复又挂钩了磁盘的IRP读写。流程图图一二、技术细节详细分析脱壳首先查壳,显示为ASPack(2.12-2.42),方法就是直接esp定律。od会帮你断,之后一个大跳到达oep,脱壳结束,如下图二所示。图二脱壳之后的样本脱壳结束之后看看样本做了些什么事情,f5之后可以发现一个被标红的地址(0x7FFE0

2020-12-08 00:17:37 446

原创 windows开启远程Wmi服务支持

wmi不仅支持本地也同样支持远程,这里介绍一下怎么快速的让当前操作系统开启远程服务。首先这里以windwos7为例,有的朋友说,开启远程wmi没有,我说这个东西有用,他说没有用,我说小伙子还是太年轻了。这里需要当前用户是管理员权限的,当然默认的登陆用户都是管理员的,但是存在着像我一样的懒人,不给虚拟机的windows设置密码,这样是不行的,需要给当然用户设置一手密码,方法如下点击添加或者删除用户,在点击当前用户创建一手密码之后关闭防火墙关掉打开这个链接这个人不是我,老

2020-11-25 22:41:46 1219

原创 TDIfw在windows 10 1903的测试

最近看了一下TDI的网络过滤驱动,在Vista之后就不支持了,但是据说windows7还是能用,于是想试试在win10上还能不能玩。需要注意的是在win10上的TCP和UDP设备对象的驱动对象变成了tdx,于是有了下面的代码。#include <Ntifs.h>#include <ntimage.h>#include <ntstrsafe.h>#include <Tdikrnl.h>#define MEM_TAG 'YCAI'#define

2020-09-19 11:10:39 630

Vulnhub靶机渗透测试 DC-1靶机

Vulnhub靶机渗透测试 DC-1靶机

2021-03-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除