草庐IT

pe_attr_page_faults

全部标签

windows - 为什么当 flAllocationType = MEM_RESERVE 时 VirtualAlloc() 需要 flProtect = PAGE_NOACCESS?

以下对VirtualAlloc()的调用在x64上返回错误ERROR_INVALID_PARAMETER:LPVOIDlp=VirtualAlloc(NULL,0x10000000000,MEM_RESERVE,0);也就是说,我必须使用PAGE_NOACCESS作为VirtualAlloc的最后一个参数。但是当我查看PAGE_NOACCESShere的定义时,我发现:Disablesallaccesstothecommittedregionofpages.Anattempttoreadfrom,writeto,orexecutethecommittedregionresultsina

windows - 大于 2GB 的 PE 文件

我正在阅读Windowsviac/c++.我只是想知道一个大文件可以映射到内存。当我们执行一个应用程序时,一个PE文件被映射到它们的进程地址(用户分区)。在32位Windows中,可以将大文件(大于2GB)加载到用户分区吗?否则会失败?如果可能,分页文件是否有助于加载? 最佳答案 不,您不能-无论分页文件设置如何,您都会耗尽VA空间。 关于windows-大于2GB的PE文件,我们在StackOverflow上找到一个类似的问题: https://stacko

c# - "being moved to page file"事件

C#中是否有一个事件(或类似事件)来告知当前进程何时将要从内存移动到页面文件?还有一个从页面文件返回的事件。或者如果这些事件不存在,也许有更好的方法或建议?我想完成这个的原因:我有一个应用程序/库存管理程序,它允许您查看所有内容,并且主要将所有信息保存在一个大列表中。我想在将其写入磁盘之前清除该列表。它只会变成陈旧的信息,并在必须恢复时减慢程序的返回速度。我宁愿查询数据库以获取新信息,也不愿加载陈旧信息。 最佳答案 不,没有这样的事件。即使有,内存也会在错误的页面级别被调出,并且没有简单的方法可以知道哪些对象驻留在哪些页面中。除此之

windows - PE文件格式中的基址重定位表是什么?

我在分析一个可执行文件的格式时,在image_optional_header中找到了Baserelocationtable,这个baserelocationtable是什么? 最佳答案 重定位表是一个查找表,它列出了当文件加载到非默认基地址时需要修补的PE文件的所有部分。这是PE文件的微软规范:https://github.com/tpn/pdfs/blob/master/Microsoft%20Portable%20Executable%20and%20Common%20Object%20File%20Format%20Speci

Windows PE - 如果不在资源中,字符串存储在哪里以及如何存储?

通常.exe文件中的字符串(如对话框的内容/标题)存储在某种资源中。但在我反汇编/资源检查的一些最近的exe中,我找不到任何包含该字符串的资源,但它以某种方式用db硬编码到程序源代码中。如何提取和修改直接位于程序中的字符串?我假设它们等同于C++中的constchar*?为什么有人不“外包”对话框、菜单等内容? 最佳答案 到目前为止,从PE中获取字符串的最简单方法是strings实用程序,它是我遇到的每个Linux发行版(甚至是uCLinux)的标准配置。它几乎只是遍历整个二进制文件,寻找一系列以null结尾、可打印的ascii字符

windows - 在PE的导入表中添加一个条目

我正在寻找一个命令行程序来向PE文件的导入表添加一个条目。我的目标是从外部DLL添加一个新的导入函数到我的EXE,然后使用ollydbg使用代码洞穴插入新代码。新代码将使用新导入的函数。实际上我已经实现了我的目标,但是为了向我使用的导入表添加一个新条目Stud_PE,这是一个GUI应用程序,我想自动化这部分过程。我会考虑以编程方式解决方案,但我担心PE结构太复杂,我无法在我的时间范围内学习和探索。此外,如果一个实现已经存在,那么不使用它是一种耻辱。:-) 最佳答案 找到了正在寻找的东西。m-PEFileforc++:http://f

windows - PE/COFF 文件扩展

在Windows上,一些二进制文件,例如.obj为COFF格式,其他如.exe和.dll是PE,是COFF,多了一个header。看来您需要查看文件扩展名才能知道期望的是什么。是否有关于哪些文件扩展名使用COFF哪些文件扩展名使用PE的完整列表? 最佳答案 没有“哪些文件扩展名使用COFF哪些文件扩展名使用PE的完整列表”。扩展仅用于帮助系统“映射”将用于启动所选文件的应用程序(例如,*.jpg将映射为由MSPAINT.exe启动,*.doc将映射为启动通过MSWORD.EXE...等)。这种逻辑映射是通过注册表进行的。Micros

windows - PE 文件 (.exe .dll) 的哪些部分/部分包含它们的大部分行为?

我正在通过机器学习方法进行Windows恶意软件研究。我看了PE格式,用dumpbin解压PE文件,发现里面有很多部分。例如:.idata.edata.pdata.data.rdata.sxdata.text.rscr.tls...但并非所有这些都用于Action/行为。我只关心他们的行为并在下一步之前减少大数据。谢谢 最佳答案 由于您正在分析恶意软件,因此不应查看部分的名称。恶意软件开发人员更改节的名称并不困难,而且msvc编译器还允许您创建自定义节。您应该做的是查看各个部分的特征。通过读取IMAGE_SECTION_HEADER

windows - 杂技 Actor (阅读器): to open at a specific page number via command line on Windows

我正在运行Windows批处理文件以将文档转换为PDF,在批处理文件的最后一行我有:Acrobat“%1.pdf”这可以很好地打开生成的PDF文件,但我也希望能够在文档的某些特定页面打开PDF文件。那么如何扩展我在上面使用的命令以强制PDF文件在所需的页码处打开?非常感谢... 最佳答案 使用命令行开关/A:Acrobat/A"page="%1.pdf替换为您希望显示的任何页面。其他开放参数请引用Adobe的合作伙伴文档:http://partners.adobe.com/public/developer/en/acrobat/PD

windows - PE文件中没有.BSS

这是简短的控制台应用程序示例staticcharbuffer[4096];intmain(){for(inti=0;i据我了解,编译器生成的“exe”文件应包含用于存储“buffer”变量的.bss部分。我正在使用TinyC编译器,生成的文件不包含对.bss的任何引用。DOSHeaderMagicnumber:0x5a4d(MZ)Bytesinlastpage:144Pagesinfile:3Relocations:0Sizeofheaderinparagraphs:4Minimumextraparagraphs:0Maximumextraparagraphs:65535Initial