好友
阅读权限10
听众
最后登录1970-1-1
|
我用的飞鸽传书
计算E8后边的值
文件中,E8下一行地址相对PointerToRawData偏移量:00255ced-400=25 58ED‬
映射到内存中,E8下一行地址:ImageBase + VirtualAddress +25 58ED‬ =
00400000+1000+25 58ED=65 68ED
E8后边的值:MessageBox - 65 68ED = 75890380 - 65 68ED =7523 9A93‬
计算E9后边的值
原来OEP(真正要跳转的地址):ImageBase + AddressOfEntryPoint =
00400000 + 002085D8=60 85D8‬
文件中,E9下一行地址相对PointerToRawData偏移量:255cf2 - 0x400 = 25 58F2‬
映射到内存中,E9下一行地址:ImageBase + VirtualAddress + 25 58F2‬ =
00400000+1000+25 58F2=65 68F2‬
E9后边的值:`25 58F2‬ -65 68F2 = FFBF F000‬
修改OEP(AddressOfEntryPoint)
文件中shellcode起始地址相对PointerToRawData偏移量:255ce0- 0x400 = 25 58E0‬
映射到内存中,相对ImageBase偏移:VirtualAddress + 25 58E0‬ = 25 68E0‬
将原来的OEP修改为,映射到内存后的shellcode起始地址(0x25 68E0‬)。
结果修改完了之后发现程序打不开,请大佬帮忙看下问题
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|