我有此文件:

[ytti@lintukoto ~/tmp/ida]% file cat3k_caa-universalk9.SPA.03.03.00.SE.150-1.EZ.bin
cat3k_caa-universalk9.SPA.03.03.00.SE.150-1.EZ.bin: data


它是Cisco Catalyst 3650交换机的图像。交换机本身正在运行Cavium,可能是Linux上的Cavium Octeon CPU。

我认为其顶部的文件具有一些专有的标头(也可能是文件完整性的哈希)。
如果我删除我相信是标题,我得到了:

cat3k.mips: mc68010 demand paged executable not stripped


我无法在IDA Pro上打开它,因为它说它是二进制文件,我需要选择入口点。

我很确定它是自解压缩图像,因此我可能也希望能够对其进行解压缩。但是至少unzip和gzip对我失败。您面临挑战,您必须给出匹配的响应,否则就不适合您了。

我正想找到抱怨错误响应的字符串,看看代码的哪一部分跳到那里。我希望在那里找到一些比较,然后再将比较翻转一下。有了预期的结果,将来错误的响应就会成功(正确的响应也会失败)。
我不希望思科采取任何特殊的措施来避免客户故意破坏他们自己的工具包,这对于他们来说更容易证明,该客户并没有通过进入linux shell并杀死某些进程来意外地破坏了它。

如果对文件进行了某种完整性测试,那么我可能会很走运。

但是我很喜欢一些技巧,这些技巧实际上是如何


解压缩此文件
以有意义的方式在IDA Pro中打开它

我可以根据请求共享文件(没有切换就没有用,如果您拥有切换,就可以使用该映像,因此我不认为它是“ warez”)。

挑战看起来像这样:

SWITCH#request system shell
Activity within this shell can jeopardize the functioning of the system.
Are you sure you want to continue? [y/n] y
Challenge:
aa1344d4d0dfbf85b22a719e54fe1365b5be267344223bd66c3b6368b3bd2b7f6b8b03fe87ab57e6360634d8fb>586c42c0918a3786f81a3a60
Please enter the shell access response based on the above challenge (Press "Enter" when do>ne or to quit.): 
kakka
Key verification failed


#1 楼

我首先通过使用binwalk(也是固件mod-kit的一部分)绘制文件的熵来开始的。这将使您对文件的布局(引导加载程序,第二阶段,主固件等)以及是否对部分或整个文件进行加密/压缩有了一个想法。自动根据签名查找已知的文件类型和/或压缩算法。

您可以使用

binwalk -B -E <input>


将这两个步骤结合在一起>咨询FAQ / Wiki,以获得有关binwalk用法的更多信息。然后,您可以开始提取独立的块并将其加载到IDA中。

评论


非常感谢,binwalk是史诗般的,我没有意识到。现在我的问题不在了,我不知道下一步该怎么做,我的问题是首先要做哪些下一步计划:)

–ytti
13年11月21日在13:50