作者:孙倩倩猫小窝W_199 | 来源:互联网 | 2024-11-04 19:17
在K3Cloud平台中,配置文件内的敏感信息如密码会被加密处理。通过深入研究,我们发现可以通过Kingdee.BOS.Api提供的接口对这些加密字符串进行解密。本文详细介绍了这一解密技术的具体实现方法及其应用场景,为开发者提供了宝贵的参考和实践指导。此外,还探讨了该技术在数据安全和系统管理中的重要性,以及如何在实际项目中高效地应用这些技术,确保系统的稳定性和安全性。
K3CLOUD 配置文件中,会对密码进行加密

经过研究发现,用Kingdee.BOS.App.Security.DataCenterPWDEncryptUtils.DecryptPWD方法可以解密,但是此方法可访问性为internal,只能在同程序集访问。如果需要外部调用,就要把可访问性改为public。

这个程序集是有加壳的,反编译代码不正常,需要先用de4dot清除混淆
在命令行中运行 de4dot Kingdee.BOS.App.Security.dll 即可
de4dot是开源工具,github地址为 https://github.com/0xd4d/de4dot
接下来就是用dnSpy来修改程序集了。
dnSpy是开源工具,和de4dot为同一作者,github地址为 https://github.com/0xd4d/dnSpy
用dnSpy打开程序集,找到要修改的类,右键选择“编辑类”,把类访问性改为public,再点击“编译”,并保存模块即可。

方法第三个参数为加密方法
0 为proclaimtext 1为des加密 2为rsa加密 3为aes加密
经过测试,管理中心使用了DES加密,业务数据库用的是AES加密
