2008-12-13 73 views
9

Tôi đang tìm cách xem các sự kiện chuột và bàn phím trên Windows, Linux và Mac từ Python.Bàn phím chéo keylogger

Ứng dụng của tôi là trình theo dõi thời gian. Tôi không nhìn vào sự kiện, tôi chỉ ghi lại thời gian khi nó xảy ra. Nếu không có sự kiện nào trong một thời gian nhất định, hãy nói 10 phút, tôi giả định rằng người dùng đã rời khỏi và dừng dự án hiện tại.

Khi người dùng quay trở lại (các sự kiện xuất hiện trở lại), tôi đợi một lát (vì vậy điều này không được kích hoạt bởi phi hành đoàn làm sạch hoặc vật nuôi của bạn hoặc động đất). Nếu sự kiện vẫn tồn tại trong một khoảng thời gian dài, tôi giả sử rằng người dùng đã quay trở lại và tôi bật lên một cửa sổ nhỏ, không hoạt động nơi cô ấy có thể chọn thêm khoảng thời gian để "ngắt", dự án hiện tại (cuộc họp, v.v.) hoặc một dự án khác.

Tôi đã giải quyết keylogger cho Windows bằng cách sử dụng pyHook. Trên Linux, tôi đã tìm thấy một giải pháp nhưng tôi không thích nó: Tôi có thể xem tất cả các nút thiết bị trong/etc/input và cập nhật dấu thời gian ở đâu đó trong/var hoặc/tmp mỗi lần tôi thấy sự kiện. Có hai nhược điểm: 1. Tôi không thể biết liệu sự kiện đó có phải từ người dùng đang chạy trình theo dõi thời gian hay không và chương trình nhỏ này cần phải chạy dưới dạng root (không tốt).

Trên máy Mac, tôi chưa có ý tưởng nào.

Câu hỏi:

  1. Có cách nào tốt hơn để biết liệu người dùng được tạo sự kiện hơn là xem các thiết bị sự kiện trên Linux?

  2. Mọi con trỏ làm cách nào để thực hiện điều đó trên máy Mac?

+0

Đó là một ứng dụng quản lý thời gian thú vị, bạn đã hoàn thành chưa? Nó có sẵn cho công chúng? –

+0

@BrunoKim: Tôi đã sử dụng khi tôi làm việc trong lĩnh vực cho thuê cơ thể. Gửi cho tôi một email và tôi có thể cung cấp cho bạn mã. Hoặc có thể tôi có thể đẩy nó vào Bitbucket: -/ –

Trả lời

10

Có vài ứng dụng mã nguồn mở có thể cung cấp cho bạn một số gợi ý:

  • PyKeylogger là python keylogger cho các cửa sổ và linux
  • logKext là một C++ keylogger cho mac
+0

liên kết đầu tiên đã chết: ( – palsch

+1

sửa url, phải thay đổi một thời gian trong 7 năm qua. Dự án vẫn còn đó và được cập nhật vào năm 2014. –

7

Có một bài viết tuyệt vời trên Viết Linux Kernel Keyloggers
http://www.phrack.com/issues.html?issue=59&id=14#article

Nếu bạn đang cố gắng để chạy một honeypot, sau đó chắc chắn cho Sebek thử:
https://projects.honeynet.org/sebek/

Sebek là một công cụ thu thập dữ liệu được thiết kế để nắm bắt các hoạt động tấn công trên một honeypot , mà không có sự kẻ tấn công (hy vọng) biết điều đó. Nó có hai thành phần . Đầu tiên là một khách hàng chạy trên honeypots, mục đích của nó là để nắm bắt tất cả các kẻ tấn công hoạt động (nhấn phím, tải lên tệp, mật khẩu) rồi bí mật gửi dữ liệu đến máy chủ. Thành phần thứ hai là máy chủ thu thập dữ liệu từ honeypots. Máy chủ thường chạy trên cổng Honeywall , nhưng cũng có thể chạy độc lập .Để biết thêm thông tin về Sebek, vui lòng xem http://www.honeynet.org/tools/sebek

Nhưng, nếu bạn muốn thay vì làm theo kiddie script đường/không tìm hiểu, sau đó thử các ứng dụng sau đây:

LINUX
http://sourceforge.net/projects/lkl/

WINDOWS
http://www.rohos.com/kid-logger/
http://code.google.com/p/freelogger/


TƯ VẤN: Bạn nên tự viết cho mục đích học tập và lợi nhuận.