首页
社区
课程
招聘
未解决 [已解决]64位下汇编如何读取FS寄存器
发表于: 2023-6-18 07:05 5030

未解决 [已解决]64位下汇编如何读取FS寄存器

2023-6-18 07:05
5030

```c

.CODE
GetLdr PROC
                assume fs:nothing     如果加上这个就无法识别    error A2008: syntax error : fs
        mov eax,fs:[60h]       此处引发的异常: 0xC0000005: 读取位置 0x0000000000000060 时发生访问冲突.
        mov eax,[eax+018h]
        ret
GetLdr ENDP

END


```


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2023-6-19 12:41 被ᕦ(笨ㅂ鸟)ᕤ编辑 ,原因: 问题已解决
收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 775
活跃值: (2307)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
2
mov  rax,qword ptr gs:[60h]

你读取x64指针为啥用eax 32位寄存器呢?
2023-6-18 12:04
1
雪    币: 3746
活跃值: (2048)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
3
尴尬了知识不足,查了许多资料才知道64位下TEB已经存在gs寄存器了
2023-6-19 10:05
0
雪    币: 78
活跃值: (1985)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
#ifdef _WIN64
    teb_addr = __readgsqword(0x30);
#else
    teb_addr = __readfsdword(0x18);
#endif
2023-6-19 11:47
1
游客
登录 | 注册 方可回帖
返回
//