llvm base development environment configuration
之前一直以为编译llvm的pass需要编译一整个llvm,然后llvm编译的内存要求要又很高(50G交换空间都不够!然后发现其实完全不需要,安装库就可以,编译参数也可以通过llvm-config来获取。 我这里使用arch,做一下简单的记录
之前一直以为编译llvm的pass需要编译一整个llvm,然后llvm编译的内存要求要又很高(50G交换空间都不够!然后发现其实完全不需要,安装库就可以,编译参数也可以通过llvm-config来获取。 我这里使用arch,做一下简单的记录
在看llvm新旧版pass manager的时候,看到其中一个设计是使用CRTP这种模式,对我来说还是很陌生的。或者说C++多态我都不太熟,于是简单学习一下这个部分(C++真tm难啊
跨进程内存读写有多种方式,这里主要了解一下修改物理内存来实现跨进程内存修改方法。这种方法主要是无痕,对比修改cr3来说要无痕的多。
后面再试试修改cr3和修改MDL映射来做到跨进程内存读写方式。
ObRegistyCallBacks保护指定进程,可以让攻击程序OpenProcess打开指定进程后获取的句柄权限是我们指定的权限范围, 比如不能读取进程内存, 不能终止进程。
如何绕过这种保护,可以使用句柄降权/提权的方法,就可以对提高已经获取到的句柄权限。
使用Rust编写几种在windows上常用的hook方式:
为什么要用rust的不用c++?就是想用,想给自己找麻烦😎