恶意代码分析总结

本文介绍了恶意代码分析中寄存器的作用,特别是FS寄存器在内核态和用户态的应用。FS寄存器指向TEB和PEB,分别对应线程和进程环境块,可用于获取系统关键信息。PEB_LDR_DATA结构体提供了已加载模块的数据,而LDR_DATA_TABLE_ENTRY结构揭示了如ntdll.dll等模块的详细信息。常见的恶意代码技术包括异或解密和散列值加密字符串。
摘要由CSDN通过智能技术生成

寄存器类型:
1、CS:代码段寄存器;

2、DS:数据段寄存器;

3、SS:堆栈段寄存器;

4、FS:标志段寄存器

5、GS:全局段寄存器

6、ES:扩展段寄存器

通过读取FS寄存器指定的内存可以获得很多系统关键信息,内核态是fs = 0x30,用户态 fs = 0x3B,fs在内核态指向_KPCR,用户态指向_TEB。

TEB(Thread Environment Block),线程环境块,也就是说每一个线程都会有TEB,用于保存系统与线程之间的数据,便于操作控制。那么Fs:[0x30]就是PEB进程环境块。

  1. PEB就是当前进程环境,shellcode就可以轻易获取PEB信息,通过偏移0xc获取到了_PEB_LDR_DATA,这个结构体包含有关进程的已加载模块的信息.
    在这里插入图片描述
    LDR_DATA_TABLE_ENTRY结构体包含的数据如下:
    在这里插入图片描述
    比如通过上述的过程成功获取如ntdll.dll,如下所示:
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值