ida pro恢复去符号程序的符号
序言
第一部分说的都是废话吧,对我来说,建议用后面部分的
恢复方法
lscanf
首先获得sig,我这里用的是lscanf里的sig
先扫描下
python lscan.py -f stripped -S amd64/sig/
amd64/sig/libc-2.13.sig 12266/3369 (364.08%)
amd64/sig/libc-2.22.sig 12870/2859 (450.16%)
amd64/sig/libc-2.23.sig 13163/2869 (458.80%)
amd64/sig/libcrypto-1.0.2h.sig 36850/5057 (728.69%)
amd64/sig/libm-2.13.sig 11125/445 (2500.00%)
amd64/sig/libm-2.22.sig 11121/582 (1910.82%)
amd64/sig/libm-2.23.sig 11124/600 (1854.00%)
amd64/sig/libpcre-8.38.sig 18/150 (12.00%)
amd64/sig/libpthread-2.13.sig 11379/319 (3567.08%)
amd64/sig/libpthread-2.22.sig 11159/262 (4259.16%)
amd64/sig/libpthread-2.23.sig 11160/258 (4325.58%)
amd64/sig/libssl-1.0.2h.sig 0/665 (0.00%)
对比下符号哪个版本最匹配,这里显示是libm-2.13是最高的
到目录下移动libm-2.13.sig到IDA pro的安装目录下的sig文件夹下的pc目录下(大坑,网上都说是sig目录下,放到那完全没用,对我来说)
emm,这个lscan 有点坑,我跑起来会卡死我机子,算了删了,手动尝试吧,下个sig database
sig-database
file->Load file->flirt signature file
或者shift+f5
重要的事情
将.sig移动到IDA pro的安装目录下的sig文件夹下的pc目录下(大坑,网上都说是sig目录下,放到那完全没用,对我来说)
将.sig移动到IDA pro的安装目录下的sig文件夹下的pc目录下(大坑,网上都说是sig目录下,放到那完全没用,对我来说)
将.sig移动到IDA pro的安装目录下的sig文件夹下的pc目录下(大坑,网上都说是sig目录下,放到那完全没用,对我来说)
红帽杯 2019 three
这道题也是去除了符号表的
经尝试好多次后,发觉这个最符合,
libc6_2.27-0ubuntu2_i386 Applied 460 ubuntu 18.04 libc6 (2.27-0ubuntu2/i386)
看下恢复符号后
恢复符号前
好明显的对比,太强了
湖湘杯 HackNote
这个最匹配的库
libc6_2.23-0ubuntu10_amd64 Applied 671 ubuntu 16.04 libc6 (2.23-0ubuntu10/amd64)
多么好看的场景
总结
静态去符号的题目最近做了好几道,总结下这种方法,避免以后再次遇到