PE格式分析_5(IMAGE_OPTIONAL_HEADER)
IMAGE_OPTIONAL_HEADER typedef struct _IMAGE_OPTIONAL_HEADER { WORD Magic; // 判断32位0x10b,64位0x20b BYTE MajorLinkerVersion; // 主链接器版本号,仅供参考 BYTE MinorLinkerVersion; // 副链接器版本号,仅供参考 //系统分配内存不看着3个值,对于调试器有影响 DWORD SizeOfCode; // 代码所占空间大小,仅供参考,OD反汇编代码,通过这个字段获得内存 // SizeOfCode可以尝试出极限值,让OD调试可以使用,但是会卡很久 // OS是从节表里算的代码段的大小 DWORD SizeOfInitializedData; // 已初始化数据所占空间大小,仅供参考,微软没使用 DWORD SizeOfUninitializedData;// 未初始化数据所占空间大小,仅供参考,微软没使用 DWORD AddressOfEntryPoint; // ***** oep:原本的程序入口 //这个值可以修改,但是修改过后必须跳转到在该偏移处跳转到真正入口 DWORD BaseOfCode; // 代码基址 (无用) DWORD BaseOfData; // 数据基址 (无用) DWORD ImageBase; // ****** 建议模块地址:exe映射加载到内存中的首地址 = PE 0处,即实例句柄hInstance // 一般而言,exe文件可遵从装载地址建议,但dll文件无法满足 (开了随机基址可能也不是这个值,是通过重定位表得到) //这个值最好不要改,改的话要改动大量地方,因为函数和全局变量的地址也需要跟着改变 DWORD Sectio…
win7/win8/win9/win11 配置双机调试环境
win7、win8、win9、win11 配置双机调试环境 1、管理员运行cmd 2、拷贝一份 再修改 3、bcdedit命令 查看就多了一个开机启动项 4、给创建的启动项配置打开debug模式 5、 bcdedit 命令查看,debug打开了 6、配置波特率和串口 敲命令行 bcdedit /dbgsettings /? 在提示信息里直接拷贝 7、配置串口 同时删除打印机(这个会影响调试) windbg也要配置相同的串口和波特率 8、重启虚拟机,选择第二个 debug 9、连接成功 参考: [1]. 科锐逆向机构 [2]. win7双机调试环境搭建
blog-排查图片不清晰的问题
使用了两个插件 Image Quality 【无效】 自定义WordPress的图片压缩 (插件:Image Quality) Image Quality 是一个支持可以在网站后台的 设置 > 媒体(Settings > Media)页面,就能自定义设置图片压缩质量的效率插件。 安装此插件后,会在后台的设置 > 媒体(Settings > Media)页面,新增一个新的 Image Quality 设置项,我们只需要根据自己的图片质量压缩需求,自定义压缩比例即可( 1 ~ 100 的数值) Image Quality 插件下载地址:https://wordpress.org/plugins/image-quality/ 类似插件还有:Imsanity。 Regenerate Thumbnails 【无效】 https://wordpress.org/plugins/regenerate-thumbnails/ 重新生成缩略图: 自定义修改设置好图片压缩比例后,这个新的压缩比例只对新上传的图片文件有效,对应您之前已经上传的图片是不会起作用的,因为之前图片的压缩比例缩略图已经生成在媒体库里了。这时,我们就需要用到另外的 重新生成缩略图 插件。 Regenerate Thumbnails – 一键重新生成全站缩略图插件,帮助我们重新生成缩略图,并且,支持重新生成已上传到媒体库的图像的所有缩略图大小。 对于以下情况都很有用: 添加了新的缩略图大小,并且您希望已上传图片能生成新的大小的缩略图; 在后台的设置 > 媒体(Settings > Media)更改了现有缩略图的大小尺寸,需要重新生成新的缩略图; 更换了使用不同大小的特色图像的WordPress主题。 此外,Re…
PE格式分析_4(PE查看工具(010_Editor))
www.010Editor.com 查看PE的工具 winhex 这个功能很强大,但是查看文件结构不方便,可以写脚本来告诉编辑器如何解析,脚本语言是winhex的特定语言; 010_Editor 功能和winhex同样强大,这个也可以写脚本,脚本语言是C语言,因此这个工具会更加方便; 举例: myPE.BT 直接拖到 010_Editor里来写 步骤: vs中的结构体直接拷贝到脚本里,然后重新定义一下就好了(直接把文件拖进010_Editor来编辑),就会按照结构体来解析; myPE.BT typedef struct _IMAGE_DOS_HEADER { // DOS .EXE header WORD e_magic; // Magic number WORD e_cblp; // Bytes on last page of file WORD e_cp; // Pages in file WORD e_crlc; // Relocations WORD e_cparhdr; // Size of header in paragraphs WORD e_minalloc; // Minimum extra paragraphs needed WORD e_maxalloc; // Maximum extra paragraphs needed WORD e_ss; // Initial (relative) SS value WORD e_sp; // Initial SP value WORD e_csum; // Checksum WORD e_ip; // Initial IP value WORD e_cs; // Initial (relative) CS value WORD e…
PE格式分析_3(IMAGE_FILE_HEADER)
pe格式代码,分析PE header #include <stdio.h> #include <Windows.h> //#include <winnt.h> // 定义了pe结构体的所有成员 int main() { /******************************* Dos header ************************************/ IMAGE_DOS_HEADER Header; // Dos头 /******************************* PE header ************************************/ //IMAGE_FILE_HEADER peHeader; // 新的文件格式从这里开始,并开始区分32和64位程序,但是文件头被NT头包含 IMAGE_NT_HEADERS32 NTHeader; // IMAGE_NT_HEADERS32 IMAGE_NT_HEADERS64 NT头(PE) // NT头包含: { IMAGE_FILE_HEADER FileHeader; // 文件头,保存文件信息 IMAGE_OPTIONAL_HEADER32 OptionalHeader; // 选项头,存放程序信息 // 选项头包含: { IMAGE_DATA_DIRECTORY DataDirectory[1]; // 数据目录,存放各种表,放1个表就增加1项 } } /******************************* Section header ************************************/ IMAGE_SECTIO…
PE格式分析_2
编写最小的PE文件 在Windows上新建一个minPE.asm文件,使用vs的x86 Native Tools Command Prompt for VS 2019来编译 使用编译脚本 build.bat ml /c minPE.asm link /entry:START /subsystem:windows /merge:.rdata=.text /ALIGN:16 minPE.obj 注意: 这个ALIGN:16对齐值给512,就没有版本问题了(在xp上不行) 如果是在xp上运行,对齐值给4就可以,但是需要用VC++6.0编译 minPE.asm .386 .model flat,stdcall option casemap:none includelib user32.lib includelib kernel32.lib extern MessageBoxA:proto : dword, : dword, : dword, : dword extern ExitProcess:proto : dword .const g_szText db "pe for pe teach",0 g_szTitle db "tiptip",0 .code START proc push 0 push offset g_szText push offset g_szTitle push 0 call MessageBoxA push 0 call ExitProcess ret START endp end 分析PE文件内容 如果32的PE文件在16位的Dos运行,会怎么样? 可以运行啊,只运行16位的部分,打印出一提示语,先看下PE头的大小字节; Dos的16位…
PE格式分析_1
PE历史简介: portable excute 可移植的,可执行的文件(exe、dll) Microsoft最开始做的Dos系统,开头是MZ标识,又叫MZ系统(这tm是个人名,碉堡了),是16位操作体统。 Microsoft后开开发了Windows NT系统,最大的特点是桌面,是32位操作系统。 那么文件格式需要重新设计,出现了PE,希望一统江湖,考虑了所有的操作系统厂家,但是Apple和Linux没有使用PE,而是用ELF(unix、Linux)格式。 因此PE的文件格式里面有很多字段是 windows 系统用不到的,有些是给已经被淘汰的dos系统用的,还有一些是给其他系统用的,所以不是每个字段都非常有用,只需要关注在 windows 上用的,即windows会检查的一些字段 畸形PE:做过手脚的PE,用于对抗 msdn: 代码解释结构 #include <stdio.h> #include <Windows.h> //#include <winnt.h> // 定义了pe结构体的所有成员 int main() { /******************************* Dos header ************************************/ IMAGE_DOS_HEADER Header; // Dos头 /******************************* PE header ************************************/ //IMAGE_FILE_HEADER peHeader; // 新的文件格式从这里开始,并开始区分32和64位程序,但是文件头被NT头包含 IMAGE_NT_…
Linux环境下gcc编译链接库-lz -lrt -lm -lc都是什么库?
Linux下gcc编译链接库: -lz 压缩库(Z) -lrt 实时库(real time):shm_open系列 -lm 数学库(math) -lc 标准C库(C lib) -dl 显式加载动态库的动态函数库 参考: [1]. Linux环境下gcc编译链接库-lz -lrt -lm -lc都是什么库?
双节之思:照进黑暗中的一束光
放假了,意味着有了更多的可自我支配时间。我没有刻意去计划,也没有特意去安排,而是顺本心而行。情不自禁的就开始追根小说,视频,待看完之后才开始一些新的学习。时间过得很快,三四天转眼而逝,然而回头一看却收获甚浅。带着对时间浪费的懊恼,开始冷静思考:我究竟想做什么样的人,做什么样事? 我一直忙碌学习,奋斗又是为了什么?于是,我开始回望过去,回望这一路走来的点点滴滴:小学、初中、高中、大学…这一路走来,学习了 15 载,然而成果与时间的付出并不成正比,甚至到了现在还学无所成。对前路不仅充满迷茫,更是充满焦虑。随着年龄逐渐增长,责任的天平也越来越向肩上倾斜。这一刻,因为迫切需要破局,迫切需要改变,才下定决心要凝聚时间、精力去学习点什么。都说,工作了之后才是学习的开始!现在才真正明白其中的真意。因为工作需要,现实考验需要,我们只有一种选择,必须掌握。掌握不了,做不来,那只能被淘汰,只能另谋他路。这个时候,我们不会再考虑有没有专门的时间学,不会再考虑学习这些知识会遇到的困难。而是会主动的,利用工作间隙,生活闲暇,利用可利用的一切去学习,在规定时间内完成了任务,破解了当下难题。曾经认为完不成的,掌握不了的东西,没几天就掌握了。这就是学习的开始。通过一顿繁琐的思考,各种思绪在脑子交叉碰撞,最终,我想要的答案浮现出来:人生是一个过程,起点和终点都已确定,唯一的变化就是这一个过程。我要做什么样的人?— —真正的我,本真自我。真正的我是什么样的呢?这就是人生这一个过程需要去探索的了。我不可能一下子就找到真我,只可能逐渐的靠近真我。用心去探寻,用心去体会,用心去感受这个世界的真实,体悟鲜活的生命。直击本心,慢慢去发现真我。我要做什么样的事?— —热爱的事,能够体悟鲜活生命的事。曾经的梦天马行空,缺乏阅历的积累,只能脱离实…
规律:我们共同的认识
1、不值得定律:选择你所爱的,爱你所选择的!『即从主观上认定某件事是不值得做的,那么在做这件事时,就不会全力以赴去把它做好。』 即便做好了,也不会有成就感。意识:要有一击必成的决心。不值得的事情不要做,值得做的事情就要把它做好。不值得爱的人勇敢拒绝交往,一旦选择的恋人就要好好用心去爱。2、选择性注意:关注一件事后,发现它经常出现频率错觉:指因为最近注意到一件原先没注意到的事、词或者名字,就觉得它到处都有。简单来说,就是“一旦发现,随处可见”。当你关注到某件事时,也就是给大脑传递一个信息,你对建这件事感兴趣,所以当这件事出现在你的视线当中,你就会注意到。并不是出现的频率增加了,而是你关注到了。意识:注意细节,专注目标。3、奖惩效应:胡萝卜加大棒通过适当、合理的奖励和惩罚这样的手段,对学生的行为进行外部强化或弱化,并且通过对学生心理状态的影响来改变学生对于自身的评价。信任、赞美和鼓励,总是能很好的激发一个人的上进心,让他们充满积极的能量,肯定自身的价值。实践:赏罚分明奖惩的比例在5:1时,效果最好。多注重精神方面的奖励,较轻物质奖励4、南风效应,“男追女不再隔座山!”是像南风一样,『 能够找到对方的内在需求,然后投其所好,最终达到想要的目标。』处理人和人之间关系的时候,一定要具体问题具体分析,讲究方式方法,一旦方法用错,反而会适得其反。5、强迫性重复:你会不知不觉活成你讨厌的样子所有人都会无意识地重复过往的生活模式,包括伤痛。『每个人都会在现实中重复童年时期痛苦的情结和关系,不断尝试去练习过去没有解决的问题。』
影视记录(持续更新~)
《那山那人那狗》 《我是谁?没有绝对安全的系统》 双赢才是最终目的 《破碎人生》 从始至终,保持着压抑的气氛。 《 如何真正放下自我?专访山东籍的美国黑帮小伙,曾抢劫、贩毒、沉沦 》 人的终点就是神的起点 《 李想: 关于产品的见解 (演讲) 》 价值、安全感、优越感 更多的是用心和热爱,发自内心的想做好一个产品的时候才能做好一个产品。 《 失控玩家 (电影) 》 关键字:离谱,梗,创意,change 《 心灵捕手 (电影) 》 印象最深刻的片段:片尾的长镜头,查克还是一如既往的去接威尔,却发现威尔已经不辞而别了,从开始的疑惑都后面的豁然开朗继而会心一笑,这就是真朋友该有的样子吧。人生就应该有这样一段豁然开朗。 《 教父 第一部 (电影) 》 非常牛皮的"黑帮"组织 《 偷自行车的人 (电影解说) - 木鱼水心 》 不同社会层次的人,看到的问题也是不同的 《 喜剧之王 (电影解说)- 木鱼水心 》 一种狠心的角度解读电影,最后一部分竟然是尹天仇的梦境,这无疑是沉重的 尹天仇问柳飘飘:“喂 能不能不工作啊” 柳飘飘:“不工作你养我啊” 随后两人勉强的微笑,充满了无奈和心酸 还有大家都只看到尹天仇那句我养你啊,却没注意柳飘飘那句你先照顾好你自己吧,傻瓜。 《 无问西东 (电影解说) - 木鱼水心 》 一杯敬明天,一杯敬过往;一杯敬自由,一杯敬死亡! 《 憨豆的黄金周 (电影) 》 生活就是这些琐碎的点点滴滴组成的,真实就是最好的答案 主角全程说话不足20句,唯一印象深刻的台词,可能就是憨豆的眼睛,另外电影结尾非常浪漫,环境是真的美 《 300天4万公里传遍中国,漂流相机终于回来了!》 一场漂流的对话,却沉淀了坚定的力量。摄影最终还是人的情感表达啊~