Смс–шпионаж Тарасов Дмитрий aka Dem@n Хакер, номер #093, стр. 093-132-3 файл и запустит его. Делаем автозапуск После того, как мы скрыли наше приложение от любопытных пользовательских глаз, необходимо заставить его автоматически запускаться при старте телефона. Для этого обычно используется так называемые recognizers, которые вообще говоря предназначены для идентификации MIME типов. Это нужно, например, чтобы сопоставить определенные типы документов с программой-обработчиком. Но рекогнайзеры также используют и при автостарте программ. В журнале, к сожалению, не хватит места, чтобы полностью рассказать теорию про рекогнайзеров, поэтому я оставлю на диске доку для дальнейшего изучения материала, а сам предложу использовать более простой путь - разработку парней из NewLC.com, которые собрали sis-файл, который, будучи интегрирован в нашу инсталляшку, будет запускать приложение при загрузке телефона :). Называется эта прога EzBoot и найти ее ты можешь или на NewLC.com или на нашем диске. Для работы нужно свершить следующее: 1. В папке "/sis/" нашего проекта (или в любой другой папке, где находится ourApp.pkg) создается файл ourApp.boot с единственной строкой: boot:\system\apps\ourApp\ourApp.app эта строка указывает адрес нашего приложения в смартфоне 2. В файл ourApp.pkg добавляем следующие строки: "ourApp.boot" -"!:\system\programs\ezboot\boot\ourApp.boot" //команда на копирование файла ourApp.boot в смартфон @"ezboot.sis",(0x101FD000) // подключение инсталлятора ezboot к нашему. Все, при установке нашей программы на смартфон, будут установлены как наше приложение, так и загрузчик. ХХХ ЗАГОЛОВОК ХХХ Ваяем функционал трояна В архитектуре приложений Symbian базовой единицей является entry. К примеру, sms всегда состоит из одной этой самой entry, а MMS - из нескольких. К нашей радости, в Symbian существуют готовые классы, позволяющие взаимодействовать с сервером сообщений. Вот основные из них: CMsvEntry - позволяет создавать, перемещать, удалять и получать информацию из entry TMsvEntry - служит для получения и изменении информации об entry Сервер сообщений может обрабатывать асинхронные запросы от клиентов, которые взаимодействуют с сервером с использованием так называемых объектов сессии, которые являются экземплярами класса CMsvSession. Как создать сессию и получить доступ к папке входящих сообщений ты можешь увидеть в коде во врезке "Подключаемся к серверу сообщений и творим зло в папке входящих смс". После получения доступа к входящим смс, мы каждое сообщение отправим на номер хакера :). Как это реализовано, ты можешь посмотреть в исходниках. А как создать смс ты можешь посмотреть на врезке "Создаем sms". Рекомендую изучить этот исходник изучить вдоль и поперек, особое внимание уделив подключаемым библиотекам. Подключаемся к серверу сообщений и творим зло в папке входящих смс CMySessionObserver* observer=new(ELeave)CMySessionObserver; CleanupStack::PushL(observer); //необходимый для создания сессии объект, унаследованный от MMsvSessionObserver CMsvSession* session=CMsvSession::OpenSyncL(*observer); |