背景:

背景:

我已经研究这个主题大约两天了,但还没有找到满足我的要求的解决方案。

背景:

我拥有一台便宜的中国 CCTV DVR,它运行的是精简版 Linux。一旦您在这些盒子上配置了管理员密码,它就会被写入 BIOS eeprom。如果您忘记了密码,那么您将受到很大限制;您要么尝试使用密码恢复工具(对我来说都不起作用),要么尝试用新文件覆盖 BIOS .bin 文件,并希望您有一个可以正确启动硬件并识别主板上所有组件的文件。我试过,试过,没有用(说来话长!)我尝试了 3 个非常相似的不同 BIOS 映像,但无法完全识别我的 MB 上的所有硬件。

我需要弄清楚密码在原始 BIOS 文件系统中的写入位置,看看是否可以恢复它。

所以....

我有此 BIOS 芯片的 .bin 转储。我使用 CH341 USB 编程器获取了 .bin 转储。我从主板上拆下芯片,并读取了其内容。我“认为”(假设?)它包含 MBR 和一些其他分区。

我想要“挂载”这个.bin 文件并能够读取文件系统的内容。

到目前为止,我已尝试了以下操作:

  1. 使用 HxD Hex Editor 读取文件内容。它显示了“一些”信息,但并不是完全有用。
  2. 我已使用 DD 将 .bin 文件写入 USB 密钥
  3. 然后我使用了 2 个不同的文件恢复实用程序来读取 USB 密钥的内容。
  4. 不幸的是,虽然我在这个过程中学到了一些东西,但这只导致文件恢复实用程序从 USB 密钥中恢复了之前删除的照片和视频。而不是真正读取我用 DD 写入的文件。
  5. 我尝试启动 GParted,并读取 USB 密钥的内容。它无法识别任何分区。

所以,

我怎样才能将此 .bin 转储写入磁盘或虚拟磁盘文件并读取内容?例如安装 Linux 分区?

如果您想试用一下,可以在此处找到 .bin 文件。其中没有敏感数据:https://drive.google.com/file/d/19epXpqNXnw5TfAj3lQKDtSYABqXgOM86/view?usp=sharing

答案1

好的,经过进一步研究并咨询其他文件系统专家后,我们确定这个 .bin 映像包含一些压缩的 cramfs 和 squashfs 分区。

经过进一步挖掘,并尝试了各种不同的取证实用程序,我终于找到了一个可以提取 cramfs 并将其挂载到 Ubuntu 中的实用程序。该实用程序名为https://github.com/ReFirmLabs/binwalk

我现在可以读取文件系统,并且我相信我已经找到了包含 Web 界面密码的文件。它似乎是 /squashfs-root-0/etc/auth.dat 文件。可能是 Java JSON Web 令牌,但目前还不能 100% 确定!

答案2

有些分区,尤其是手机上的绝大多数系统分区,它们没有任何文件系统,因此无法读取其中的文件,只能读取 .img 转储。bios 转储也是如此,它肯定有文件,但没有任何文件系统可供读取。供应商害怕让人们看到一些文件(我不知道为什么,它不是源代码)。例如,libreboot 和 coreboot rom 带有文件系统(corebootfs),并且可以在 rom 中读取和修改固件文件。编辑:我在写这篇文章时并没有阅读这篇文章的所有帖子;是的,一些固件(如果不是全部)确实有文件系统,但需要挖掘,而且您无法使用常规工具打开它。

相关内容