当前位置: 首页 > news >正文

上海网站网络技术培训机构

上海网站,网络技术培训机构,建设行业门户网站,没有域名网站吗移动表的原因 一个PE文件中有很多节#xff0c;每个节都存储不同的数据。而PE文件中的各种表也都分散存储在这些节当中。此时各种表的信息与程序的代码和数据相互混合在一起#xff0c;如果我们直接对整个程序进行加密#xff0c;那系统在初始化程序时就会出问题。比如每个节都存储不同的数据。而PE文件中的各种表也都分散存储在这些节当中。此时各种表的信息与程序的代码和数据相互混合在一起如果我们直接对整个程序进行加密那系统在初始化程序时就会出问题。比如这些表的数据被加密时系统就无法根据这些表将用到的.DLL中的函数地址存储到IAT表中这时候程序就无法正常启动 所以对程序加密或破解之前需要移动各种表到程序新增的节当中再对剩下的数据进行加密 注意DOS头、NT头等所有头和节表是操作系统判断该文件是否为Windows可执行程序的依据因此这些数据不可以加密。 学会移动各种表是对程序加密/破解的基础 移动导出表 步骤说明 在FileBuffer中进行操作现结合图示来理解移动的步骤 在PE文件FileBuffer中新增一个节并获取该节的FOA。该表用来存储导出表节大小按照表的的大小对齐以后计算粗略估计0x1000字节大小 新增节时需要修改的数据 1.修改PE头中的字段NumberOfSections、SizeOfImage 2.重新开辟一个FileBuffer并新增节表 3.修改节表中的字段Name、Misc.VirtualSize、VirtualAddress、SizeOfRawData、PointerToRawData、Characteristics。 新增节进行填充的数据 1.复制导出表IMAGE_EXPORT_DIRECTORY到新节中大小固定40字节 2.复制AddressOfFunctions指向的函数地址表到新节中注意RVA转FOA数据大小为4 * NumberOfFunctions字节 3.复制AddressOfNameOrdinals指向的函数序号表到新节中数据大小为2 * NumberOfNames字节 4.复制AddressOfNames指向的函数名称表到新节中数据大小为4 * NumberOfNames字节 5.依次复制函数名称表中元素所指向的函数名称字符串到新节中注意以00结尾。遍历函数名称表用strlen()函数依次求出每个字符串长度再求和。每复制一个字符串到新节中就修改对应的函数名称表中的地址值 注意函数名称表中存的是RVA所以把字符串复制到新节后还需要把FOA转成RVA再存入 如果只移动函数名称表的话对剩下的数据加密后当需要根据函数名去调用导出函数时由于字符串被加密只能根据函数名称表查到名称字符串所在地址但是无法匹配字符串。 6.修改导出表中的成员值指向三个子表在新节中的位置由于各个子表在导出表的地址数据是RVA因此需要将FOA转成RVA 7.最后修复导出表数据目录中的VirtualAddress指向导出表IMAGE_EXPORT_DIRECTORY在新节中的位置该地址也要FOA转RVA 移动重定位表 步骤说明 结合图示来理解移动重定位表过程 1.新增节大小能够循环遍历重定位表的每个块即把所有块的SizeOfBlock求和 结束标记8字节最后再对齐粗略估算0x1000就满足大部分情况了 2.复制重定位表到新节中大小为所有块的SizeOfBlock求和 结束标记8字节 3.修改重定位表数据目录中的VirtualAddress指向重定位表在新节中的位置即可FOA转RVA 4.修复重定位表根据重定位表中的各个具体项去修改具体项指向的地方的值。这个值可能是DLL中全局变量的绝对地址或者是DLL中函数的绝对地址等 一般情况下一个PE文件自身的.exe的ImageBase很少会和其子PE文件ImageBase发生冲突但是.dll文件容易发生冲突。默认情况下.DLL的ImageBase为0x10000000所以如果一个程序要用的DLL没有合理的修改分配装载起始地址就可能出现多个DLL的ImageBase都是同一个地址造成装载冲突 现在我们自己故意修改一个DLL文件的ImageBase再根据其重定位表去修正最后存盘看此DLL文件是否可以正常使用即手动模拟操作系统修复重定位表的过程 修正过程比如DLL的ImageBase原来为0x400000现在修改为0x500000接着找到重定位表遍历每个块中的具体项根据具体项去找哪里的地址值需要修改重定位找到后将原来的地址值 0x500000 - 0x400000即可 作业 1.在DLL新增一个节并将导出表信息移动到这个新的节中 2.使用工具打开修改后的DLL看能否正常解析. 3.在DLL中新增一个节并将重定位表移动到这个新的节中 4.修改DLL的ImageBase,根据重定位表修正然后存盘.看叫号否可以使用.
http://www.zqtcl.cn/news/164996/

相关文章:

  • 做电影资源网站服务器怎么选wordpress唱片公司模板
  • 医院网站建设投标要求wordpress文章的表是什么
  • 怎么做网站后门海外营销推广
  • 网站建设中英版网站要做手机版怎么做的
  • 安徽网站开发与维护专业阜阳建设部网站
  • 山东省住房和建设厅网站网站优化大计
  • 大良建网站织梦建设两个网站 视频
  • 用html5制作个人网站航空港建设局网站
  • 祥云平台建站网站备案通过什么可以备案
  • 免费建造网站系统php和wordpress
  • 九脉堂是做网站的网站权重不稳定
  • 网站怎么做来流量门户网站的发布特点
  • 网站设计相似侵权吗免费游戏网站建设
  • 湖北长安建设网站制作一个网站的步骤是什么
  • js网站开发成都房地产最新政策
  • 天津网站制作维护无锡网络推广外包
  • 国外中文网站排行娱乐新闻做的好的网站
  • 零食网站建设需求分析规划设计网址
  • 建立网站备案的法律依据wordpress 招商系统
  • 建设银行全球门户网站网站建设技能
  • 提供企业网站建设价格10元一年的虚拟主机
  • 塔城建设局网站电子商务网站建设方案目录
  • 网站容易被百度收录个人建购物网站怎么备案
  • 中文网站什么意思wordpress电脑访问不了
  • 杨家坪网站建设企业生产erp软件公司
  • 网站模块设计软件河北seo优化_网络建设营销_网站推广服务 - 河北邢台seo
  • 陕西正天建设有限公司网站西安专业网页制作
  • 网站建设工作室介绍范文seo网站排名的软件
  • 上海网站建设-网建知识可编辑个人简历模板
  • 北京新鸿儒做的网站shopify做国内网站