Skip to content

Instantly share code, notes, and snippets.

@archon810
Last active September 28, 2022 15:17
Show Gist options
  • Save archon810/10013434 to your computer and use it in GitHub Desktop.
Save archon810/10013434 to your computer and use it in GitHub Desktop.
Fake Virus Shield AV
package com.deviant.security.shield;
public final class BuildConfig {
public static final String BUILD_TYPE = "debug";
public static final boolean DEBUG;
public static final String FLAVOR = "";
public static final String PACKAGE_NAME = "com.deviant.security.shield";
public static final int VERSION_CODE = 4;
public static final String VERSION_NAME = "2.2";
static {
DEBUG = Boolean.parseBoolean("true");
}
}
package com.deviant.security.shield;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
import com.deviant.security.shield.utility.NotificationHelper;
public class MainActivity extends ActionBarActivity {
public static final String PREFS_NAME = "ShieldPrefs";
public boolean isEnabled;
private Menu menu;
SharedPreferences settings;
public MainActivity() {
this.isEnabled = false;
}
private void toggleShield() {
ImageView enableButton = (ImageView) findViewById(R.id.enableButton);
boolean isEnabled = this.settings.getBoolean("isEnabled", false);
Editor editor = this.settings.edit();
MenuItem status = this.menu.findItem(R.id.action_status);
if (isEnabled) {
editor.putBoolean("isEnabled", false);
status.setTitle(R.string.action_status_disabled);
enableButton.setImageResource(R.drawable.shield_disabled);
} else {
editor.putBoolean("isEnabled", true);
status.setTitle(R.string.action_status_enabled);
enableButton.setImageResource(R.drawable.shield_enabled);
}
editor.commit();
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.settings = getSharedPreferences(PREFS_NAME, 0);
setContentView(R.layout.activity_main);
ImageView enableButton = (ImageView) findViewById(R.id.enableButton);
if (this.settings.getBoolean("isEnabled", false)) {
enableButton.setImageResource(R.drawable.shield_enabled);
} else {
enableButton.setImageResource(R.drawable.shield_disabled);
}
enableButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
MainActivity.this.toggleShield();
}
});
new NotificationHelper(getApplicationContext()).createNotification();
}
public boolean onCreateOptionsMenu(Menu menu) {
this.menu = menu;
getMenuInflater().inflate(R.menu.main, menu);
boolean isEnabled = this.settings.getBoolean("isEnabled", false);
MenuItem status = menu.findItem(R.id.action_status);
if (isEnabled) {
status.setTitle(R.string.action_status_enabled);
} else {
status.setTitle(R.string.action_status_disabled);
}
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
if (id == 2131165246) {
return true;
} else {
if (id == 2131165245) {
toggleShield();
}
return super.onOptionsItemSelected(item);
}
}
}
package com.deviant.security.shield.utility;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.Intent;
import android.support.v4.app.NotificationCompat.Builder;
import com.deviant.security.shield.R;
public class NotificationHelper {
private int NOTIFICATION_ID;
private Builder mBuilder;
private PendingIntent mContentIntent;
private CharSequence mContentTitle;
private Context mContext;
private Notification mNotification;
private NotificationManager mNotificationManager;
public NotificationHelper(Context context) {
this.NOTIFICATION_ID = 1;
this.mContext = context;
}
public void createNotification() {
this.mNotificationManager = (NotificationManager) this.mContext.getSystemService("notification");
this.mBuilder = new Builder(this.mContext);
this.mBuilder.setContentTitle("Scan in progress").setContentText("Scanning for malicious content").setSmallIcon(R.drawable.shield_notification);
this.mBuilder.setContentInfo("0%");
this.mContentIntent = PendingIntent.getActivity(this.mContext, 0, new Intent(), 0);
this.mBuilder.setContentIntent(this.mContentIntent);
new Thread(new Runnable() {
public void run() {
int incr = 0;
while (incr <= 100) {
NotificationHelper.this.mBuilder.setContentInfo(incr + "%");
NotificationHelper.this.mBuilder.setProgress(100, incr, false);
NotificationHelper.this.mNotificationManager.notify(NotificationHelper.this.NOTIFICATION_ID, NotificationHelper.this.mBuilder.build());
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
incr++;
}
NotificationHelper.this.mBuilder.setContentTitle("Scan complete");
NotificationHelper.this.mBuilder.setContentText("Your device is secure");
NotificationHelper.this.mBuilder.setProgress(0, 0, false);
NotificationHelper.this.mNotificationManager.notify(NotificationHelper.this.NOTIFICATION_ID, NotificationHelper.this.mBuilder.build());
}
}).start();
}
}
package com.deviant.security.shield;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.os.Bundle;
import android.support.v7.app.ActionBarActivity;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.ToggleButton;
public class Settings extends ActionBarActivity {
public static final String PREFS_NAME = "ShieldPrefs";
SharedPreferences settings;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
this.settings = getSharedPreferences(PREFS_NAME, 0);
setContentView(R.layout.activity_settings);
ToggleButton toggle1 = (ToggleButton) findViewById(R.id.toggle1);
if (this.settings.getBoolean("realtime", false)) {
toggle1.setChecked(true);
} else {
toggle1.setChecked(false);
}
ToggleButton toggle2 = (ToggleButton) findViewById(R.id.toggle2);
if (this.settings.getBoolean("scanning", false)) {
toggle2.setChecked(true);
return;
} else {
toggle2.setChecked(false);
}
}
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.settings, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
return item.getItemId() == 2131165250 ? true : super.onOptionsItemSelected(item);
}
public void toggleRealtime(View view) {
Editor editor = this.settings.edit();
ToggleButton toggle = (ToggleButton) findViewById(R.id.toggle1);
if (this.settings.getBoolean("realtime", false)) {
editor.putBoolean("realtime", false);
toggle.setChecked(false);
} else {
editor.putBoolean("realtime", true);
toggle.setChecked(true);
}
editor.commit();
}
public void toggleScanning(View view) {
Editor editor = this.settings.edit();
ToggleButton toggle = (ToggleButton) findViewById(R.id.toggle2);
if (this.settings.getBoolean("scanning", false)) {
editor.putBoolean("scanning", false);
toggle.setChecked(false);
} else {
editor.putBoolean("scanning", true);
toggle.setChecked(true);
}
editor.commit();
}
}
@wwin3286tw
Copy link

