一道ASPack加壳题和类型强转的坑
DASCTF,easyre签到题,ASPack,脱壳后找到关键函数
1 | int __cdecl sub_401771(char *Str) |
可以看到逻辑很简单,但是这里有int和char的强转问题,直接python逆向,会出现超出有符号char类型范围的问题。可以看到强转的汇编位置:
所以编写脚本的时候必须舍弃高位,低8位要和0x7F相与
wp
1 | # coding : utf-8 |
DASCTF,easyre签到题,ASPack,脱壳后找到关键函数
1 | int __cdecl sub_401771(char *Str) |
可以看到逻辑很简单,但是这里有int和char的强转问题,直接python逆向,会出现超出有符号char类型范围的问题。可以看到强转的汇编位置:
所以编写脚本的时候必须舍弃高位,低8位要和0x7F相与
wp
1 | # coding : utf-8 |