C# VS调试程序与bin下.exe程序运行的疑问
最近在公司办公环境下制作一个小脚本,使用Spire操作Excel,已知司内自带文件加密,在VS调试环境下自加密文件可进行读取数据等操作,而bin下.exe程序则受到自加密限制,为何VS调试不受影响;有无通过代码的解决办法。
图片左侧为调试打开界面(文件图标右下角无锁),右侧为bin下.exe打开界面(文件图标右下角有锁)
.exe运行下捕获的错误信息,可知司内加密方式为更改文件后缀
回答
没什么好奇怪的,具体取决于软件解密的层级问题。
所以这种 所谓 安全保护 根本没法保护,以前帮朋友处理过这种文件(内部有加密,但电脑可以上网【就是说其他硬件接口不可用,比如usb】)无法考走的问题。—— 就因为它的解密是在winApi.OpenRead 之前(而所有的应用软件都是基于这个api读取buffer的),因此我“破解”的方式比较简单,用winApi把文件打开,读取流,然后发送到服务器上就可以了。
同样你可以想想这个安全软件原理和流程,比如上述方式他是可能用的,可以是加进程白名单。