Blog. Just Blog

Быстрый поиск

Введите фрагмент названия статьи для поиска

Запуск ограниченного количества копий программы

23.05.2020 | Категория: Образ мышления: Assembler | Автор: ManHunter
В комментариях к статье о запрете запуска нескольких копий программы пару лет назад был задан очень правильный вопрос: как реализовать запуск ограниченного числа копий программы больше одного? Сейчас я могу ответить на этот вопрос полноценной статьей. Настоятельно рекомендую сперва прочитать изначальную статью, чтобы не дублировать здесь теоретические выкладки. Для наглядности почти все методы остаются прежними, меняться будут только условия их использования.

Первый способ использует shared-память, общую для всех копий данного приложения. В ней находится счетчик, который каждая копия увеличивает на 1 при запуске и уменьшает на 1 при завершении своей работы. При старте выполняется проверка на количество ранее запущенных копий. Счетчик достиг максимального значения - пожалуйте на выход.
  1. ; Расшаренная секция, общая для всех копий данного приложения
  2. section '.shared' data readable writeable shareable
  3. started  dd  0       ; Количество запущенных копий
  4.  
  5. ; Сегмент кода
  6. section '.code' code readable executable 
  7.         cmp     [started],3     ; Уже запущено три экземпляра программы?
  8.         jae     already_started ; Да, на выход
  9.  
  10.         ; +1 к счетчику копий
  11.         ; Префикс LOCK используется для предотвращения возможных конфликтов
  12.         ; на многопроцессорных машинах
  13.         lock add [started],1
  14.  
  15.         ; Нормальный запуск программы 
  16.         ... 
  17.         ...
  18.         ...
  19.         ; -1 от счетчика копий
  20.         lock sub [started],1
  21.         jmp     loc_exit
  22.  
  23. already_started:
  24.         ; Выход из программы
  25.         ...
  26. loc_exit:
Обратите внимание на использование префикса LOCK перед командами изменения счетчика копий. Этот префикс предназначен для обеспечения исключительного доступа к ячейке памяти на время выполнения команды при работе на многопроцессорных многозадачных системах. В отличие от проверки единственной копии, у такого варианта решения есть большой недостаток. Если приложение завершится аварийно или будет принудительно завершено системой, то счетчик работающих копий не уменьшится. Обойти это можно, если, например, в общей памяти хранить не просто счетчик, а массив идентификаторов процессов, при каждом запуске проверяя их наличие и актуальность.

Читать статью целиком »
Просмотров: 1347 | Комментариев: 3

Как спрятать диск в Проводнике Windows

08.02.2020 | Категория: Software | Автор: ManHunter

Как спрятать диск в Проводнике Windows

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

Читать статью целиком »
Просмотров: 2028 | Комментариев: 4

Как в Windows подменить одну программу другой

21.06.2019 | Категория: Software | Автор: ManHunter

Как в Windows подменить одну программу другой

Не так давно мне довелось чистить компьютер у знакомых от трояна, который на тот момент не обнаруживался ни одним антивирусом. Одно из проявлений зловреда заключалось в том, что при попытке запустить Firefox, Chrome или Opera, вместо них запускался Internet Explorer с предустановленным говносайтом. Переустановка браузеров ничем не помогла, но зато при переименовании исполняемых файлов браузеров они запускались как обычно. Это натолкнуло меня на мысль, что зловред каким-то образом ориентируется на имя файла. Поиск по реестру и последующее ковыряние в интернетах привело меня к хитрому трюку, который использовался в этом трояне. Речь идет о подмене одной программы другой.

Читать статью целиком »
Просмотров: 4464 | Комментариев: 3

Как прочитать файлы, заблокированные операционной системой Windows

21.02.2019 | Категория: Software | Автор: ManHunter

Как прочитать файлы, заблокированные операционной системой Windows

В целях безопасности некоторые файлы и каталоги в системе Windows защищены от несанкционированного доступа. И будь вы хоть трижды администратором на своем компьютере, при работающей системе вы не сможете их открыть даже для просмотра, не говоря уже о внесении каких-либо изменений. К таким файлам относятся файлы подкачки pagefile.sys и hiberfile.sys, файлы реестра, папки с данными точек восстановления. Для чего это нужно? Ну, например, при помощи специальных инструментов из файла подкачки можно попытаться извлечь сохраненные в памяти пароли от криптоконтейнеров (Passware Kit Forensic), а из файлов реестра - логины и пароли учетных записей пользователей (SamInside).

Читать статью целиком »
Просмотров: 3369 | Комментариев: 9

Что скрывают ярлыки?

26.01.2019 | Категория: Software | Автор: ManHunter

Что скрывают ярлыки?

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

Читать статью целиком »
Просмотров: 2688 | Комментариев: 7

Наверх
Powered by PCL's Speckled Band Engine 0.2 RC3
© ManHunter / PCL, 2008-2024
При использовании материалов ссылка на сайт обязательна
Время генерации: 0.06 сек. / MySQL: 3 (0.0031 сек.) / Память: 4.5 Mb
Наверх