Как написать вирус для Андроид. Часть 4

Admin

Администратор
android-virus.png

Метод плоских файлов
Дописывать в конец файла, а при отправке очищать файл. Структура файла:
Код:
{json}\n
{json}\n
.........
{json}\n
Код чтения всего файла:
Код:
File fl = new File(filePath);
FileInputStream fin = new FileInputStream(fl);
String ret = convertStreamToString(fin);
fin.close();
Код:
try {
   FileWriter fw = new FileWriter(filePath, true);
   fw.write(Value + "\n");
   fw.close();
} catch (IOException ioe) {
}
Тут ничего сложного: читай, пиши. Есть одно “Но”. Мы работаем в потоках, и может случиться одновременная запись и удаление, а это надо контролировать. Но мы же спецы, нам надо сделать чтобы было круто. И мы переходим к базам данных.

Mysqli или как хранить данные по ФенШую
Мы рассмотрим работу с базой данных на примере чтения и записи. У нас простая табличка, где будут ID и StringJSON, которую после отправки мы будем очищать.
Код:
public class KNOCKERDatabase extends SQLiteOpenHelper {
   private static final int DATABASE_VERSION = 1;
   private static final String DATABASE_NAME = "knocker";
   private static final String TABLE_KNOCKER = "knocker";
   private static final String KEY_ID = "id";
   private static final String KEY_JSON = "stringjson";
   public KNOCKERDatabase(Context context) {
       super(context, DATABASE_NAME, null, DATABASE_VERSION);
   }
   @Override
   public void onCreate(SQLiteDatabase db) {
       String CREATE_TABLE = "CREATE TABLE " + TABLE_KNOCKER + "("
               + KEY_ID + " INTEGER PRIMARY KEY,"
               + KEY_JSON + " TEXT,"
               + ")";
       db.execSQL(CREATE_TABLE);
   }
   void addJson(String json) {
       SQLiteDatabase db = this.getWritableDatabase();
       ContentValues values = new ContentValues();
       values.put(KEY_JSON, json);
       db.insert(TABLE_KNOCKER, null, values);
       db.close();
   }
   public List<String> getAllJson() {
       List<String> jsons = new ArrayList<String>();
       String selectQuery = "SELECT  * FROM " + TABLE_KNOCKER;
       SQLiteDatabase db = this.getWritableDatabase();
       Cursor cursor = db.rawQuery(selectQuery, null);
       if (cursor.moveToFirst()) {
           do {
               jsons.add(cursor.getString(1));
           } while (cursor.moveToNext());
       }
       return jsons;
   }
   public void deleteRows(String num) {
       SQLiteDatabase db = this.getWritableDatabase();
String del ="delete from " + TABLE_KNOCKER + " where " + KEY_ID + " in (select " + KEY_ID + " from " + TABLE_KNOCKER + " order by _id LIMIT " + num + ");";
       db.execSQL(del);
       db.close();
   }
   public int getCount() {
       String countQuery = "SELECT  * FROM " + TABLE_KNOCKER;
       SQLiteDatabase db = this.getReadableDatabase();
       Cursor cursor = db.rawQuery(countQuery, null);
       cursor.close();
       return cursor.getCount();
   }
}
Теперь можно перейти к практике, как это использовать.
Шаг первый. Запись.
Код:
KNOCKERDatabase db = new KNOCKERDatabase(context);
db.addJson(DATA);
Где DATA – это запрос для отправки на сервер.
Шаг второй. Чтение.
KNOCKERDatabase db = new KNOCKERDatabase(this);
List jsons = db.getAllJson();
После прочтения записей, считаем их количество (через getCount), чтобы не удалить лишнее и избавляемся от них через deleteRows.

Всем хороших отстуков.
 
