diff options
| author | b4ry0n <b4ry0n@web> | 2014-01-14 01:22:21 +0100 | 
|---|---|---|
| committer | Wiki User Oberon <nobody@nowhere.ws> | 2014-01-14 01:22:21 +0100 | 
| commit | c52f627b39dbcc97f94f730af197c72baea4c09f (patch) | |
| tree | ff1e25d054bb47821e06f91a08785bbe74281348 | |
| parent | 9d4ffc42ef72260aaa12924b6eb96f3b6339ca32 (diff) | |
| -rw-r--r-- | CCTV-Hacking.mdwn | 131 | 
1 files changed, 131 insertions, 0 deletions
| diff --git a/CCTV-Hacking.mdwn b/CCTV-Hacking.mdwn new file mode 100644 index 0000000..5a4ead4 --- /dev/null +++ b/CCTV-Hacking.mdwn @@ -0,0 +1,131 @@ +##Zusammenfassung + +Wir experimentieren gerade im Rahmen eines Kunstprojektes mit Überwachungskameras herum. Das Ziel ist ein Interface für 8 Überwachungskameras zu schreiben, welches die Bilder aller Kameras anzeigt, und mit dem man die Kameras steuern kann. + +Da es sich dabei um undokumentierte Hardware handelt, haben wir die Befehle, die die Kamera per Webinterface entgegennimmt mitgelesen. + +## DHCP-Server installieren, z.B. udhcpd + +Zunächst startet installiert man sich einen DHCP-Server, z.B. udhcpd + +Das Standard-Config-File ist eigentlich ok. So in etwa sollte es aussehen: + +[[!format c """ +server          192.168.0.1 +start           192.168.0.100 +end             192.168.0.254 +interface       enp0s25 +option  subnet  255.255.255.0 +option  router  192.168.0.1 +option  dns     192.168.0.1 +option  lease   259200 +"""]] + +## Wireshark starten + +Nachdem der DHCP-Server läuft und die Kamera Strom hat, und mit dem Rechner verbunden worden ist, startet man wireshark und lauscht auf dem Interface. + +Damit man nicht den ganzen Traffic durchwühlen muss, empfiehlt es sich als Filter  +*http.request.method* zu nehmen. Dann sieht man alle Requests, die in Richtung Kamera vom Webinterface aus gehen. + +Anschliessend steuert man die IP der Kamera im Browser an (bei mir 192.168.0.117). Als Login funktioniert hoffentlich die Werkseinstellung (admin/123456). + +Nun kann man im Webinterface rumklicken, und sieht in wireshark alle Requests. + +## Die Kamera + +Es handelt sich bei den benutzten Kameras um die *Conceptronic Wireless Pan & Tilt Network Camera*. Diese gibt es unter vielen anderen Bezeichnungen für wenig Geld im Elektronikladen des Vertrauens. + +## Steuerbefehle + +One Direction:  +[[!format c """ +http://192.168.0.117/decoder_control.cgi?onestep=1&command=X +X = 0 --> down +X = 2 --> up +X = 4 --> clockwise +X = 6 --> counter-clockwise +"""]] + +Two Directions:  +[[!format c """ +http://192.168.0.117/decoder_control.cgi?command=X +X = 93 --> up AND counter-clockwise +X = 92 --> up AND clockwise +X = 91 --> down AND counter-clockwise +X = 90 --> down AND clockwise +"""]] + +after the two directions commands is sent, a second request is sent 500ms later: +http://192.168.0.117/decoder_control.cgi?command=1 + +Streife: +[[!format c """ +Horizontal:     http://192.168.0.117/decoder_control.cgi?command=28 +Stop:           http://192.168.0.117/decoder_control.cgi?command=29 +Vertikal:       http://192.168.0.117/decoder_control.cgi?command=26 +Stop:           http://192.168.0.117/decoder_control.cgi?command=27 +"""]] + +Bildeinstellungen: +[[!format c """ +Reversal:       http://192.168.0.117/camera_control.cgi?param=5&value=1 +Non-Reversal:   http://192.168.0.117/camera_control.cgi?param=5&value=2 +Mirror:         http://192.168.0.117/camera_control.cgi?param=5&value=3 +Non-Mirror:     http://192.168.0.117/camera_control.cgi?param=5&value=0 +"""]] + +Snapshot: +[[!format c """ +http://192.168.0.117/snapshot.cgi +"""]] + +Refresh-Button: +[[!format c """ +http://192.168.0.117/live.htm +http://192.168.0.117/videostream.cgi?rate=0 +"""]] + +Mode: +[[!format c """ +50Hz:    http://192.168.0.117/camera_control.cgi?param=3&value=0 +60Hz:    http://192.168.0.117/camera_control.cgi?param=3&value=1 +outdoor: http://192.168.0.117/camera_control.cgi?param=3&value=2 +"""]] + +Size: +[[!format c """ +160x120:        http://192.168.0.117/camera_control.cgi?param=0&value=2 +320x240:        http://192.168.0.117/camera_control.cgi?param=0&value=8 +640x480:        http://192.168.0.117/camera_control.cgi?param=0&value=32 +"""]] + +Rate: +[[!format c """ +Full Speed:      http://192.168.0.117/videostream.cgi?rate=0 +20  fps:         http://192.168.0.117/videostream.cgi?rate=1 +15  fps:         http://192.168.0.117/videostream.cgi?rate=3 +10  fps:         http://192.168.0.117/videostream.cgi?rate=6 + 5  fps:         http://192.168.0.117/videostream.cgi?rate=11 + 4  fps:         http://192.168.0.117/videostream.cgi?rate=12 + 3  fps:         http://192.168.0.117/videostream.cgi?rate=13 + 2  fps:         http://192.168.0.117/videostream.cgi?rate=14 + 1  fps:         http://192.168.0.117/videostream.cgi?rate=15 +.5  fps:         http://192.168.0.117/videostream.cgi?rate=17 +.33 fps:         http://192.168.0.117/videostream.cgi?rate=19 +.25 fps:         http://192.168.0.117/videostream.cgi?rate=21 +.2  fps:         http://192.168.0.117/videostream.cgi?rate=23 +"""]] + + +Brightness: +[[!format c """ +http://192.168.0.117/camera_control.cgi?param=1&value=X +X = 0, 16, 32, 48, 64, 80, 96, 112, 128, 144, 160, 176, 192, 208, 224, 240 +"""]] + +Contrast: +[[!format c """ +http://192.168.0.117/camera_control.cgi?param=2&value=X +X = 0, 1, 2, 3, 4, 5, 6 +"""]] | 
