-
شنبه, ۱ شهریور ۱۳۹۹، ۰۹:۳۷ ق.ظ
-
۱۶۹۷
چگونه هکر ها فقط با کنترل کیبورد سیستم هدف میتوانند هر کاری بکنند !!!
درود به همه !
در پست امروز درمورد روش کنترل کامل یک سیستم توسط کیبورد آن سیستم صحبت میکنیم . امروز اسکریپتی مینویسیم که با کنترل کردن و ارسال کلید های کیبورد به سیستم بتونه هر دستوری رو در خط فرمان سیستم اجرا کنه و سیستم رو کنترل کنه . هکر ها از این روش در جاهای مختلفی استفاده میکنند .
کلمه ای داریم تحت عنوان HID مخفف Human Interface Device به معنای دستگاه رابط انسان . وسیله هایی مثل کیبورد ، موس ، joystick و .... که در واقع دستگاهی برای ارسال اطلاعات انسانی به کامپیوتر هستند را دستگاه های HID میگوییم . کیبورد یکی از این دستگاه ها است .
اما چگونه فقط با کلید های کیبورد کل سیستم را کنترل کنیم .خیلی سادس همینطور که ما بدونه داشتن موس میتونیم وارد خط فرمان بشیم و دستور اجرا کنیم پس یعنی با کیبورد میشه هر کاری انجام داد . برای مثال اگر بخواهیم در یک سیستم ویندوزی ، با کیبورد هر کاری بکنیم کافیه کلید WINDOWS + R رو فشار بدیم تا پنجره RUN باز بشه و سپس بنویسیم cmd و کلید enter رو بزنیم و تمام . حالا هر دستوری میخوایم میتونیم فقط با کیبورد اجرا کنیم و enter بزنیم تا اجرا بشه . حالا کافیه هکر بیاد یه اسکریپتی بنویسه که خود اسکریپت به طور خودکار این کلید ها رو فشار بده و وارد خط فرمان بشه و .....
خب شاید سوال براتون پیش بیاد که این روش چه جاهایی کاربرد داره ؟؟ خب اگه هکر بتونه اسکریپت بنویسه که خیلی راحت میاد دستوراتشو از طریق کتابخونه ای مثل os مستقیم در خط فرمان اجرا میکنه دیگه چه کاریه بخواد از کیبورد این کارو انجام بده . جواب این سوال رو با یه مثال میدم . یه ابزاری در دنیای هک و امنیت هست به اسم Rubber Ducky که همونه BAD USB هم بهش میگن . این ابزار در قالب یه فلش مموری میتونه باشه . اگه دیده باشید هکر ها یه فلش مموری دارن که وقتی میزنن به سیستم هدف خودکار یه دستوراتی رو اجرا میکنه و خراب کاری میکنه . اون فلش مموری های مخرب از همین سیستم استفاده میکنند . یعنی هکر میاد در تنظیمات اون فلش مموری تغییراتی ایجاد میکنه که فلش مموری خودشو جای یه دستگاه HID مثل کیبورد جا میزنه و میتونه کلید های کیبورد رو ارسال کنه به سیستم و عملا مثل یک کیبورد عمل میکنه . حالا میاد فلش مموری تغییر یافته رو طوری تنظیم میکنه که با استفاده از روشی که بالا گفتیم به وسیله ی ارسال کلید های مختلف خط فرمان رو باز کنه و یه دستور رو اجرا کنه (چون مثل ربات عمل میکنه در عرض چند ثانیه این کارو انجام میده) . نمونه ای از Rubber Ducky یا همون bad usb در تصویر زیر :
اگه میخواین بیشتر در مورد rubber ducky بخونید میتونید به مقاله ی rubber ducky چیست و چگونه ساخته میشود مراجعه کنید .
خب دیگه توضیح بسه بریم سراغ اسکریپت نویسی. پس ما میخوایم اسکریپتی بنویسیم که خودش خودکار یه سری از کلید های کیبورد رو فشار بده و از طریق اونا به خط فرمان دسترسی پیدا کنه و هر دستوری که خواستیم رو روی خط فرمان اجرا کنه . ما این تست رو روی یک سیستم ویندوزی انجام میدیم .
برای ارسال کلید های کیبورد به سمت کامپیوتر (زدن کلید های کیبورد توسط اسکریپت) از کتابخونه ی keyboard استفاده میکنیم . این کتابخونه رو از طریق ابزار pip نصب میکنیم :
نصب keyboard در لینوکس :
MrPython@debian:~$ sudo pip3 install keyboard
نصب keyboard در ویندوز :
C:\> pip install keyboard
سورس کد :
from keyboard import press_and_release , write
from time import sleep
command = "echo THIS Command Will Run on the CMD :)"
press_and_release("left windows + R") # Press And Release WINDOWS + R -> OPEN Run
sleep(0.5)
write("cmd") # Write cmd on RUN
press_and_release("enter") # Press Enter For Open Cmd
sleep(0.5)
write(command) # write command in cmd
press_and_release("enter") # Run Command in cmd
توضیح سورس کد : در ابتدا تابع press_and_release رو برای زدن کلید های کیبورد و تابع write برای نوشتن یک متن توسط کیبورد رو از کتابخونه ی keyboard ایمپورت کردیم .
سپس یه متغییر تعریف کردیم به نام command و دستوری که قراره توی cmd اجرا بشه رو ریختیم داخلش .
در خط بعدی با استفاده از تابع press_and_release کلید های ترکیبی windows + r رو زدیم تا پنجره run باز بشه .
پس از اون نیم ثانیه تاخیر ایجاد کردیم تا پنجره run کامل باز بشه .
سپس در خط بعد با استفاده از تابع write عبارت cmd رو داخل پنجره run نوشتیم .
پس از اون کلید enter رو با استفاده از تابع press_and_release فشار دادیم تا خط فرمان (cmd) باز بشه .
سپس دوباره 0.5 ثانیه صبر کردیم تا خط فرمان کامل باز بشه .
در خط بعدی دستوری که قراره اجرا بشه رو در cmd نوشتیم .
و نهایتا با استفاده از تابع press_and_release کلید enter رو زدیم تا دستور اجرا بشه و تمام .
میتونید این سبک اسکریپت رو به هر شکلی که خواستین تغییر بدین
پس فهمیدیم یه هکر فقط با داشتن دسترسی روی کیبوردمون چه کار هایی میتونه بکنه !.
یاحق !
Telegram Channel : @mrpythonblog