SCO OpenServer软件加密与解密分析
1. SCO OpenServer软件概述
SCO OpenServer是一款古老的软件,由一家早已消失的公司在1997年开发。系统中需要安装一个特殊的加密狗驱动,该驱动包含如下文本字符串:“Copyright 1989, Rainbow Technologies, Inc., Irvine, CA” 和 “Sentinel Integrated Driver Ver. 3.0 ”。驱动安装后,在 /dev
文件系统中会出现以下设备文件:
- /dev/rbsl8
- /dev/rbsl9
- /dev/rbsl10
若未连接加密狗,程序会报错,但在可执行文件中找不到错误字符串。借助IDA工具,可以轻松加载SCO OpenServer中使用的COFF可执行文件。通过搜索“rbsl”字符串,在代码片段中找到了相关内容。
2. 关键函数分析
- SSQC函数 :程序需要与驱动进行通信,
SSQC()
函数是关键。该函数的调用位置是一个thunk函数SSQ()
。SSQC
函数的代码片段展示了一系列操作,包括字符串长度比较、字符比较、文件操作等。例如,会比较传入字符串的长度是否为2,根据不同的字符值进行不同的处理,如跳转到不同的代码位置执行相应操作。