Программа Незаметного Копирования

Программа Незаметного Копирования

Программа Незаметного Копирования Average ratng: 4,1/5 2755votes
Программа Незаметного Копирования С Флешки

Программа предназначена для скрытого копирования файлов и поддержания. Запуск программы обеспечивается "autorun.inf" файлом . Некоторые универсальные программы комбинируют несколько функций, что.

Простейшая флешка- граббер. Для простых смертных флешка – это девайс для переноса документов/фильмов/фоток и другой личной (а иногда и очень личной) информации. А вот для хакеров флешка – это одновременно и жертва, и боевой инструмент. Сегодня я расскажу все тонкости незаметного слива данных с флешек к себе на комп, а также научу превращать безобидные флешки в программы для резервного копирования паролей с «большого» компьютера. Ловушка для чужих флешек. Идея программы «Злобный комп» будет заключаться в следующем. Мы разработаем небольшую тулзу, которая будет притворяться супер- мега продвинутым антивирусом, цель которого - качественное удаление с флешек «опасных» вирусов.

Пользуемся программой StaffCop Enterprise с пробной версии 2-й редакции. Приятно наблюдать как программа развивается и улучшается.

Зараженной вирусами флешкой уже никого не удивишь, поэтому наш специализированный «антивирус» не вызовет у доверчивого пользователя опасений. Наоборот, вставив флешку к тебе в комп и увидев сообщение типа: «Обнаружен вирус. Произвожу детальное сканирование всех файлов на предмет наличия зараженных», – он обязательно подождет завершения данной операции. Подготовка инструментов.

Сегодня я расскажу все тонкости незаметного слива данных с. NeoSpy - программа для слежения за компьютером. Установите удобную и надёжную. Программа шпион NeoSpy простая и удобная в использовании. Программа USBFlashCopy предназначена для автоматического создания резервных копий данных с Flash-накопителей при .

Писать столь полезную программу мы будем на модном нынче C#. Гибкость языка и широкий функционал платформы . NET позволяют разрабатывать приложения с молниеносной скоростью.

Именно это нам и нужно. Нас интересует урожай, который мы сможем собрать, а не утомительный процесс кодинга. Одной из важных составляющих нашего приложения будет интерфейс. Чем солиднее ты его сделаешь, тем больше шансов, что жертва не заметит подвоха и спокойненько будет ожидать завершения антивирусного сканирования. Я особо париться не стал и разместил на форму чистого проекта лишь картинку и Progress.

Bar. Ты же можешь оторваться по полной и сделать умопомрачительный дизайн. Советую посмотреть оформление какого- нибудь реального антивируса и примерно в таком же стиле оформить свое приложение.

Ставим задачу. Будем считать, что с организационными вопросами и алгоритмом действия мы определились, самое время обсудить технические нюансы. Итак, наш антивирус должен начинать свою грязную работу во время инсталляции флешки. Как только новый диск появляется в системе, наша программа должна определить его букву и начать копирование.

Перед тем как я взялся писать эту статью, мне на глаза попался исходник подобной программы. Автор примера определял факт присутствия флешки путем периодичного перебора всех дисков на предмет наличия драйва типа «съемный носитель». Сначала я думал пойти тем же путем, но внутренний голос подсказывал о нерациональности. Взвесив все «за» и все «ну его на», я отбросил эту идею и пошел прогуляться на MSND.

Через пять минут оказалось, что сделал я это не зря. Ответ был найден! Без Win. API никуда.. Эффективней всего узнать о подключении нового оборудования (в нашем случае – флешки) можно путем отлова и анализа сообщения WM. Во время инсталляции девайса мессадж рассылается всем окнам, и мы достаточно легко можем его обработать в своем приложении.

