1.使用winhex打开从NTLDR中提取出的oslader.exe

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

2.查找e_lfanew

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

3.查找IMAGE_EXPORT_DIRECTORY->AddressOfFunctions

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

通过上图我们可以得出,导出表的RVA是 000357B0h ,Size是 000006AFh。

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

我们借助LordPE可以确定在哪个区段表中, 因为导出表的RVA是000357B0h 是大于00031000h 但是小于00036000h,所以可以得到在.rdata区段表中。

文件偏移 = RVA - VOffset + ROffset
= 000357B0 - 00031000 + 0002F000
= 000337B0

在Winhex中使用alt+G ->输入文件偏移地址 000337B0 —-取40个字节

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

000337C0这一行 第1个2F000000是函数数量,第2个2F000000是函数名称数量

计算偏移
AddressOfFunctions: 0x000357D8
000357D8 -00031000 + 0002F000=337D8

alt+G 输入下面的在5中的偏移(AddressOfFunctions 的值)

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

跳转到337D8这一行,从FC150000开始圈2F组数据,便得到了2F个函数地址

得到的是函数的地址的RVA,再进行转换后,获取到函数的内容

4.Osloader.exe是否有导入表?

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

用LordPE和PETool 两个工具都查看一下,发现的确没有导入表。

对Osloader.exe进行分析 查找e_lfanew,IMAGE_EXPORT_DIRECTORYAddressOfFunctions

分析:在OsLoader的初始化文件中,可以看到并没有导入表,只有导出表的初始化。

参考了这个博客:http://blog.csdn.net/oBuYiSeng/article/details/50231677

相关文章:

  • 2022-12-23
  • 2021-09-12
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-10-31
  • 2022-02-19
  • 2021-06-17
猜你喜欢
  • 2021-04-03
  • 2021-08-08
  • 2022-12-23
  • 2021-07-21
  • 2021-07-25
  • 2021-11-20
相关资源
相似解决方案