- 博客(16)
- 资源 (2)
- 收藏
- 关注
原创 【NTLM】NTLM协议 与挑战-鉴权协议
Windows操作系统中通常使用两种方法对用户的明文密码进行加密处理。在域环境中,用户信息存储在ntds.dit中,加密后为“散列”值在Windows下通过SAMInside 提取到的密码hash时,分别有两条,分别是LM-Hash 和NT-Hash。
2022-09-09 11:29:17 613
原创 【SSDT】SSDT hook技术
通过修改此表的函数地址可以对常用Windows函数及API进行Hook,从而实现对一些关心的系统动作进行过滤、监控等目的。在NT4.0 以上的Windpws 操作系统中,默认存在两个系统服务描述表,两个调度表对应两类不同的系统服务。要Hook SSDT表,首选需要这个表是可写的,但是在XP之后的系统都是只读的,有三种方式修改内存保护机制。其中第1位叫做保护属性位,控制着页的读或写属性。如果为0,则只能读/执行。SSDT,IDT(中断描述符表)的页属性在默认情况下只读,可执行,但不能写。例如进程保护(驱动)
2022-09-07 16:19:48 2254
原创 「Active-Directory-Sec」基本概念认识
域是一种逻辑的组织形式活动目录是实现域的方法若组织的网络环境足够庞大与复杂。则在AD中可分配数个网域。而网域间需要建立关系,将这种关系阶级化,则为网域树(Domain Tree).在多网域环境下,不同网域之间会需要交换与共享资料,这时候需要一个角色为不同网域间的资讯交换角色,同时必须遵循AD树状结构规范,因此微软在多网域之间建立一个中介用的角色,称为森林(Forest),一个组织最多只能有一个Forest.https://blog.csdn.net/xiezuoyong/article/details/9
2022-07-12 15:36:39 1608
原创 「Active Directory Sec」白银票据和黄金票据
白银票据: 即伪造的TGS。当获取需要访问的目标服务器NTLM HASH后,就可以利用Mimikatz伪造TGS,直接去访问目标服务器。此过程不需要KDC的参与。但缺点是只能访问一个服务。黄金票据: 即伪造TGT。当攻击者拥有普通域账户,krbtgt ntlm hash ,域SID时,就可以伪造TGT。拥有黄金票据就拥有了域内所有的访问控制权限。通过Kerberos的通信过程就可以看出,当攻击者获取krbtgt的HASH值时,就可以利用这个HASH去伪造TGT,票据授予票据,在以后每一次的通信过程中,Cl
2022-07-12 15:34:18 929
原创 【argue】进程参数欺骗
进程参数欺骗原理我们了解到利用argue进程参数欺骗可以在一定程度上绕过杀软拦截。它的原理是怎样的?首先我们可以了解到,在一个进程运行后,它的运行参数是保存在进程空间的。如果我们获取到保存参数的进程内存地址,并将参数进行修改(修改并不影响原始的参数功能,因为在修改之前已经被启动了)那么就可以达到“欺骗”杀软,达到不被拦截的目的。至于参数保存在进程空间的哪里,如何去获取就是接下来要讨论的。PEB进程环境块PEB进程环境块中存放进程相关的一些信息,而我们需要的commandline就保存在PEB里。与P
2022-05-20 16:46:32 670
原创 【driver】Windows 内核与驱动
内核空间与内核模块内核空间内核空间:每个进程拥有4GB的独立的内存空间,在低2G是不同的,但是高2G内存空间对于所有的进程来说都是相同的。内核模块每个驱动程序每一个都是一个模块,称为”内核模块“,都可以加载到内核中,遵守PE结构。但是本质上讲,任意一个.sys文件与内核文件没有区别。内核并不是一个孤立的整体,而是由多个模块一起组成的。比如我们逆向的ntoskrnl.exe文件,其实也只是其中的一个模块,我们自己编译的sys文件也是,但是并不是每一个模块都对应着一块驱动,比如安全人员写的驱动
2022-05-09 16:07:15 914
原创 【IRP】Windows 驱动之IRP
什么是IRP:I/O request packets,简称IRP。即输入输出请求包。它是WINDOWS内核中的一种非常重要的数据结构。上层应用程序与底层驱动程序通信时,应用程序会发出I/O请求。操作系统将相应的I/O请求转换为相应的IRP。不同的IRP会根据类型被分派的不同的派遣历程中进行处理。作用:上层应用程序于底层驱动之间的通讯,即EXE程序和SYS之间的通讯。应用程序 想要访问内核数据,必须通过IRP数据。又叫IRP请求,当应用程序和驱动交互时,发送一个IRP请求,IRP会在各层设备驱动个之间
2022-05-09 15:57:32 3636
原创 【driver】Win10 驱动开发环境配置及应用
安装VS安装visual studio 这里安装的是vs 2017 community查看已经安装的SDK版本。安装WDK然后安装wdk:在链接,找到https://docs.microsoft.com/zh-cn/windows-hardware/drivers/other-wdk-downloads这里需要下载安装的wdk版本与sdk版本一致。可以尝试下载之后查看属性,从而判断wdk是哪个版本的。然后安装:安装时候会下载对应的文件到指定文件夹。并且在指定文件夹下继续生成wd
2022-05-09 15:51:26 1473
原创 【WinDbg】MacOS VMware Fusion 双机调试
背景虚拟机软件: VMware fusion 12.0.1被调试机: win7 x64调试机: win10 windbg x64环境准备首先找到虚拟机所在包:被调试机:然后找到vmx 文件,利用 sublime 打开:删除原有的包含 "serial0 " 的配置行,然后在被调试机win7添加配置如下:serial0.present = "TRUE"serial0.yieldOnMsrRead = "TRUE" serial0.fileType = "pipe"serial
2022-05-05 17:39:16 695 1
原创 【UAC】Windows UAC 原理浅析
UAC理解简而言之用户账户控制 (User Account Control) 是Windows Vista (及更高版本操作系统)通过弹框进一步让用户确认是否授权当前可执行文件来达到阻止恶意程序的目的。从图中看可以理解为:想要获得管理员权限:进程已经拥有管理员权限。进程被用户允许通过管理员权限允许。UAC 的实现:ACL: windows 中的所有资源都有ACL。给各个程序划定了权限。在开启了UAC之后,如果用户是标准用户,Windows 会给用户分配一个标准Access Toke
2022-04-28 21:44:30 6230
原创 VMware Fusion解决Mac下虚拟机磁盘扩容问题
背景事情是这样的,自己做了一个Win10系统虚拟机用来进行一些windows开发和攻防工作。由于当时创建虚拟机时,没有分配太多空间。随着逐渐地对虚拟机迭代,不断安装工具,然后C盘不够用了。本来以为可以像Windows下一样,可以很方便地进行扩容。但是在尝试之后,发现坑得离谱。问题第一个解决方式就是安装常规的方式在虚拟机–设置–磁盘 调整大小但是调整之后你会发现C盘并不会变大。经过一番搜索,发现唯一的解决方式就是用分区工具,新创建一个盘符,然后把C盘的工具拷贝过来。。于是这样又用了一段时间
2022-04-24 16:47:39 3124 1
原创 【ADS】Windows下的ADS NTFS交换数据流
NTFS文件流所有的文件在NTFS上都至少包括一个流: 主流即我们平时可以看见的可以存储数据的文件。一个流的全名包括一下三个部分<文件名>:<流名称>:<流类型>NTFS流全称为NTFS交换数据流,ADS的诞生是为了兼容HFS。HFS—分层文件系统,是由苹果公司推出的文件系统,其工作模式是将不同的数据存在不同的分支文件,文件数据存放在数据分支而文件参数存放在资源分支。ADS有点类似文化的属性一样,依附于文件的传统边界之外。每一个文件都有着主文件流和非主文件流。主文
2022-04-24 15:34:32 1175
原创 【ReflectDllInjection】 反射型DLL注入
常规dll注入这里引用一张图来表示:反射型DLL注入思路:读入原始DLL文件至内存缓冲区解析DLL标头并获取SizeOfImage将DLL标头和PE节复制到步骤3中分配的内存空间执行重定位加载DLL导入的库解析导入地址表(IAT)调用DLL的DLL_PROCESS_ATTACH反射型dll注入与其他dll注入不同的是,其不需要使用LoadLibrary这一函数,而是自己来实现整个装载过程。我们可以为待注入的DLL添加一个导出函数,ReflectiveLoader,这个函数的功能就是
2022-04-06 23:03:54 3323 1
原创 【shellcode】Windows shellcode的理解与编写
虚拟内存空间整个虚拟内存空间分为两个相关部分: 为用户进程预留的虚拟内存空间和为系统进程预留的虚拟内存空间。每个进程都有自己的私有虚拟地址空间,其中“内核空间”是一种“共享环境”,意味着每个内核进程可以在任何它想要的地方读写虚拟内存。其中:HEAP(堆) : 这是存储所有动态局部变量的地方。(通常alloc()或类似的系统调用)STACK(栈): 分配每个静态局部变量的位置。RWX-Hunter执行:搜索已被标记为读(R),写(W)和执行(X)的内存部分。遍历进程的虚拟空间内存,搜索标记
2022-03-31 15:52:17 1094
原创 【PE】PE文件结构学习
【PE】PE文件结构学习PE文件内存对齐文件对齐PE结构分析DOS头结构PE头文件区块表输入表输出表:基址重定位表:PE文件内存对齐PE文件包括:DLL,EXE,OCX,SYS等。 Windows加载器遍历PE文件并将其复制到内存镜像。PE文件结构在磁盘中和内存中基本是一样的,但又不是完全复制,对齐方式有所不同。如图:在Windows系统中,一个节在内存中对齐单位是一个页的大小。对于32位操作系统来说,这个值是4KB(1000H)对于64位系统来说,这个值是8KB(2000H)文件
2022-03-31 11:11:21 1352
Windows下LM-Hash与NTLM-Hash
2022-02-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人