reverse engineering for compliance check.

Steve Taylor steve at thetaylorfamily.org.uk
Sun Apr 17 01:13:46 CEST 2005


Hi Harald,

I think we have some success  in examining the code within the Orite 
IC301 ipcam, whose drivers are distributed in binary only form, which, 
from this appearsto violate GPL.

We have discovered various things, like busybox is being used, 
unattributed, along with this lot attached below....

The file referred to as W99683.c is a low level devicedriver fora 
WinBond camera chip.

Now what do I do ?

Steve




$ strings  alan2 | grep -i linux
TERM=linux
Linux version 2.4.20-uc0 (root at localhost.localdomain) (gcc version 3.0) 
#960 Wed Jul 21 10:55:37 CST 2004
<2>abort() called from %p!  (Please report to rmk at arm.linux.org.uk)
Linux
vmlinux
<6>Linux video capture interface: v1.00
Linux
<4>usbaudio: no idea what's going on..., contact 
linux-usb-devel at lists.sourceforge.net

<6>W99683.c: v1.00 for Linux 2.4 : W99683 USB Camera Driver

<6>Linux NET4.0 for Linux 2.4
<6>NET4: Linux TCP/IP 1.0 for NET4.0
Linux


Wea lso have a full directory tree and some other bits of ini and config 
files.

$ file alan3
alan3: romfs filesystem, version 1 781856 bytes, named rom 41886a6e.

$ mkdir mnt
(as root)
# mount -o loop alan3 mnt

$ cd mnt
------------------------------------------------------------------------------
$ ls -R
.:
bin  dev  etc  proc  swap  usr  var

./bin:
camera.flat  ifconfig  iwconfig  mount  route
dhcpc        inittab   mctest    pppd   sh

./dev:
console  mtd1       ppp   ptyp0  ptyp2  sda   ttyS0  ttyp0  ttyp2   video1
dsp      mtdblock1  ppp1  ptyp1  rom1   sda1  ttyS1  ttyp1  video0

./etc:
Html  WCConfig.ini  ppp

./etc/Html:
Ctl  Reboot  favicon.ico  index.htm  pda

./etc/Html/Ctl:
Add.htm          Log.htm       Reboot.htm      i_motion.htm
Audio.htm        Main.htm      System.htm      images
CheckUpdate.htm  Motion.htm    Update.htm      index.htm
Config.htm       Network.htm   User.htm        internal_Control.htm
Control.htm      OriteASP.htm  WinWebPush.cab
Dyndns.htm       OritePHP.htm  Wireless.htm

./etc/Html/Ctl/images:
back.gif  bg.gif  bg.jpg  logo.jpg  pic001.gif  space.gif

./etc/Html/Reboot:

./etc/Html/pda:
index.htm

./etc/ppp:
pppoe-options

./proc:

./swap:

./usr:

./var:
run

./var/run:

------------------------------------------------------------------------------
$ find . -type f | xargs file
./etc/WCConfig.ini:                  ASCII English text, with CRLF line 
terminators
./etc/Html/index.htm:                HTML document text
./etc/Html/favicon.ico:              MPEG sequence
./etc/Html/Ctl/Add.htm:              HTML document text
./etc/Html/Ctl/CheckUpdate.htm:      HTML document text
./etc/Html/Ctl/Config.htm:           HTML document text
./etc/Html/Ctl/Control.htm:          HTML document text
./etc/Html/Ctl/index.htm:            HTML document text
./etc/Html/Ctl/Log.htm:              HTML document text
./etc/Html/Ctl/Main.htm:             HTML document text
./etc/Html/Ctl/Motion.htm:           HTML document text
./etc/Html/Ctl/Network.htm:          HTML document text
./etc/Html/Ctl/System.htm:           HTML document text
./etc/Html/Ctl/User.htm:             HTML document text
./etc/Html/Ctl/WinWebPush.cab:       Microsoft Cabinet file, 158161 
bytes, 1 file
./etc/Html/Ctl/Update.htm:           HTML document text
./etc/Html/Ctl/Wireless.htm:         HTML document text
./etc/Html/Ctl/Audio.htm:            HTML document text
./etc/Html/Ctl/Reboot.htm:           HTML document text
./etc/Html/Ctl/images/back.gif:      GIF image data, version 89a, 43 x 11
./etc/Html/Ctl/images/bg.gif:        GIF image data, version 89a, 900 x 5
./etc/Html/Ctl/images/bg.jpg:        JPEG image data, JFIF standard 1.02
./etc/Html/Ctl/images/logo.jpg:      JPEG image data, JFIF standard 1.02
./etc/Html/Ctl/images/pic001.gif:    GIF image data, version 89a, 205 x 19
./etc/Html/Ctl/images/space.gif:     GIF image data, version 89a, 13 x 13
./etc/Html/Ctl/OriteASP.htm:         HTML document text
./etc/Html/Ctl/OritePHP.htm:         HTML document text
./etc/Html/Ctl/Dyndns.htm:           HTML document text
./etc/Html/Ctl/i_motion.htm:         HTML document text
./etc/Html/Ctl/internal_Control.htm: HTML document text
./etc/Html/pda/index.htm:            HTML document text
./etc/ppp/pppoe-options:             ASCII text, with CRLF line terminators
./bin/sh:                            BFLT executable - version 4 ram gzip
./bin/route:                         BFLT executable - version 4 ram gzip
./bin/mount:                         BFLT executable - version 4 ram gzip
./bin/ifconfig:                      BFLT executable - version 4 ram gzip
./bin/pppd:                          BFLT executable - version 4 ram gzip
./bin/mctest:                        BFLT executable - version 4 ram gzip
./bin/dhcpc:                         BFLT executable - version 4 ram gzip
./bin/inittab:                       ASCII text, with CRLF line terminators
./bin/camera.flat:                   BFLT executable - version 4 ram gzip
./bin/iwconfig:                      BFLT executable - version 4 ram gzip