This is a part code of android malware
A fake android anti-virus.

Paste by Android Police
中文>
Virus Shield是由名為Deviant Solutions開發的軟體,宣稱可以防止系統被安裝有害程式、確保個人資訊、即時掃瞄應用、設定及多媒體檔案,還能提升電話效能。它甚至宣稱對電池壽命影響極微、可於背景運作,又能封鎖廣告軟體。

不過Android Police指出,經過程式碼解析發現,其實Virus Shield是100%的詐欺軟體,完全不具備任何防護功能,使用者按下掃瞄鍵,它唯一的動作就是將應用中的「X」改成打勾的符號。Android Police並追蹤到Virus Shield的作者之前曾因在某線上論壇中詐騙線上遊戲寶物而被取消會員資格。Android Police並將該app的程式碼公布在Github上以供證明。

@alextsil
Copy link

alextsil commented Apr 8, 2014

"Your device is secure" - Just like that you receive 5star ratings.

@LoveDuckie
Copy link

hah

@tuky
Copy link

tuky commented Apr 8, 2014

Reminds me of Lisa's tiger repelling rock™.

@ncbateman
Copy link

users XD

@timbunch
Copy link

timbunch commented Apr 8, 2014

That is hilariously sad. I think I need to create an app that does nothing for half the cost. And I would promise to not do anything. Just an icon that launches an on/off toggle screen.

@willmorgan
Copy link

That's a lot of code to do a bunch of sweet fuck all!

@Streusel
Copy link

Streusel commented Apr 8, 2014

woah, so fast!

@danielschulz
Copy link

This app is more useless than red traffic lights in GTA.

@danielschulz
Copy link

What kind of people do star this 'project'? 24 and counting...

@chankeypathak
Copy link

such crap, much money, play store, wow!

Copy link

ghost commented Apr 8, 2014

People who bought that app must be mad

@yabab-dev
Copy link

Changelog

1.0 : One image
2.0 : Two images
2.2 : Can toggle images !

Copy link

ghost commented Apr 8, 2014

So true @AlekseyKorzun

@fnatalucci
Copy link

Amazing app! Your life can change after toggle a button..

@xSplit
Copy link

xSplit commented Apr 8, 2014

it is hilarious

@JGibson4
Copy link

JGibson4 commented Apr 8, 2014

LOL this my friends is classic...

@dominik-hadl
Copy link

That is like buying a ticket for this performance - https://www.youtube.com/watch?v=JTEFKFiXSx4

@SharpMan
Copy link

SharpMan commented Apr 9, 2014

he will have to put random sleep between 1000 and 1200ms

@cydrobolt
Copy link

Nice!

@KOTRET
Copy link

KOTRET commented Apr 10, 2014

proof of concept - snake oil, nothing else. or do you think other anti-malware apps for android doing anything else? ;)

@clarmso
Copy link

clarmso commented Jul 25, 2014

Just sleep for 1000 seconds and say "your device is secure"! Nice!

@forxn
Copy link

forxn commented Oct 8, 2015

i can make available real source of any applications which running on android play stores if any body need any kind of apps source code can ping me or if you are new and want to start carrier in android then i have two choice for you

  1. i will tech all things online cost 500$ one time
    Features included
    a.how to crack any app running on play store
    b.how to get its original source code
    c.how to make new app with these real source code like,new name,new version,new look, all things new
    d.how to generated new apk file
    e.how to remove existing ads network from old app
    f.how to set new ad network
    g.how to make new and bulk google play developer account
    h. how to make aso discriptions for app
    i.how to upload app on android
    j.how to make free promotions for your android apps
    and lots more things
    you can learn all things within one week of time and be expart and can earn daily till 1000$
  2. i will provide you e-book with all above features ( one time cost 199$)

free gift compliments

i will provide you all tools and software for free

my skype: forxn.org
http://4xn.org

@resh-re
Copy link

resh-re commented Jan 7, 2016

does this code work in emulator??
i have got a project which is android malware detection im looking for it if any one can help me out with that plz...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment