Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Ввод данных в bat. Нужна помощь (http://forum.oszone.net/showthread.php?t=319236)

newsky 28-09-2016 16:26 2673082

Ввод данных в bat. Нужна помощь
 
Прошу прощения, если совсем легко, но сам как-то не могу найти решение.
Необходим несложный bat для:
1. Запустить сервис Dokan
2. При помощи encfs подключить диск в режиме reverse
3. Автоматически ввести пароль.

1 и 2 пункт понятен, а как ввести данные (пароль)? и завершить (enter) задачу?
Код:

net start DokanMounter
c:\TC\Soft\encfs4win\encfs.exe --reverse D:\photo\  V:

Появляется окно, где encfs ждёт ввода пароля и нажатия enter, вот как это сделать?
Пароль можно разместить в теле батника, если есть несложное решение, как явно не указывать пароль, а передать его как-то иначе, то-же будет неплохо. Спасибо

Iska 28-09-2016 17:48 2673101

Цитата:

Цитата newsky
Появляется окно, где encfs ждёт ввода пароля и нажатия enter, »

Покажите скриншот этого окна (Alt-PrintScreen).

Цитата:

Цитата newsky
если есть несложное решение, как явно не указывать пароль, а передать его как-то иначе, то-же будет неплохо. »

Такого решения нет. Можно пытаться шифровать/расшифровывать, прятать и изображать прочие т.п. вещи, которые никак не влияют на данную дыру в безопасности.

greg zakharov 28-09-2016 17:58 2673108

Цитата:

Цитата Iska
дыру в безопасности

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

Цитата:

Цитата newsky
если есть несложное решение, как явно не указывать пароль, а передать его как-то иначе, то-же будет неплохо

Это Вам тогда нужно в строну PowerShell смотреть, там пароль можно и зашифровать и "посолить", плюс если нужно вставить данные в некое окно, имеется возможность вызова WinAPI (FindWindow, FindWindowEx, SendMessage).

Iska 28-09-2016 18:38 2673123

Цитата:

Цитата greg zakharov
ибо в конечном счете приемник пароля как-то должен их обрабатывать »

Например, хранить не пароль, а хэш от него.

Цитата:

Цитата greg zakharov
позволяющих сбрасывать пароль админа »

Сброс пароля — это из другой оперы.

newsky 28-09-2016 19:49 2673140

Цитата:

Цитата Iska
Покажите скриншот этого окна (Alt-PrintScreen). »


Цитата:

Цитата Iska
Такого решения нет. »

Ок, ок, я на всякий случай спросил :)

Iska 28-09-2016 20:01 2673145

newsky, попробуйте простое перенаправление вида:
Код:

echo MyPassword|c:\TC\Soft\encfs4win\encfs.exe --reverse D:\photo\  V:
Но лучше этого не делать, ибо теряется весь смысл шифрованной файловой системы.

newsky 28-09-2016 20:39 2673156

Код:

net start DokanMounter
echo 77777777|c:\TC\Soft\encfs4win\encfs.exe --reverse D:\photo\  V:


Что-то всё то-же самое, не то. Ждёт пароль и ввод.

greg zakharov 28-09-2016 21:18 2673160

newsky, а что в пайпах? Пайп encfs.exe создает?
Цитата:

Цитата Iska
Сброс пароля — это из другой оперы.

Снова Вы невнимательны, писал же что это - далеко от темы.

newsky 28-09-2016 21:29 2673163

Да, создает, если вставить пароль и нажать ввод, то всё отл

Iska 28-09-2016 21:38 2673165

newsky, используйте параметр «--stdinpass» для того, чтобы приложение использовало стандартный поток ввода, а не функцию непосредственного чтения из консоли:
Код:

echo 77777777|c:\TC\Soft\encfs4win\encfs.exe --stdinpass --reverse D:\photo V:

newsky 28-09-2016 21:41 2673167

Iska, Большое спасибо! Так заработало!

greg zakharov 28-09-2016 21:42 2673168

Вы, видимо, не совсем поняли что имелись в виду именованные каналы. В момент, когда просит ввести пароль, запустите в другом консольном окне pipelist, посмотрите появился ли новый пайп среди прочих.

Iska 28-09-2016 21:47 2673169

Цитата:

Цитата greg zakharov
Вы, видимо, не совсем поняли что имелись в виду именованные каналы. »

:insane:

По умолчанию — использует ReadConsole().

greg zakharov 28-09-2016 22:07 2673171

Цитата:

Цитата Iska
По умолчанию — использует ReadConsole().

Собственно, к тому все и велось, чай ведь невозможно телепатировать устройство программы в ее отсутствии.

newsky 28-09-2016 22:30 2673183

Цитата:

Цитата greg zakharov
Вы, видимо, не совсем поняли что имелись в виду именованные каналы »

Похоже, да, я Вас не понял :) Но повторюсь, всё заработало, как хотелось и Вам большое спасибо за участие и помощь!


Время: 07:46.

Время: 07:46.
© OSzone.net 2001-