+sudo (1.6.6-1.5) oldstable-security; urgency=high
+
+ * Non-maintainer upload by the Security Team
+ * Reverse the environment semantic by forcing users to maintain a
+ whitelist [env.c, Bug#342948, CVE-2005-4158]
+
+ -- Martin Schulze <joey@infodrom.org> Wed, 21 Dec 2005 10:05:52 +0100
+
sudo (1.6.6-1.4) oldstable-security; urgency=high
* Non-maintainer upload by the Security Team
"LC_*",
"LANG",
"LANGUAGE",
+ "TERM",
NULL
};
* env_check.
*/
for (ep = envp; *ep; ep++) {
- okvar = 1;
+ okvar = 0;
/* Skip variables with values beginning with () (bash functions) */
if ((cp = strchr(*ep, '=')) != NULL &&
continue;
/* Skip anything listed in env_delete. */
+#if 0
for (cur = def_list(I_ENV_DELETE); cur && okvar; cur = cur->next) {
len = strlen(cur->value);
/* Deal with '*' wildcard */
okvar = 0;
}
}
+#endif
/* Check certain variables for '%' and '/' characters. */
- for (cur = def_list(I_ENV_CHECK); cur && okvar; cur = cur->next) {
+ for (cur = def_list(I_ENV_CHECK); cur; cur = cur->next) {
len = strlen(cur->value);
/* Deal with '*' wildcard */
if (cur->value[len - 1] == '*') {
iswild = 0;
if (strncmp(cur->value, *ep, len) == 0 &&
(iswild || (*ep)[len] == '=') &&
- strpbrk(*ep, "/%")) {
- okvar = 0;
+ strpbrk(*ep, "/%") == NULL) {
+ okvar = 1;
}
}