FoxMail企业地址簿的系统管理员和域管理员口令都使用了弱加密算法
/ns/ld/softld/data/20011117231634.htm
					涉及程序: 
Foxmail邮件程序 
  
描述: 
FoxMail企业地址簿管理员口令加密算法易于破解 
  
详细: 
发现者:tombkeeper@126.com
FoxEAB(FoxMail企业地址簿)是FoxMail Server的一部分。经过分析发现,FoxEAB
将加密后的系统管理员和域管理员口令存放在文件“id2entry.dbb”中“userPassword::”
字段后,且采用了类似多表代换的简单算法。此算法具体描述如下(部分细节暂不公布):
1、明文可以是20到7E的所有ASCII字符。
2、将明文分为每3个字符一组,对每组分别加密。每组加密后的密文为4个字符。再将各组
  密文合并。以下叙述中如无特殊说明,所谓明文密文都是指每组明文密文对。
3、若明文字符数不是3的倍数,则对于末组明文有:明文数为1,则密文数为2;明文数为2,
  则密文数为3。密文数不足四位用“=”补足。
4、密文第1位由明文第1位决定,关系如下:
  如明文是 <sp>!"# 中任何一个则密文是 I ;(<sp>为空格)
  如明文是 $ % & ' 中任何一个则密文是 J ;
  ......
  如明文是 d e f g 中任何一个则密文是 Z ;
  如明文是 h i j k 中任何一个则密文是 a ;
  ......
  如明文是 |}~    中任何一个则密文是 f 。
5、密文第2位由明文第1、2位决定。
  明文第2位决定密文在哪4个字符中产生,明文第1位决定是4个字符中的哪一个。
  (具体略)
6、密文第3位由明文第2、3位决定。
  明文第2位决定密文在哪2个字符中产生,明文第3位决定是2个字符中的哪一个。
  (具体略)
7、密文第4位由明文第3位决定,有如下一一对应关系:
  明文是 <sp> 则密文是 g ;
  明文是 3  则密文是 z ;
  ......
  明文是 4  则密文是 0 ;
  ......
  明文是 =  则密文是 9 ;
  明文是 >  则密文是 + ;
  明文是 ?  则密文是 / ;
  明文是 @  则密文是 A ;
  ......
  明文是 Y  则密文是 Z ;
  明文是 Z  则密文是 a ;
  ......
  明文是 ~  则密文是 + 。
 
  
解决方案: 
给id2entry.dbb文件设置最小权限。由于id2entry.dbb只需供slapd.exe读写,
而slapd.exe是作为一项服务“FoxLdapServer”以SYSTEM权限运行的,所以可以只
保留SYSTEM的读写权。
 
发现者:tombkeeper@126.com