Похожие темы
Admin Как написать вирус для Андроид. Часть 5 Вирусология 0
Admin Как написать вирус для Андроид. Часть 3 Вирусология 0
Admin Как написать вирус для андроид. Часть 2 Вирусология 1
Admin Как написать вирус для андроид Вирусология 0
G Как написать безопасный код на JS Программирование 0
АнАлЬнАя ЧуПаКаБрА [Гайд] - Как написать человеку в Вк если вы у него в ЧС. Раздачи и сливы 0
S Как написать сообщение вк если ты в чс Фишинг, мошенничество, СИ 41
R Как написать простейший компилятор Программирование 0
АнАлЬнАя ЧуПаКаБрА Гайд как написать простенький проэкт в Private Keeper Полезные статьи 5
Admin UFOLABSNEWS Электронная бомбардировка: что это и как защититься. Новости в сети 0
Admin UFOLABSNEWS Как отличить мошенническую рекламу от настоящей перед кликом. Новости в сети 0
Admin UFOLABSNEWS Shizuku позволяет приложениям работать как системная оболочка без root-прав. Новости в сети 0
Admin UFOLABSNEWS Как выжать 30 FPS из читалки: гениальный трюк с зависшими частицами внутри экрана. Новости в сети 0
Admin UFOLABSNEWS Кристалл времени стал видимым: материалы учатся двигаться как живые. Новости в сети 0
Admin UFOLABSNEWS Эйнштейн вмешался в химию. Сиборгий повёл себя не как его соседи по таблице. Новости в сети 0
Admin UFOLABSNEWS 34 минуты без доступа. Как обычная настройка парализовала крупные сайты. Новости в сети 0
Admin UFOLABSNEWS Электромотор ужали до нитки: экзоскелет будущего будут не собирать из железа, а надевать как кофту. Новости в сети 0
Admin UFOLABSNEWS Фотонные чипы теперь можно собирать как Lego — даже из кристаллов, которые раньше не уживались вместе. Новости в сети 0
Admin UFOLABSNEWS Вредоносная версия npm-пакета tensorlake крадёт учётные данные и распространяется как червь. Новости в сети 0
Admin UFOLABSNEWS Домен third-party.com, ранее используемый как пример в документации, теперь распространяет вредоносный контент. Новости в сети 0
Admin UFOLABSNEWS Meta выпустила ИИ-очки без камеры как ответ на страх скрытой съёмки. Новости в сети 0
Admin UFOLABSNEWS Приложения для создания фейковых обнажённых фото: как защититься. Новости в сети 0
Admin Статья PoC техника закрепления через NTUSER.MAN, или злоупотребление NTUSER.MAN как механизмом постоянства Вирусология 0
Admin UFOLABSNEWS Apple может удалённо заблокировать iPhone, но не так, как многие думают. Новости в сети 0
Admin UFOLABSNEWS Европа представила Linux-браузер как политический ответ американскому Big Tech. Новости в сети 0
Admin UFOLABSNEWS Новая нейросеть OpenAI Astra работает как профессиональный хакер. Новости в сети 1
Admin UFOLABSNEWS Пушка вместо ракеты: американцы придумали, как расстреливать дроны по три цента за выстрел. Новости в сети 0
S стиллер pdf как работает Свободное общение 6
S Как добывать логи Свободное общение 5
Admin Интересно Восстание машин началось на ринге: как прошел первый турнир по боям без правил роботов-терминаторов T800. Новости в сети 0
Admin UFOLABSNEWS ChatGPT научился вести диалог как живой собеседник. Новости в сети 0
devqp Статья Иллюзия анонимности: Как Tor Browser палит вас по железу (Canvas/WebGL) и метод обхода Анонимность и приватность 0
Admin UFOLABSNEWS Биологи обсуждают способность выбирать как ключевое отличие живого от неживого. Новости в сети 0
Admin UFOLABSNEWS Роскошь без Wi-Fi: как отсутствие интернета стало продаваться дороже комфорта. Новости в сети 0
Admin UFOLABSNEWS Как стать CISO: карта роста. Новости в сети 0
Admin UFOLABSNEWS В центре Млечного Пути звёзды движутся не так, как должны. Астрономы нашли того, кто тихо менял их орбиты миллионы лет. Новости в сети 0
Admin UFOLABSNEWS Физики создали пиксель, который одновременно работает как дисплей и камера. Новости в сети 0
Admin UFOLABSNEWS От мешков с песком до кубического километра льда: как физики ловят самую неуловимую частицу во Вселенной. Новости в сети 0
Admin Интересно 19126 год, PDP-11 и призрак Y2K. Как баг из 1970-х дожил до наших дней и нашёлся в эмуляторе. Новости в сети 0
Admin Интересно Жители Великобритании не осознают, как умные устройства собирают их личные данные. Новости в сети 0
Admin Интересно Цена взлома российского бизнеса упала до $20. Как работает новый PowerLoader. Новости в сети 0
Admin Интересно ДНК эмбриона теперь можно редактировать как опечатку в документе. Новости в сети 0
Admin Интересно Историки опровергли роль Томаса Эдисона как отца звукозаписи. Новости в сети 0
Admin Интересно Приёмник смотрит вправо, а удар прилетел слева. Как физика из школьного двора ломает радиозащиту. Новости в сети 0
Admin Интересно Узнайте, как злоумышленники видят вашу сеть: вебинар с HD Moore. Новости в сети 0
Admin Интересно Скидки-оборотни: как бонусные баллы превращаются в инструмент мошенничества. Новости в сети 0
Admin Интересно Искусственный интеллект сокращает временные рамки эксплуатации уязвимостей. Как с этим справиться?. Новости в сети 0
Admin Интересно Тест-драйв: как избавиться от сомнений в выборе ИБ-решения за 7 дней. Новости в сети 0
Admin Интересно Как управлять скрытыми ИИ-инструментами без замедления работы сотрудников. Новости в сети 0
Admin Интересно Ошибка из 2018 и подставные аккаунты. Рассказываем, как популярный пакет art-template начал атаковать айфоны. Новости в сети 0

Название темы