CVE:CVE-2007-2052
CNNVD:CNNVD-200704-268
Python是一种开放源代码的脚本编程语言。
Python的Modules/_localemodule.c文件中的PyLocale_strxfrm函数中存在单字节溢出漏洞，允许攻击者读取部分内存内容。 
Modules/_localemodule.c:361
356         n1 = strlen(s) + 1;
357         buf = PyMem_Malloc(n1);
358         if (!buf)
359             return PyErr_NoMemory();
360         n2 = strxfrm(buf, s, n1);
如果所转换的字符串长于原始字符串的话：
361         if (n2 > n1) {
362             /* more space needed */
在这里会分配n2字节：
363             buf = PyMem_Realloc(buf, n2);
364             if (!buf)
365                 return PyErr_NoMemory();
字符串会为n2字符长，终止的空字符不适合这个长度，因此字符串不会终止，在某些情况下可能导致信息泄露。 
366             strxfrm(buf, s, n2);
367         }
368         result = PyString_FromString(buf);
369         PyMem_Free(buf);
370         return result;
371     }
372
373     #if defined(MS_WINDOWS)
374     static PyObject*
375     PyLocale_getdefaultlocale(PyObject* self)
solution:Upgrade python python to a higher version than 2.4.0,2.5.0,and avoid the version 2.4.0,2.5.0