首页
社区
课程
招聘
[原创]+[翻译]Another Foscam FI8908W Clone Firmware Exploration
发表于: 2017-9-27 10:29 4994

[原创]+[翻译]Another Foscam FI8908W Clone Firmware Exploration

2017-9-27 10:29
4994

[原创]+[翻译]Another Foscam FI8908W Clone Firmware Exploration


从智能摄像头研究的论坛上看到一篇,主要讲的是固件的修改。

以下是意会过来的内容。

文中提到的附件工具和刷机包均在

http://www.saveontelephonebills.com/camera/908clonerecovery.zip

可惜我打不开。


目标设备:FI8908W

评测环境:Win7 64b

评测前准备:备份所有的配置文件等内容


获得配置

xxx.xxx.xxx.xxx = Local IP Address or ISP IP Address or DDNS of IP Camera

#### = Port for IP Camera

Username = Admin Level User Name of IP Camera

Password = Password for the above User Name of IP Camera

 

尝试通过http cgi端口获得(支持CGI网络访问的摄像头方可用此方法尝试)

http://xxx.xxx.xxx.xxx:####/get_params.cgi?user=Username&pwd=Password

或的结果后,保存下来


小螺丝刀

烙铁和焊锡

杜邦线(接串口)

支持3.3VDC的串口接口

USB转UART TTL线

 

从IP Cam中获取的文件

1. linux.zip

2. romfs.img

3. 0.2.9.12.bin ("WebUI")

4. lr_cmos_0_37_2_47.bin ("Is the normal system firmware for the camera, having 1. and 2. here merged")

5. IPCamera.exe ("IP Camera Finder Tool")

6. ActiveX_IP.exe ("ActiveX Installer")

7. Instructions ("Windows Shortcut to this Forum post here")

 

获取Boot Loader Users Manual

 

该款PCB上清楚的印有串口标记,4个空的Pin孔,标记有3.3V,Rx GND等

其他地方有3.5V DC的Pin孔,不要连接


使用HyperTerminal或ClearTerminal进行COMM口通信。

可以通过ClearTerminal输入命令或发送文件。

 

使用串口命令对摄像头进行Recovery操作。

 

使用串口能看到完整的Boot信息。根据BootLoader的User Manual能发现可用命令。

 

在启动过程中根据提示,按“ESC”进入Boot的 Debug模式,即可使用BootLoader的命令。

bootloader > ls

Image: 0 name:BOOT INFO base:0x7F010000 size:0x00000038 exec:0x7F010000 -af

Image: 7 name:linux.bin base:0x7F020000 size:0x000ADFD8 exec:0x00008000 -acxz

Image: 6 name:romfs.img base:0x7F0D0000 size:0x000FC800 exec:0x7F0D0000 -a

 

bootloader >i

 

W90P745 Boot Loader [ Version 1.1 $Revision: 1 $ ] Rebuilt on May 11 2010

Memory Size is 0x1000000 Bytes, Flash Size is 0x400000 Bytes

Board designed by Winbond

Hardware support provided at Winbond

Copyright (c) Winbond Limited 2001 - 2006. All rights reserved.

Boot Loader Configuration:

 

MAC Address         : 00:6E:06:05:8A:12

IP Address          : 0.0.0.0

DHCP Client         : Enabled

CACHE               : Enabled

BL buffer base      : 0x00300000

BL buffer size      : 0x00100000

Baud Rate           : -1

 

Bootloader只允许一次显示256Bytes的内存地址


根据内存地址,对二进制文件进行dump。

 

如WebUI.bin位置在0x7F200000 - 0x7F33727F

通过命令

d 0x7f200000

可以dump内存

d 0x7f200000

Displaying memory at 0x7F200000

[7F200000] 440C9ABD 04D81A69 - 000E124B 0C090200  ...Di...K.......

[7F200010] 0000000F 7463412F - 58657669 2E50495F  ..../ActiveX_IP.

[7F200020] 01657865 00016E92 - 00905A4D 00000003  exe..n..MZ......

[7F200030] 00000004 0000FFFF - 000000B8 00000000  ................

[7F200040] 00000040 00000000 - 00000000 00000000  @...............

[7F200050] 00000000 00000000 - 00000000 00000000  ................

[7F200060] 00000000 000000D0 - 0EBA1F0E CD09B400  ................

[7F200070] 4C01B821 685421CD - 70207369 72676F72  !..L.!This.progr

[7F200080] 63206D61 6F6E6E61 - 65622074 6E757220  am.cannot.be.run

[7F200090] 206E6920 20534F44 - 65646F6D 0A0D0D2E  .in.DOS.mode....

[7F2000A0] 00000024 00000000 - A84A75E5 FB2414A1  $........uJ...$.

[7F2000B0] FB2414A1 FB2414A1 - FB7B1C2F FB2414A3  ..$...$./.{...$.

[7F2000C0] FB2514A1 FB24143A - FB791C22 FB2414B0  ..%.:.$.".y...$.

[7F2000D0] FB1437F5 FB2414A8 - FB221266 FB2414A0  .7....$.f."...$.

[7F2000E0] 68636952 FB2414A1 - 00000000 00000000  Rich..$.........

[7F2000F0] 00000000 00000000 - 00004550 0005014C  ........PE..L...

 

bootloader >

 

配置文件“params.bin”在0x7F1F0000 - 0x7F1F1533

d 0x7f1f0000

Displaying memory at 0x7F1F0000

[7F1F0000] 440C9ABD 000058F6 - 00001534 45363030  ...D.X..4...006E

[7F1F0010] 35303630 32314138 - 02250000 0902002F  06058A12..%./...

[7F1F0020] 6D65440C 6143206F - 6172656D 00003220  .Demo.Camera.2..

[7F1F0030] 00000000 64610000 - 006E696D 00000000  ......admin.....

[7F1F0040] 70000000 77737361 - 0064726F 00006461  ...password.ad..

[7F1F0050] 00000002 00000000 - 00000000 00000000  ................

[7F1F0060] 00000000 00000000 - 00000000 00000000  ................

[7F1F0070] 00000000 00000000 - 00000000 00000000  ................

[7F1F0080] 00000000 00000000 - 00000000 00000000  ................

[7F1F0090] 00000000 00000000 - 00000000 00000000  ................

[7F1F00A0] 00000000 00000000 - 00000000 00000000  ................

[7F1F00B0] 00000000 00000000 - 00000000 00000000  ................

[7F1F00C0] 00000000 00000000 - 00000000 00000000  ................

[7F1F00D0] 00000000 00000000 - 00000000 00000000  ................

[7F1F00E0] 00000000 00000000 - 00000000 00000000  ................

[7F1F00F0] 00000000 00000000 - 00000000 00000000  ................

 

bootloader >


该版本摄像头自带"Sash command shell (version 1.1.1)".

通用的Sash命令参考:http://www.linuxcommand.org/man_pages/sash8.html

 

从Bootloader切换到内置shell command只需要提示符切入ClearTerminal main window 然后使用<Enter>键即可,shell支持如下命令:

/> help

cd         [dirname]

sleep      seconds

chgrp      gid filename ...

chmod      mode filename ...

chown      uid filename ...


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 1
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//