$ cd bin
------------------------------------------------------------------------------
$ cat inittab
mount -t proc none /proc
mount -t ramfs none /usr
mount -t ramfs none /swap
mount -t ramfs none /var/run
mount -t ramfs none /etc/Html/Reboot
cp /etc/Html/Ctl/Reboot.htm /etc/Html/Reboot/Reboot.htm
#cp /etc/Html/Reboot.htm /etc/Html/Reboot/Reboot.htm
ifconfig lo 127.0.0.1
#ifconfig eth1 hw ether 00:1c:2a:42:46:11
ifconfig eth1 up
camera.flat&
mctest&
sh
------------------------------------------------------------------------------
$ ls -l
total 449
-rwxr-xr-x  1 root root 157127 1970-01-01 01:00 camera.flat
-rwxr-xr-x  1 root root  40604 1970-01-01 01:00 dhcpc
-rwxr-xr-x  1 root root  21610 1970-01-01 01:00 ifconfig
-rwxr-xr-x  1 root root    369 1970-01-01 01:00 inittab
-rwxr-xr-x  1 root root  25106 1970-01-01 01:00 iwconfig
-rwxr-xr-x  1 root root  26333 1970-01-01 01:00 mctest
-rwxr-xr-x  1 root root  33157 1970-01-01 01:00 mount
-rwxr-xr-x  1 root root  89918 1970-01-01 01:00 pppd
-rwxr-xr-x  1 root root  22911 1970-01-01 01:00 route
-rwxr-xr-x  1 root root  37370 1970-01-01 01:00 sh

$ cd ../etc

$ cat WCConfig.ini
------------------------------------------------------------------------------
#	the file will be read by ReadCameraINI() in Param.c

[IP]
CameraName =
DNS0 =
DNS1 =
DNS2 =

[IP_eth1]
Enable = true
IPAssignment = dhcp
IP =
Netmask =
Gateway =

[IP_wlan0]
Enable = false
IPAssignment = dhcp
IP =
Netmask =
Gateway =

[PPPoE]
PPPoEConnectOnBoot = 0
PPPoEUserName =
PPPoEUserPass =
PPPoESeviceName =
PPPoEDisConnectTime_InSec = 0

[Modem]
EnableModemAutoConnect = 0
ModemUserName =
ModemUserPass =
ModemPhone =
ModemDisConnectTime_InSec = 0

[Dial]
MailOnDial = 0
DialMailSender =
DialMailReceiver =
DialMailServer =
DialMailUser =
DialMailPassword =
DialMailCheckPass = 0
DialMailSubject = IP Camera PPP Dialed!

[Ftp]
FtpFtpServer =
FtpUser =
FtpPass =
FtpAccount =
FtpUploadPath =
FtpEnable = 0

[Mail]
MailSender =
MailReceiver =
MailServer =
MailUser =
MailPassword =
MailCheckPass = 0
MailSubject = IP Camera Warning!
MailEnable = 0

[User]
UserCheck = false
AdminName = administrator
AdminPass = oritetecharm

[Camera]
DefaultImg = true
ImgResolution = 2
ImgQuality = 1
ImgBrightness = 127
ImgContrast = 0
ImgHue = 0
ImgSaturation = 191
ImgSharpness = 0
MoniteRect = 0, 0, 0, 0
MotionDetectSensitivity = 0
MotionDetect = 0	# none 0, soft 1, hard 2
AECFrequency = 1	#0 Outdoor, 1 50HZ, 2 60HZ
Channel = 271
Volume = 80

[Other]
TimeZone = -480
NtpServer =
UseNtp = false

[#DDNS]
#Enable = 0
#User =
#Pass =
#DomainName =
#Proxy =
#ProxyUser =
#ProxyPass =

[DDNS]
Enable_Dyndns = 0
User_Dyndns =
Pass_Dyndns =
DomainName_Dyndns =
Proxy_Dyndns =
ProxyUser_Dyndns =
ProxyPass_Dyndns =

Enable_ASP = 0
User_ASP =
Pass_ASP =
DomainName_ASP = www.ipcamserver.com.tw
Proxy_ASP =
ProxyUser_ASP =
ProxyPass_ASP =

Enable_PHP = 0
User_PHP =
Pass_PHP =
DomainName_PHP = www.ipcamddns.com.tw
Proxy_PHP =
ProxyUser_PHP =
ProxyPass_PHP =



More information about the Tech mailing list