Windows Api SHGetPathFromIDList Buffer Overflow (MS,缺陷   
来源: 作者: 发布时间:2004-04-11  
   “华夏名网” http://www.sudu.cn 和 http://www.bigwww.com 是成都飞数科技有限公司的网络服务品牌,专业经营虚拟主机,域名注册,VPS,服务器租赁业务。公司创建于2002年,经过近5年的高速发展,“华夏名网”已经成为我国一家知名的互联网服务提供商,被国外权威机构webhosting.info评价为25大IDC服务商之一。  
涉及程式: 
Microsoft Windows 
  
描述: 
Windows Api SHGetPathFromIDList函数的缓冲溢出 
  
周详: 
对于SHGetPathFromIDList函数,string length和structure length能够被修改并导致快捷方式出错。 SHGetPathFromIDList 
功能是把项目标志符列表转换为文档系统路径: 
BOOL SHGetPathFromIDList( 
 LPCITEMIDLIST pidl, 
 LPSTR pszPath 
); 参数: 
pidl---相对 namespace 的根指定一个文档或目录地点的一张项目标识符表的地址 ( 桌面 ) ; 
pszPath---接收文档系统路径的缓冲地址,大小至少是MAX_PATH的字符长度 这里是对一个快捷方式文档的解析:   
  
解决方案: 
Windows2000没有该问题