Защита паролем программы без стороннего программного обеспечения с зашифрованным паролем в Windows 7 Enterprise?

268
totallynotworkingatm

Уже несколько дней я тестировал его, и моей первоначальной идеей было использование файла .bat для запроса ввода, проблема в том, что пароль не зашифрован, и поэтому я не могу использовать его, как сейчас.

Нашел этот скрипт .bat, который делает то, что я хочу, но не зашифрован:

@Echo off cls :Password Set input= set /p input= Password (input then press enter) : if %input%==star goto YES if not %input%==star goto NO  :YES  Start MSpaint.exe Exit  :NO  Echo INCORRECT PASSWORD goto Password 

Если есть команда или что-то, что я могу добавить, пароль не будет виден, пока он набирается, это должно сработать.

0
Что вы на самом деле пытаетесь получить этим? Поскольку пакетный файл должен быть читаемым для пользователя, он сможет прочитать его в любом случае. Если вы хотите сделать его немного сложнее, вы можете использовать хеш и дополнительный инструмент, который позволяет вам вычислять хеш и сравнивать хеш (что обычно делается). Seth 6 лет назад 0
Просто используйте EFS, зашифруйте нужные файлы, пропустите бесполезные пакетные файлы, которые никому не мешают запускать Ramhound 6 лет назад 1
Любой скрипт, который вы исправите, НЕ помешает никому вручную запустить программу. Ramhound 6 лет назад 0

1 ответ на вопрос

0
harrymc

Одним из решений будет использование утилиты, например RunAsSpc, с помощью которой вы можете вызывать программу, требующую пароль. Пароль и все другие данные хранятся в RunAsSpc в зашифрованной базе данных. Это может сделать runasплюс пароль плюс шифрование (хотя пользователь может быть вами самим).

RunAsSpc бесплатен для частного использования. Подробнее об этом см. В статье «Передача пароля в Runas с помощью RunAsSpc» .

Для более простой защиты вы можете использовать генератор Md5 для генерации хэша пароля. Затем пакетный файл запросит пароль, но сравнивает его хеш MD5, а не сам пароль.

Для еще более простой защиты от неопытных пользователей вы можете посыпать ссылки на неопределенные переменные среды вокруг вашего пакетного файла. Такие переменные выглядят пустыми при оценке, но они будут отговаривать чтение командного файла.

Используя эту идею, следующий скрипт:

@echo off echo "Hello, world!" 

может выглядеть так:

@%n%e%x%c%s%h%z%o%f% o%d%f%d%f e%n%c%o%h%n%o %n%H%p%e%n%l%o%l%o%o%o%,%o% w%c%o%n%r%p%l%k%d%e%!%s% 
Звучит неплохо, но мы будем использовать сценарий на коммерческой основе, поэтому мне придется запускать его в старших классах. Но спасибо за совет :) totallynotworkingatm 6 лет назад 0