首页
社区
课程
招聘
[讨论]R3函数重写-WriteProcessMemory
2023-3-23 17:32 6325

[讨论]R3函数重写-WriteProcessMemory

2023-3-23 17:32
6325

系统版本win10,1904,21h2,以下出现的数值均为十六进制。
图片描述
跟随
图片描述
往下拉,3环的api不用太关心具体做了啥,直接走到syscall即可,
调用了Ntwritetualmeomry,跟进去
图片描述
好了,看见syscall了
图片描述
头部下断,观察参数
图片描述
原先函数参数
图片描述
图片描述
对比一下
图片描述
Ntwritetualmeomry跟WriteProcessMemory参数类型,数量一样。
重写代码如下:

 

#include<Windows.h>

 

#include<stdio.h>
HANDLE handle;
float 写入数据 = -200;
SIZE_T 实际写入字节 = 0;
EXTERN_C DWORD NewWriteProcessMemory(HANDLE handle, PVOID BaseAddress, LPCVOID buffer, ULONG64 size, SIZE_T* out);
int main()
{
handle = OpenProcess(PROCESS_ALL_ACCESS, NULL, 0x152C);
if (handle <= 0) {
printf("OpenProcess error%p\n");
}
NewWriteProcessMemory(handle, (PVOID)0xEC7E2FFA38, &写入数据, 4, &实际写入字节);
CloseHandle(handle);
return 0;
}

 

.CODE
NewWriteProcessMemory proc

 

mov r10,rcx

 

mov eax,58

 

syscall

 

ret

 

NewWriteProcessMemory endp
END


[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

收藏
点赞0
打赏
分享
最新回复 (8)
雪    币: 6287
活跃值: (3812)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
大鲤鱼 2023-3-24 00:19
2
0
uc?
雪    币: 4119
活跃值: (1500)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
Boring勇哥 2023-3-24 06:36
3
0
你这写法没有通用性,不同系统的调用号不一样;系统调用不全是syscall,有的还用中断;wow64环境下还要做上下文切换
雪    币: 857
活跃值: (3540)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
逆向爱好者 2023-3-24 07:18
4
0
Boring勇哥 你这写法没有通用性,不同系统的调用号不一样;系统调用不全是syscall,有的还用中断;wow64环境下还要做上下文切换
32位谁还用,寄存器传参比堆栈传参,前者CPU执行的更快。至于系统版本服务号,可以特征码获取,进内核还有不支持syscall的可以换电脑了
雪    币: 43
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
紫梦寒 2023-3-24 07:34
5
0

可以通过获取功能号的特征去获取功能号

	HMODULE ntdll = GetModuleHandleA("ntdll.dll");
ULONG 	ZwWriteVirtualMemoryIndex= *(PULONG)((ULONG64)GetProcAddress(ntdll, "NtWriteVirtualMemory") + 0x04);

2年前的东西了 - -

而且你这根本也不算重写

最后于 2023-3-24 07:36 被紫梦寒编辑 ,原因: 错别字
雪    币: 801
活跃值: (1651)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
微笑:) 2023-3-24 09:17
6
0
hahaha
雪    币: 620
活跃值: (6378)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
704088 2023-3-27 19:10
7
1
https://www.ired.team/offensive-security/defense-evasion/using-syscalls-directly-from-visual-studio-to-bypass-avs-edrs
雪    币: 204
活跃值: (714)
能力值: ( LV9,RANK:195 )
在线值:
发帖
回帖
粉丝
palkiver 2023-3-28 10:58
8
0
你这个硬编码也太硬了,每个不同的系统你都打算重新这么来一波么,调用号可以自动获取的。
雪    币: 6124
活跃值: (4101)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
黑洛 1 2023-3-31 06:59
9
0
玩具
游客
登录 | 注册 方可回帖
返回