【发布时间】:2019-11-29 10:30:59
【问题描述】:
所以我得到了这个面试任务,这似乎有点令人困惑。
我的工作是,我得到了几个二进制文件(例如联系人、电话等),我需要尽可能多地提取信息。
我使用 Hex Fiend(picture of hex fiend here) 对二进制文件进行了解码,我得到了调用应该是什么样子(picture of the calls here) 的图片。
我的任务是用 C++ 编写的,我设法提取了诸如电话号码和“TO”标签之类的信息,但所有其他数据似乎都无法读取为字符。它是否被编码为类似标题描述的 ascii 消息,标签应该在哪里,或者它应该被损坏/不可读?
我也应该能够提取日期和持续时间。
到目前为止,我已经解析了文件,因此当字符小于或等于 31 且大于或等于 127 时将其替换为空格,以便我可以看到与电话号码等实际数据相对应的字母/数字.
我解决这类问题的主要想法是弄清楚二进制文件的结构。
例如 01020304 可能是一个标头,表明这是一个日志并且有数据。
关于如何解决其余问题的任何想法?
提前感谢!
【问题讨论】:
-
对于后续问题,您最好在the reverse engineering SE
标签: c++ binaryfiles binary-data extraction