Dmi*_*lin 5 encryption macos settings vpn
我需要为Mac OS X用户找到一种简单的方法(几点击解决方案)来导入VPN IPSec连接.我发现Mac OS X 中有一种方法可以在"系统偏好设置" - >"网络"中导出网络连接设置.
在导出网络连接期间,.networkConnect文件正在创建,其中包含敏感数据,例如由某些algorythm加密的ExportedSharedSecret和ExportedPassword,以及在使用base46编码之后.
我想知道为了加密这些敏感数据会使用什么样的algorythms?如何在linux下创建这样的.networkConnect文件,这样用户可以从我的服务器下载生成的.networkConnect文件并将VPN设置导入到Mac OS X?
这是一个示例.networkConnect文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>L2TP</key>
<dict>
<key>UserConfigs</key>
<array>
<dict>
<key>EAP</key>
<dict/>
<key>IPSec</key>
<dict>
<key>AuthenticationMethod</key>
<string>SharedSecret</string>
<key>ExportedSharedSecret</key>
<data>
EPANULrdr4/H5mwY6iBGprwzIYfWG4Ep
</data>
</dict>
<key>PPP</key>
<dict>
<key>AuthName</key>
<string>my_account</string>
<key>AuthPasswordEncryption</key>
<string>Keychain</string>
<key>CommRemoteAddress</key>
<string>192.168.1.8</string>
<key>ExportedPassword</key>
<data>
EPANVaLSgprCymwK5iBH0l/KJ1C3wBkh
</data>
<key>UserDefinedName</key>
<string>my_configuration</string>
</dict>
</dict>
</array>
</dict>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
小智 5
它使用带有硬编码密钥的异或。下面是一个简单的 Python 演示。
import base64
cryptotext = base64.b64decode("EPANULrdr4/H5mwY6iBGprwzIYfWG4Ep")
decryption_key = [0x7d, 0x89, 0x52, 0x23, 0xd2, 0xbc, 0xdd, 0xea, 0xa3, 0xb9, 0x1f]
i = 0
cleartext = ""
for ch in cryptotext:
cleartext += chr(ord(ch) ^ decryption_key[i])
i += 1
i = i % len(decryption_key)
print("%s" %(cleartext))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
945 次 |
| 最近记录: |