使用 c# 分析可移植可执行文件
本文关键字:可移植 可执行文件 使用 | 更新日期: 2023-09-27 18:33:36
C/C++ 具有一组预定义的结构和常量,对应于 exe-header 等。是否存在一些类比标准命名空间,C# 中专门用于分析可移植可执行文件的类?还是它只是不受管理的不安全的更多母语的特权?
存在一个名为PeNet的托管库,它也可以作为开源和NuGet包使用。您可以使用此库访问和更改 PE 标头中的几乎所有结构。PeNet GitHub
免责声明:我是该库的主要作者
该语言没有太多内置功能(如果有的话),但是有很多示例,例如
- https://web.archive.org/web/20160312145447/http://code.cheesydesign.com/?p=572
- https://web.archive.org/web/20150826092221/http://sergeyakopov.com/2010/11/reading-pe-format-using-data-marshaling-in-net/
一个有趣的库,它为多种语言发布,包括 c#:
https://formats.kaitai.io/microsoft_pe/csharp.html
它使用另一个名为"Kaitai Struct"的 Kaitai 类,这是另一个用于读取二进制文件的有趣且更通用的类。