Где WinSCP хранит пароль сайта?


17

Где WinSCP хранит информацию о сайте или пароль? Я не могу найти его в разделе «Документы и настройки» ...


Я знаю, что это решение будет слишком простым для суперпользователей;) но если вы не хотите испачкать руки или просто хотите увидеть пароли как можно скорее, имхо, хороший вариант - использовать дополнительный инструмент восстановления пароля smartftp . Я не хочу рекламировать или что-то, но для меня это была действительно полезная утилита. Кстати, вот краткий рассказ о том, как увидеть эти пароли: digitalette.com/web/recover-lost-ftp-passwords-winscp надеюсь, что я помог
flasherr

Ответы:


9

Файл конфигурации хранится либо в реестре Windows, либо, если вы используете переносную версию, в файле INI. ( См. Документацию. ) Расположение реестра:

HKEY_CURRENT_USER\Software\Martin Prikryl\WinSCP 2

Вы всегда можете экспортировать настройки в INI-файл, нажав Exportв диалоговом окне настроек.

Обратите внимание, что ваши пароли хранятся не в тексте, а в кодировке. Хотя трудно расшифровать, это не невозможно.


4
В WinSCP 5.2.x и более поздних версиях функция экспорта была перемещена в Инструменты> Экспорт / Резервное копирование конфигурации в диалоге входа.
Мартин Прикрыл

20

Попробуйте этот метод.

войдите в свою сохраненную сессию

перейти в меню сеанса

нажмите на генерировать URL

проверять только параметры имени пользователя и пароля (если вам нужен текущий путь к каталогу, нажмите на эту опцию, а также)

У вас есть несколько вариантов, URL / Script / .Net Assembly, выберите нужный.

нажмите на копию, чтобы скопировать доску.

он будет содержать имя пользователя и пароль.

Это оно.


2
Спасатель, у меня почти 100 аккаунтов с неизвестными (сохраненными) паролями. Это то, что сработало для меня.
Энди Джи

2
Это самый простой ответ
Gajotres

1
не забудьте выполнить декодирование URL, если ваш psw содержит специальные символы
KuN

9

Это упрощенная версия Cesar'sотличного ответа и предполагает, что ваш пароль все еще работает в SCP.

Создайте пакетный файл с именем, echo.cmdкоторый содержит следующее:

echo %*
pause

Разместите его в подходящем месте, например на рабочем столе.

Запустите WinSCP и подключитесь к вашему сайту. Нажмите на Options -> Preferences:

Настройки WinSCP

В диалоговом окне «Настройки» перейдите к Integration -> Applications. Замените то, что было ранее в пути PuTTY, на путь к вновь созданному echo.cmdпакетному файлу. Также выберите вариант:

Remember session password and pass it to PuTTY (SSH)

Настройки WinSCP Putty

Нажмите OK.

Теперь запустите PuTTY из WinSCP.

Ваш ранее сохраненный пароль теперь должен отображаться на экране!


6

Создайте новое консольное приложение C #, затем введите следующую программу:

namespace ConsoleApplication8
{
    class Program
    {
        static void Main(string[] args)
        {
            foreach (var str in args)
                System.Console.WriteLine(str);
            System.Console.ReadLine();
        }
    }
}

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

Теперь скомпилируйте вашу программу и возьмите бинарный файл (например, ConsoleApplication8.exe). Разместите его в подходящем месте, например на рабочем столе.

Теперь, если ваш пароль все еще работает, запустите WinSCP и подключитесь к вашему сайту. Нажмите на Опции -> Настройки

введите описание изображения здесь

В диалоговом окне «Параметры» перейдите в раздел «Интеграция -> Приложения». Замените то, что было ранее в пути PuTTY, на путь к вашему вновь созданному двоичному файлу. Также выберите опцию «Запомнить пароль сессии и передать его в PuTTY (SSH)».

введите описание изображения здесь

Нажмите OK, а затем попробуйте запустить PuTTY из WinSCP.

Ваш ранее сохраненный пароль теперь должен быть виден на вашем экране.


2
Это довольно умно!
Пол Ламмерцма

6

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

Моим решением было вместо этого указать командную строку Putty на Notepad ++.

Когда он запустился, он сказал, что «Файл -pw» не существует, я должен создать его, вы говорите, нет.

Затем он говорит: «Файл {пароль появляется здесь} не существует, если я его создам», и снова вы говорите сейчас, и, бэм, был пароль в открытом тексте.


1
Хороший трюк. Интересно, можно ли сделать параметры командной строки видимыми, например, в диспетчере задач Windows? (В Unix при запуске psпоказывались бы пароли, если они были указаны в командной строке, также для подпроцессов, если они продолжали работать в течение некоторого времени.)
Arjan

