имеем windows (xp, 7, 8, 8.1) с сохраненными настройками l2tp исходящего соединения. Где посмотреть l2tp. 1. подскажите точное место в реестре или на диске, где в незашифрованном виде можно посмотреть этот psk. или 2. подскажите прогрмму, способную извлечь эти сведения в виде текстовой информации. По указанным выше 2м пунктам я не смог разобраться самостоятельно. Более подробная инфа: Имеется некая виндовс софтина, которая при первом своем запуске создает и сохраняет l2tp соединение со всеми настройками. При последующих открытиях - она просто обращается к уже существующему соединению. Для извлечение Psk, как мне видится, можно использовать следующие(помимо первых двух) способы. а) разобрать exe-шник на код и посмотреть psk. Проблема в том, что exe шник создан проприетарным и я не могу получить доступ к его коду. Подскажите нужную софтину. б) запустить сниффер и посмотреть, как этот psk передается серверу. Подскажите программу. в) инициализировать первичный запуск софтины в sandbox и отсмотреть конкретное действие по созданию l2tp соединения и его настройки. В незашифрованном виде. Подскажите, с помощью какой проги это можно реализовать. Я уже упарился, спасибо.
1. Вероятно, в одной из ветвей реестра, которые на диске хранятся всего в нескольких файлах. Энивей, это совсем не лучший метод. 2. Добрая половина вспоминалок паролей. Гугл в помощь. а) Если psk по каким-то неведомым причинам зашит в софте - есть некоторый шанс тупо выдернуть строки из файла и посмотреть на них. б) скорее всего, авторизация не будет проходить в плейн-тексте, it depends в) можно, но это будет разбор кучи системных вызовов, что тоже не наш метод. Гугл все еще доступен по своему адресу и не собирается никуда уходить.
Я, конечно, понимаю, что религия не позволяет ответить человеку прямо, а не тыкать в гугл. Вы уверены, что понимаете о каком пароле я спрашиваю? Единственная бесплатная прога, которая смогла показать логин и пароль к впн соединению, не отобразила psk. Вопрос по-прежнему открыт.
Религия не позволяет гуглить за человека и выдавать ему списочек искомых программ. Более чем. Не верю, что существует лишь одна софтина, отображающая это в винде. К тому же, на psk часто забивают и ставят какое-то публичное значение.
сносишь уже созданное соединение, запускаешь ее под отладчиком, ставишь бряк на RasSetCredentials как тока брякнешься - можешь вытаскивать psk там структура typedef struct { DWORD dwSize; DWORD dwMask; TCHAR szUserName[UNLEN + 1]; TCHAR szPassword[PWLEN + 1]; TCHAR szDomain[DNLEN + 1]; } RASCREDENTIALS, *LPRASCREDENTIALS; кокда dwMask == RASCM_PreSharedKey, в одном из буферов будит ключ пск
Пробовал ollydbg 1 и 2 под win8 и winxp. Затыкается на этапе ввода логина и пароля диалогового окна при запуске программы, ставящей l2tp, с ошибкой "execution not continuable". ida 5.0 пропускает программу полностью. Breakpoint в ней ставится токо с указанием адреса, а адрес мне неизвестен. После установки l2tp ставлю на паузу исполнение и осуществляю полнотекстовый поиск, ничего не находится. Можно более подробный гайд с указанием кокретного отладчика? Спасибо.
Прогу дать не могу, сами понимаете. Удалось вытащить следующие данные: Code: .idata:009037D8 ; Imports from rasapi32.dll .idata:009037D8 ; .idata:009037D8 ; DWORD __stdcall RasSetCredentialsW(LPCWSTR, LPCWSTR, struct tagRASCREDENTIALSW *, BOOL) .idata:009037D8 __imp_RasSetCredentialsW dd offset rasapi32_RasSetCredentialsW .idata:009037D8 ; DATA XREF: .text:loc_8D6474r .idata:009037DC ; DWORD __stdcall RasGetEntryPropertiesW(LPCWSTR, LPCWSTR, struct tagRASENTRYW *, LPDWORD, LPBYTE, LPDWORD) .idata:009037DC __imp_RasGetEntryPropertiesW dd offset rasapi32_RasGetEntryPropertiesW .idata:009037DC ; DATA XREF: .text:loc_8D646Cr .idata:009037E0 ; DWORD __stdcall RasSetEntryPropertiesW(LPCWSTR, LPCWSTR, struct tagRASENTRYW *, DWORD, LPBYTE, DWORD) .idata:009037E0 __imp_RasSetEntryPropertiesW dd offset rasapi32_RasSetEntryPropertiesW .idata:009037E0 ; DATA XREF: .text:loc_8D6464r .idata:009037E4 db 4 dup(0) .idata:009037E4 и Code: .text:008D645C ; DWORD __stdcall loc_8D645C(LPCSTR, LPCSTR) .text:008D645C loc_8D645C: ; CODE XREF: sub_8DD120+A7p .text:008D645C jmp ds:__imp_RasDeleteEntryA .text:008D6462 ; --------------------------------------------------------------------------- .text:008D6462 mov eax, eax .text:008D6464 .text:008D6464 ; DWORD __stdcall loc_8D6464(LPCWSTR, LPCWSTR, struct tagRASENTRYW *, DWORD, LPBYTE, DWORD) .text:008D6464 loc_8D6464: ; CODE XREF: sub_8DD470+135p .text:008D6464 jmp ds:__imp_RasSetEntryPropertiesW .text:008D646A ; --------------------------------------------------------------------------- .text:008D646A mov eax, eax .text:008D646C .text:008D646C ; DWORD __stdcall loc_8D646C(LPCWSTR, LPCWSTR, struct tagRASENTRYW *, LPDWORD, LPBYTE, LPDWORD) .text:008D646C loc_8D646C: ; CODE XREF: sub_8DD470+73p .text:008D646C jmp ds:__imp_RasGetEntryPropertiesW .text:008D6472 ; --------------------------------------------------------------------------- .text:008D6472 mov eax, eax .text:008D6474 .text:008D6474 ; DWORD __stdcall loc_8D6474(LPCWSTR, LPCWSTR, struct tagRASCREDENTIALSW *, BOOL) .text:008D6474 loc_8D6474: ; CODE XREF: sub_8DD470+1B3p .text:008D6474 ; sub_8DD470+1FFp .text:008D6474 jmp ds:__imp_RasSetCredentialsW .text:008D647A ; -------------- Использовал ida 6.1 При установке breakpoint программа цикл не завершает, не доходит до диалогового окна ввода логина и пароля. Кроме этого в процессе исполнения обнаружиюватся unknown exception code, после согласия на продолжения как раз и запускается vpn, вроде бы. Где тут надо нажать и в какой момент, чтоб посмотреть заполненную структуру? Я нашёл структуру незаполненную, там db и ?. PSK вообще нигде не фигурирует.
Мне помогло Dialupass v3.61 - Extract dialup / RAS / VPN passwords stored by Windows. https://www.nirsoft.net/utils/dialupass.html