Webcam Spionage???

  • Abend zusammen,

    ich habe mal eine Frage bezüglich meiner webcam, ich habe mir neulich ein script für die webcam aus dem englischem Forum umgebastelt für bewegungserkennung. Das hat vorerst auch ganz gut funktioniert, doch plötzlich ging gar nichts mehr, der Fehler bestand darin, dass das Programm das Kamera handle nicht erlangen konnte. Nach etwas hin und her Probieren ist mir aufgefallen, das ich das Handle nur erlange wenn ich mit dem Laptop nicht im internet bin. Jetzt stellt sich mir die Frage welches Programm benutzt die Webcam wenn ich online bin? ICQ und Steam sind es nicht, deshalb habe ich Angst das ich einen Trojaner habe! Ist sowas möglich und würde man es im Tastmanager Sehen(Netzwerkauslastung oder Prozessorauslast?

    Hier noch das Script:

    Spoiler anzeigen
    [autoit]

    #Region Variablen
    $WM_CAP_START = 0x400
    $WM_CAP_UNICODE_START = $WM_CAP_START +100
    $WM_CAP_PAL_SAVEA = $WM_CAP_START + 81
    $WM_CAP_PAL_SAVEW = $WM_CAP_UNICODE_START + 81
    $WM_CAP_UNICODE_END = $WM_CAP_PAL_SAVEW
    $WM_CAP_ABORT = $WM_CAP_START + 69
    $WM_CAP_DLG_VIDEOCOMPRESSION = $WM_CAP_START + 46
    $WM_CAP_DLG_VIDEODISPLAY = $WM_CAP_START + 43
    $WM_CAP_DLG_VIDEOFORMAT = $WM_CAP_START + 41
    $WM_CAP_DLG_VIDEOSOURCE = $WM_CAP_START + 42
    $WM_CAP_DRIVER_CONNECT = $WM_CAP_START + 10
    $WM_CAP_DRIVER_DISCONNECT = $WM_CAP_START + 11
    $WM_CAP_DRIVER_GET_CAPS = $WM_CAP_START + 14
    $WM_CAP_DRIVER_GET_NAMEA = $WM_CAP_START + 12
    $WM_CAP_DRIVER_GET_NAMEW = $WM_CAP_UNICODE_START + 12
    $WM_CAP_DRIVER_GET_VERSIONA = $WM_CAP_START + 13
    $WM_CAP_DRIVER_GET_VERSIONW = $WM_CAP_UNICODE_START + 13
    $WM_CAP_EDIT_COPY = $WM_CAP_START + 30
    $WM_CAP_END = $WM_CAP_UNICODE_END
    $WM_CAP_FILE_ALLOCATE = $WM_CAP_START + 22
    $WM_CAP_FILE_GET_CAPTURE_FILEA = $WM_CAP_START + 21
    $WM_CAP_FILE_GET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 21
    $WM_CAP_FILE_SAVEASA = $WM_CAP_START + 23
    $WM_CAP_FILE_SAVEASW = $WM_CAP_UNICODE_START + 23
    $WM_CAP_FILE_SAVEDIBA = $WM_CAP_START + 25
    $WM_CAP_FILE_SAVEDIBW = $WM_CAP_UNICODE_START + 25
    $WM_CAP_FILE_SET_CAPTURE_FILEA = $WM_CAP_START + 20
    $WM_CAP_FILE_SET_CAPTURE_FILEW = $WM_CAP_UNICODE_START + 20
    $WM_CAP_FILE_SET_INFOCHUNK = $WM_CAP_START + 24
    $WM_CAP_GET_AUDIOFORMAT = $WM_CAP_START + 36
    $WM_CAP_GET_CAPSTREAMPTR = $WM_CAP_START + 1
    $WM_CAP_GET_MCI_DEVICEA = $WM_CAP_START + 67
    $WM_CAP_GET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 67
    $WM_CAP_GET_SEQUENCE_SETUP = $WM_CAP_START + 65
    $WM_CAP_GET_STATUS = $WM_CAP_START + 54
    $WM_CAP_GET_USER_DATA = $WM_CAP_START + 8
    $WM_CAP_GET_VIDEOFORMAT = $WM_CAP_START + 44
    $WM_CAP_GRAB_FRAME = $WM_CAP_START + 60
    $WM_CAP_GRAB_FRAME_NOSTOP = $WM_CAP_START + 61
    $WM_CAP_PAL_AUTOCREATE = $WM_CAP_START + 83
    $WM_CAP_PAL_MANUALCREATE = $WM_CAP_START + 84
    $WM_CAP_PAL_OPENA = $WM_CAP_START + 80
    $WM_CAP_PAL_OPENW = $WM_CAP_UNICODE_START + 80
    $WM_CAP_PAL_PASTE = $WM_CAP_START + 82
    $WM_CAP_SEQUENCE = $WM_CAP_START + 62
    $WM_CAP_SEQUENCE_NOFILE = $WM_CAP_START + 63
    $WM_CAP_SET_AUDIOFORMAT = $WM_CAP_START + 35
    $WM_CAP_SET_CALLBACK_CAPCONTROL = $WM_CAP_START + 85
    $WM_CAP_SET_CALLBACK_ERRORA = $WM_CAP_START + 2
    $WM_CAP_SET_CALLBACK_ERRORW = $WM_CAP_UNICODE_START + 2
    $WM_CAP_SET_CALLBACK_FRAME = $WM_CAP_START + 5
    $WM_CAP_SET_CALLBACK_STATUSA = $WM_CAP_START + 3
    $WM_CAP_SET_CALLBACK_STATUSW = $WM_CAP_UNICODE_START + 3
    $WM_CAP_SET_CALLBACK_VIDEOSTREAM = $WM_CAP_START + 6
    $WM_CAP_SET_CALLBACK_WAVESTREAM = $WM_CAP_START + 7
    $WM_CAP_SET_CALLBACK_YIELD = $WM_CAP_START + 4
    $WM_CAP_SET_MCI_DEVICEA = $WM_CAP_START + 66
    $WM_CAP_SET_MCI_DEVICEW = $WM_CAP_UNICODE_START + 66
    $WM_CAP_SET_OVERLAY = $WM_CAP_START + 51
    $WM_CAP_SET_PREVIEW = $WM_CAP_START + 50
    $WM_CAP_SET_PREVIEWRATE = $WM_CAP_START + 52
    $WM_CAP_SET_SCALE = $WM_CAP_START + 53
    $WM_CAP_SET_SCROLL = $WM_CAP_START + 55
    $WM_CAP_SET_SEQUENCE_SETUP = $WM_CAP_START + 64
    $WM_CAP_SET_USER_DATA = $WM_CAP_START + 9
    $WM_CAP_SET_VIDEOFORMAT = $WM_CAP_START + 45
    $WM_CAP_SINGLE_FRAME = $WM_CAP_START + 72
    $WM_CAP_SINGLE_FRAME_CLOSE = $WM_CAP_START + 71
    $WM_CAP_SINGLE_FRAME_OPEN = $WM_CAP_START + 70
    $WM_CAP_STOP = $WM_CAP_START + 68
    #EndRegion

    [/autoit] [autoit][/autoit] [autoit]

    #include <GUIConstants.au3>
    #include <WindowsConstants.au3>
    #include <GDIPlus.au3>
    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Local $avi = DllOpen("avicap32.dll")
    Local $user = DllOpen("user32.dll")
    Local $snapfile = @ScriptDir & "\scrshot.bmp"

    [/autoit] [autoit][/autoit] [autoit]

    Local $Main = GUICreate("Camera",320,480)
    Global $hWnd = WinGetHandle("Camera")

    [/autoit] [autoit][/autoit] [autoit]

    Local $cap = DllCall($avi, "int", "capCreateCaptureWindow", "str", "cap", "int", BitOR($WS_CHILD,$WS_VISIBLE), "int", 0, "int", 0, "int", 320, "int", 240, "hwnd", $Main, "int", 1)

    [/autoit] [autoit][/autoit] [autoit]

    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_DRIVER_CONNECT, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_SCALE, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_OVERLAY, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEW, "int", 1, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_PREVIEWRATE, "int", 1, "int", 0)

    [/autoit] [autoit][/autoit] [autoit]

    GUISetState(@SW_SHOW)
    HotKeySet("{INSERT}", "SnapShot"); Press 'Insert' to make a SnapShot !
    HotKeySet("{HOME}", "StartRecording"); Press 'Home' to start recording !

    [/autoit] [autoit][/autoit] [autoit]

    Local $Genauigkeit = 20
    Local $width = 320, $height = 240
    Local $Gui_Pos

    [/autoit] [autoit][/autoit] [autoit]

    Local $pixel_array[Int(($width-1)/$Genauigkeit)][Int(($height-1)/$Genauigkeit)]

    [/autoit] [autoit][/autoit] [autoit]

    ;_ArrayDisplay($pixel_array)

    [/autoit] [autoit][/autoit] [autoit]

    _GDIPlus_Startup ()

    [/autoit] [autoit][/autoit] [autoit]

    Global $hGraphic = _GDIPlus_GraphicsCreateFromHWND ($hWnd)
    Global $Bitmap = _GDIPlus_BitmapCreateFromGraphics(320,240, $hGraphic)
    Global $Buffer = _GDIPlus_ImageGetGraphicsContext($Bitmap)
    _GDIPlus_GraphicsSetSmoothingMode($Buffer, 4)
    _GDIPlus_GraphicsClear($Buffer,0xFF000000)
    Global $hPen = _GDIPlus_PenCreate (0xFFABCDEF,2)
    Global $hBrush = _GDIPlus_BrushCreateSolid(0xFFABCDEF)

    [/autoit] [autoit][/autoit] [autoit]

    _GDIPlus_GraphicsClear($Buffer,0xFF00FF00)
    _GDIPlus_GraphicsDrawString($Buffer,"Test",0,0)
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $Bitmap,0,240, 320, 240)

    [/autoit] [autoit][/autoit] [autoit]

    Sleep(1000)

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    $msg = GUIGetMsg()
    If $msg = $GUI_EVENT_CLOSE Then
    ;DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SET_CALLBACK_FRAME, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_END, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_DRIVER_DISCONNECT, "int", 0, "int", 0)
    DllClose($avi)
    DllClose($user)
    Exit
    EndIf

    _GDIPlus_GraphicsClear($Buffer,0xFF00FF00)

    For $x = 0 To ($width-1)/$Genauigkeit-1 Step 1
    For $y = 0 To ($height-1)/$Genauigkeit-1 Step 1
    $Gui_Pos = WinGetPos($Main, "")
    $Gui_Pos[1] += 25
    ;ToolTip(PixelGetColor($Gui_Pos[0] + $x, $Gui_Pos[1] + $y));, $Main))
    ;MouseMove($Gui_Pos[0] + $x, $Gui_Pos[1] + $y)
    If $pixel_array[$x][$y] <> PixelGetColor($Gui_Pos[0] + $x*$Genauigkeit, $Gui_Pos[1] + $y*$Genauigkeit) Then
    $pixel_array[$x][$y] = PixelGetColor($Gui_Pos[0] + $x*$Genauigkeit, $Gui_Pos[1] + $y*$Genauigkeit)

    _GDIPlus_GraphicsFillRect($Buffer,$x*$Genauigkeit, $y*$Genauigkeit ,4,4)

    EndIf
    Next
    Next

    _GDIPlus_GraphicsDrawImageRect($hGraphic, $Bitmap,0,240, 320, 240)

    Sleep(10)
    Wend

    [/autoit] [autoit][/autoit] [autoit]

    Func SnapShot()
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_GRAB_FRAME_NOSTOP, "int", 0, "int", 0)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_FILE_SAVEDIBA, "int", 0, "str", $snapfile)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func StartRecording()
    WinSetTitle($Main, "", "WebCam - Capturing...")
    HotKeySet("{HOME}", "StopRecording")
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_FILE_SET_CAPTURE_FILEA, "int", 0, "str", $moviefile)
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_SEQUENCE, "int", 0, "int", 0)
    EndFunc

    [/autoit] [autoit][/autoit] [autoit]

    Func StopRecording()
    DllCall($user, "int", "SendMessage", "hWnd", $cap[0], "int", $WM_CAP_STOP, "int", 0, "int", 0)
    WinSetTitle($Main, "", "WebCam - Ready")
    HotKeySet("{HOME}", "StartRecording")
    EndFunc

    [/autoit]

    gruß Moritz

  • erstmal virenscanner drüberlaufen lassen.
    dann alle programme schliessen die sich i-wie mit dem i-net verbinden könnten.
    wenns dann net geht die programme immer noch geschlossen lassen und gucken wer oder was dann noch eine verbindung zum i-net bezieht

    mfg bennebartsch

  • Also es gibt zB eine die auf 65.55.12.249:http geht PRogramm Namen stehen da ja nicht bei, mein Antivirenprogramm ist übrigens Bullguard. Wäre die Protendung denn HTTP?

  • Also ich habe jetzt den Windows 7 Eigneen REsourcen Monitor genutz, um mir sentliche Netztwerk programme Anzeigen zu Lassen hier das Ergebnis:

    Abbild PID Senden (B/s) Empfangen (B/s) Gesamt (B/s)
    firefox.exe 3388 70 628 698
    svchost.exe (LocalServiceAndNoImpersonation) 3184 277 391 668
    svchost.exe (LocalService) 484 90 403 493
    System 4 63 53 116
    svchost.exe (NetworkService) 1076 31 32 62
    svchost.exe (BullGuard) 1748 1 10 11
    svchost.exe (netsvcs) 956 1 2 4

    Gibt es nicht irgendein Möglichkeit herrauszufinden welches Programm auf die Webcam zugreift ?(

    Was auch Komisch ist ist, dass Programme wie ICQ oder auch ein in C++ geschriebenes Bsp Programm was ich mir herruntergeladen habe schafft es auch das Handle zu Bekommen, jetzt habe ich die Frage sind die Programm nur besser das sie sich das Handle "klauen" können oder wie sieht das aus?

    Einmal editiert, zuletzt von moritz1243 (20. Januar 2010 um 21:44)

  • danke für die links progece.exe habe ich schon herruntergeladen jedoch hilft es nicht wirklich weiter in diesem Fall. Gibt es denn nicht irgendeine Möglichkeit herrauszufinden, welches Programm die WEbcam nutzt ?(

    Einmal editiert, zuletzt von moritz1243 (20. Januar 2010 um 21:56)

  • Sorry, meine du musst die Prozesse nach der Webcam exe durchsuchen (Doppeltklick auf die einzelnen Prozesse)!

    UEZ

    Auch am Arsch geht ein Weg vorbei...

    ¯\_(ツ)_/¯

  • Wonach genau muss ich bei dem Prozessen gucken?

    schau halt einfach die durch die du nicht kennst. bzw die die dir komisch erscheinen....

    soviele werden das ja wohl nich sein