Есть ли способ воспроизвести функциональность кнопки «Сохранить учетные данные» в меню «Настройки 802.1x» с помощью Windows API? Или какой-либо другой способ навсегда сохранить учетные данные PEAP для профиля беспроводной сети.
Я пробовал использовать функцию WlanSetProfileEapXmlUserData
для установки MsChapV2:Username
и MsChapV2:Password
. Он кэширует учетные данные, но не сохраняет их постоянно.
UPD: удалось найти пользовательские данные, хранящиеся в HKLM\SOFTWARE\Microsoft\Wlansvc\UserData\Profiles\{GUID}
, но они зашифрованы. Я предполагаю, что CryptProtectData используется для его шифрования. Если бы я только знал, какая соль используется.
netsh wlan
. Хм, если подумать, извините. Это то, что я бы сделал. т.е. запустите IDA, а затем проверьте что-то, что, как я знаю, реализует то, что я хочу, чтобы увидеть, что оно делает. - person 0xC0000022L   schedule 19.03.2013netshell.dll
. Ознакомьтесь с функциями изWlanapi.dll
(представлены в W7). Они могут помочь вам начать. - person 0xC0000022L   schedule 19.03.2013CryptProtectData
вызывается не изWlanapi.dll
напрямую, а через какую-то другую функцию, вызываемую RPC. Нам нужно идти глубже. - person pupkinsen   schedule 20.03.2013CryptProtectData
вwlansvc.dll
. Похоже, это тот, который мне нужен. Соли нет и флагаLOCAL_MACHINE
тоже нет. Таким образом, только пользователь локальной системы может декодировать зашифрованные данные. Мне удалось декодировать некоторые данные профиля, созданные Windows, и они представлены в каком-то двоичном формате. Я подозреваю, что здесь замешанEapHostPeerCredentialsXml2Blob
. - person pupkinsen   schedule 20.03.2013