2

Вы можете использовать такой инструмент, как WireShark, чтобы «увидеть», что происходит по проводам. Я имею в виду, что сеанс захвата пакетов должен быть запущен (в WireShark), а затем войти на ваш FTP-сервер (используя WinSCP, без шифрования).

Затем, просмотрев зарегистрированный сеанс в WireShark, можно легко идентифицировать «обсуждение» (например, фильтрацию по IP-адресу назначения), а затем идентифицировать запрос: blabla пользователя USER, а затем запросить: blabla PASS на уровне FTP сервера. «разговор».


2

Я пришел к этому ответу, исследуя немного другую проблему, однако это было полезно, и я хотел поделиться тем, что я сделал.

Моя проблема заключалась в том, что я использовал WinSCP с паролями, сохраненными под Windows XP в домене Active Directory, который затем изменился. С новым доменом Active Directory мой профиль пользователя также изменился, в результате чего WinSCP не показывал сохраненные профили входа в систему.

Для восстановления предыдущих профилей входа в WinSCP я сделал следующее.

Запустил regeditприложение и выполнил поиск любых ключей с именем Martin Prikryl. После нескольких ложных совпадений я нашел ключ с тем, что выглядело как правильные данные сеанса.

Затем я экспортировал раздел реестра WinSCP Session с помощью команды regeditexport в текстовый файл.

Затем я изменил экспортированный текст в текстовом файле так, чтобы он использовался HKEY_CURRENT_USERкак начало полного ключа перед подразделом «Программное обеспечение».

Затем regeditя импортировал данные, чтобы изменить ключи реестра Windows, используемые WinSCP для текущего пользователя.

Эти действия сделали следующее: (1) обнаружил данные сеанса входа WinSCP для старого профиля пользователя, (2) сделал копию этих данных, (3) изменил ключ реестра Windows, чтобы разрешить импорт, regeditчтобы изменить текущего пользователя, (4) импортировал данные, модифицирующие записи реестра WinSCP для текущего профиля пользователя.

После выполнения этой процедуры я смог получить доступ к своему веб-серверу с помощью WinSCP.

Вероятно, есть несколько причин, почему это было просто и сработало. Во-первых, этот компьютер использовался только одним человеком, поэтому он не передавался, уменьшая количество совпадений. Во-вторых, у меня были права администратора на ПК. В-третьих, это была Windows XP, а не Windows 7/8.


1

Цитирование FAQ по WinSCP Могу ли я восстановить пароль, сохраненный в сеансе WinSCP? :

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

 . 2017-06-13 07:41:11.313 ---------------------------------------------------------------
 . 2017-06-13 07:41:11.313 WinSCP Version 5.9.5 (Build 7441) (OS 10.0.15063 - Windows 10)
 . 2017-06-13 07:41:11.313 Configuration: HKCU\Software\Martin Prikryl\WinSCP 2\
 . 2017-06-13 07:41:11.313 Log level: Normal, Logging passwords
 ...
 . 2017-06-13 07:41:11.313 ---------------------------------------------------------------
 . 2017-06-13 07:41:11.313 Session name: My server (Site)
 . 2017-06-13 07:41:11.313 Host name: example.com (Port: 22)
 . 2017-06-13 07:41:11.313 User name: martin (Password: mypassword, Key file: No)

Вы также можете использовать функцию « Создать URL-адрес / код сеанса» для восстановления сохраненного пароля. Обратите внимание, что специальные символы в пароле могут быть экранированы. Скорее всего, вы увидите пароль в коде сборки .NET , где экранируются только двойные кавычки (на всех поддерживаемых языках).

введите описание изображения здесь


Предложение из часто задаваемых вопросов WinSCP было решением в моем случае. Я попросил клиента изменить свой IP-адрес для FTP-сервера и повторно использовать исходный пароль. Многие другие решения, которые были размещены здесь, требуют, чтобы вы сначала установили соединение, что было невозможно в моем случае. Я временно включил ведение журнала конфиденциальных данных, попытался подключиться к старому IP-адресу, допустил сбой, и пароль, использованный при попытке, присутствовал в журнале.
root

0

Просто установите максимальный уровень журнала в WinSCP и подключитесь к серверу. Журналы содержат простой пароль.

Настройки журналов


Дело не в уровне журнала, а в «логах паролей и другой конфиденциальной информации» .
Мартин Прикрыл,

Сожалею. Да, нужно проверить опцию «войти пароли ...»
Эдуардо Гонсалвеш Корреа
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.