Для этого достаточно лишь описать функцию Window. Proc. На практике выглядит примерно так: LResult CALLBACK Window. Proc (. HWND hwnd, //идентификатор окна. UINT u. Msg, //идентификатор сообщения.

WPARAM w. Param, //событие, которое произошло. LPARAM l. Param //указатель на структуру содержащую данные. В теле функции тебе необходимо сравнить значение параметра WParam с идентификаторами различных событий, относящихся к сообщению WM. Для нашего примера это будут: DBT? Устройств с возможностью «горячего подключения» (я про usb) огромное множество (принтер, сканер, модем и т.

К счастью, и эта проблема решается достаточно просто. По параметру LParam мы можем обратиться к структуре . Вот, исходя из значения это поля, и делаются соответствующие выводы. Если оно равно DEV. Как в «Поле чудес», можно ее угадать, но лучше выдернуть информацию из структуры DEV. Учти, что в этом свойстве содержится лишь бит буквы, а не ее символьное представление.

Например, если значение 0, то буква диска будет A; если 1, то B и т. Для удобства получения символьной буквы лучше всего написать функцию. Если ты давно читаешь нашу рубрику и хорошо знаком с API- функциями, то в чтении следующей части статьи нет необходимости. Руководство По Качеству Строительной Лаборатории далее.

Открывай редактор и начинай ваять приложения. Все необходимые структуры и функции я описал; тебе остается их собрать в программу. Определяйся, а я начну погружение в . NET и C# в частности.

Ударим . NET'ом. Время приступать к практике и применить знания к языку C#. Где заявленная молниеносная скорость разработки?». В чем- то ты прав. Наше приложение действительно будет использовать Win.

API- функции (проще никак), но сами мы их описывать не будем. С проблемой определения флешек сталкивались многие разработчики. В результате этих стычек стали появляться бесплатные классы для C#, в которых уже реализован весь необходимый функционал. Нам остается только подключить такую заготовку (читай компонент) к своему проекту и вызвать пару методов.

Одним из таких классов мы сейчас и воспользуемся. А вот знание структур, описанных выше, тебе обязательно пригодится при переносе этой программы на Windows API. Готовых классов, решающих подобные задачи, великое множество, но мне больше всего понравился вариант от Jan Dolinay.

Этот человек написал очень простой в использовании и понимании кода класс Drive. Detector, который умеет: Определять факт подключения флеш- накопителя. Определять запрос на отмонтирование подключенной флешки. Определять факт отключение флехи. Получать букву диска вновь подключенной флешки. Предоставлять список открытых с флешки файлов. И самое главное, с этим классом чрезвычайно просто работать – в этом ты сейчас убедишься.

Подключение класса к своему проекту выполняется стандартным образом, и останавливаться на этом смысла нет. Поэтому перейдем сразу к инициализации. Выполняется она так: flash. Drive. Detector = new Drive. Detector(). flash.

Drive. Detector. Device. Arrived += new Drive. Detector. Event. Handler(On. Drive. Arrived). flash. Drive. Detector. Device. Removed += new Drive.

Detector. Event. Handler(On. Drive. Removed); После создания экземпляра объекта класса Drive. Detector я определяю обработчики событий Devie. Arrived() и Drive.

Removed(). По их названию нетрудно догадаться, за что они отвечают. Весь код инициализации лучше всего писать в метод Form. Основной код нашей программы будет находиться в обработчике события Device. Arrived. Его текст ты увидишь на врезке: string dir.

Name =. Environment. Get. Command. Line. Args(). Выполнять копирование будем в директорию «flash.

Определившись с именем папки, я пытаюсь создать ее с помощью функции Create. Directory(). Эту функцию я написал исключительно для удобства.

В ней происходит создание экземпляра объекта Directory. Info, предназначенного для работы с директориями, и вызов его метода Create(), который и создает новую папку. После создания папки можно выполнять копирование. Копирование всех файлов я выполняю с помощью объекта типа x. Directory. Если ты набираешь код из листинга самостоятельно, то при попытке компиляции компилятор разродится ошибкой, в которой черным по белому будет сказано: «Объект такого типа не найден». Дело в том, что x.

Directory - сторонний класс. Когда- то давным- давно я его нашел на просторах инета и с тех пор частенько использую в своих проектах. Мне он нравится тем, что для копирования вложенных папок достаточно вызвать один метод. Кроме того, он позволяет устанавливать фильтры. Реально обойтись и без него. Берем стандартные классы, хорошо знакомый всем программистам прием – рекурсию – и пишем пару десятков строк кода. Увы, этого я делать категорически не хочу.

Программа Незаметного Копирования
© 2017