[exim-dev] [Bug 2727] New: Failure to expand due to taint in…

Top Page
Delete this message
Reply to this message
Author: admin
Date:  
To: exim-dev
Subject: [exim-dev] [Bug 2727] New: Failure to expand due to taint in 4.94.2
https://bugs.exim.org/show_bug.cgi?id=2727

            Bug ID: 2727
           Summary: Failure to expand due to taint in 4.94.2
           Product: Exim
           Version: 4.94
          Hardware: x86
                OS: All
            Status: NEW
          Severity: bug
          Priority: medium
         Component: String expansion
          Assignee: unallocated@???
          Reporter: martynas@???
                CC: exim-dev@???


With 4.94.2 we get the following (attaching comparison of how it worked in
4.94):
18:23:17 1707974 --------> virtual_aliases router <--------
18:23:17 1707974 local_part=asdads domain=domain.com
18:23:17 1707974 calling virtual_aliases router
18:23:17 1707974 rda_interpret (string): '${if
exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}'
18:23:17 1707974  ╭considering: ${if
exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}
18:23:17 1707974   ╭considering:
/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}
18:23:17 1707974   ├──expanding: /etc/virtual/$domain/aliases
18:23:17 1707974   ╰─────result: /etc/virtual/domain.com/aliases
18:23:17 1707974              ╰──(tainted)
18:23:17 1707974  ├──condition: exists{/etc/virtual/$domain/aliases}
18:23:17 1707974  ├─────result: true
18:23:17 1707974   ╭considering:
${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}
18:23:17 1707974    ╭considering:
$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}
18:23:17 1707974    ├──expanding: $local_part
18:23:17 1707974    ╰─────result: asdads
18:23:17 1707974               ╰──(tainted)
18:23:17 1707974    ╭considering: /etc/virtual/$domain/aliases}}}}
18:23:17 1707974    ├──expanding: /etc/virtual/$domain/aliases
18:23:17 1707974    ╰─────result: /etc/virtual/domain.com/aliases
18:23:17 1707974               ╰──(tainted)
18:23:17 1707974 LOG: MAIN PANIC
18:23:17 1707974   Tainted filename for search:
'/etc/virtual/domain.com/aliases'
18:23:17 1707974   ├failed to expand:
${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}
18:23:17 1707974   ╰───error message: NULL
18:23:17 1707974  ├failed to expand: ${if
exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}
18:23:17 1707974  ╰───error message: NULL
18:23:17 1707974 virtual_aliases router: defer for asdads@???
18:23:17 1707974   message: failed to expand "${if
exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}":
NULL
18:23:17 1707974 ----------- end verify ------------
18:23:17 1707974 deny: condition test deferred in ACL "acl_check_recipient"
18:23:17 1707974 SMTP>> 451 Temporary local problem - please try later
18:23:17 1707974 LOG: MAIN REJECT
18:23:17 1707974   H=localhost (centos8.martynas.it) [::1]
F=<asdasd1@???> temporarily rejected RCPT asdads@???: failed to
expand "${if
exists{/etc/virtual/$domain/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain/aliases}}}}":
NULL


4.94:
18:28:50 1713224 --------> virtual_aliases router <--------
18:28:50 1713224 local_part=asdasd1 domain=domain.com
18:28:50 1713224 checking domains
18:28:50 1713224 search_open: lsearch "/etc/virtual/domainowners"
18:28:50 1713224   cached open
18:28:50 1713224 search_find: file="/etc/virtual/domainowners"
18:28:50 1713224   key="domain.com" partial=-1 affix=NULL starflags=0
opts="ret=key"
18:28:50 1713224 LRU list:
18:28:50 1713224   6/etc/virtual/domainowners
18:28:50 1713224   6/etc/virtual/domain.com/aliases
18:28:50 1713224   6/etc/virtual/domain.com/passwd
18:28:50 1713224   6/etc/virtual/domain.com/autoresponder.conf
18:28:50 1713224   6/etc/virtual/domain.com/majordomo/list.aliases
18:28:50 1713224   6/etc/virtual/domains
18:28:50 1713224   7/etc/virtual/blacklist_domains
18:28:50 1713224   7/etc/virtual/bad_sender_hosts
18:28:50 1713224   7/etc/virtual/blacklist_senders
18:28:50 1713224   7/etc/virtual/skip_rbl_domains
18:28:50 1713224   6/etc/virtual/use_rbl_domains
18:28:50 1713224   6/etc/passwd
18:28:50 1713224   7/etc/virtual/whitelist_senders
18:28:50 1713224   7/etc/virtual/whitelist_hosts
18:28:50 1713224   7/etc/virtual/whitelist_domains
18:28:50 1713224   5/etc/virtual/helo_data
18:28:50 1713224   End
18:28:50 1713224 internal_search_find: file="/etc/virtual/domainowners"
18:28:50 1713224   type=lsearch key="domain.com" opts="ret=key"
18:28:50 1713224 cached data used for lookup of domain.com
18:28:50 1713224   in /etc/virtual/domainowners
18:28:50 1713224 lookup yielded: bogdan8
18:28:50 1713224 lookup ret=key: domain.com
18:28:50 1713224 domain.com in "lsearch,ret=key;/etc/virtual/domainowners"? yes
(matched "lsearch,ret=key;/etc/virtual/domainowners")
18:28:50 1713224 calling virtual_aliases router
18:28:50 1713224 rda_interpret (string): '${if
exists{/etc/virtual/$domain_data/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain_data/aliases}}}}'
18:28:50 1713224  ╭considering: ${if
exists{/etc/virtual/$domain_data/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain_data/aliases}}}}
18:28:50 1713224   ╭considering:
/etc/virtual/$domain_data/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain_data/aliases}}}}
18:28:50 1713224   ├──expanding: /etc/virtual/$domain_data/aliases
18:28:50 1713224   ╰─────result: /etc/virtual/domain.com/aliases
18:28:50 1713224  ├──condition: exists{/etc/virtual/$domain_data/aliases}
18:28:50 1713224  ├─────result: true
18:28:50 1713224   ╭considering:
${lookup{$local_part}lsearch*{/etc/virtual/$domain_data/aliases}}}}
18:28:50 1713224    ╭considering:
$local_part}lsearch*{/etc/virtual/$domain_data/aliases}}}}
18:28:50 1713224    ├──expanding: $local_part
18:28:50 1713224    ╰─────result: asdasd1
18:28:50 1713224               ╰──(tainted)
18:28:50 1713224    ╭considering: /etc/virtual/$domain_data/aliases}}}}
18:28:50 1713224    ├──expanding: /etc/virtual/$domain_data/aliases
18:28:50 1713224    ╰─────result: /etc/virtual/domain.com/aliases
18:28:50 1713224   search_open: lsearch "/etc/virtual/domain.com/aliases"
18:28:50 1713224     cached open
18:28:50 1713224   search_find: file="/etc/virtual/domain.com/aliases"
18:28:50 1713224     key="asdasd1" partial=-1 affix=NULL starflags=1 opts=NULL
18:28:50 1713224   LRU list:
18:28:50 1713224     6/etc/virtual/domain.com/aliases
18:28:50 1713224     6/etc/virtual/domainowners
18:28:50 1713224     6/etc/virtual/domain.com/passwd
18:28:50 1713224     6/etc/virtual/domain.com/autoresponder.conf
18:28:50 1713224     6/etc/virtual/domain.com/majordomo/list.aliases
18:28:50 1713224     6/etc/virtual/domains
18:28:50 1713224     7/etc/virtual/blacklist_domains
18:28:50 1713224     7/etc/virtual/bad_sender_hosts
18:28:50 1713224     7/etc/virtual/blacklist_senders
18:28:50 1713224     7/etc/virtual/skip_rbl_domains
18:28:50 1713224     6/etc/virtual/use_rbl_domains
18:28:50 1713224     6/etc/passwd
18:28:50 1713224     7/etc/virtual/whitelist_senders
18:28:50 1713224     7/etc/virtual/whitelist_hosts
18:28:50 1713224     7/etc/virtual/whitelist_domains
18:28:50 1713224     5/etc/virtual/helo_data
18:28:50 1713224     End
18:28:50 1713224   internal_search_find: file="/etc/virtual/domain.com/aliases"
18:28:50 1713224     type=lsearch key="asdasd1" opts=NULL
18:28:50 1713224   cached data used for lookup of asdasd1
18:28:50 1713224     in /etc/virtual/domain.com/aliases
18:28:50 1713224   lookup yielded: bogdan@???
18:28:50 1713224   ├──expanding:
${lookup{$local_part}lsearch*{/etc/virtual/$domain_data/aliases}}
18:28:50 1713224   ╰─────result: bogdan@???
18:28:50 1713224  ├──expanding: ${if
exists{/etc/virtual/$domain_data/aliases}{${lookup{$local_part}lsearch*{/etc/virtual/$domain_data/aliases}}}}
18:28:50 1713224  ╰─────result: bogdan@???
18:28:50 1713224 expanded: 'bogdan@???'
18:28:50 1713224 file is not a filter file
18:28:50 1713224 parse_forward_list: bogdan@???
18:28:50 1713224 extract item: bogdan@???
18:28:50 1713224 virtual_aliases router generated bogdan@???
18:28:50 1713224   errors_to=NULL transport=NULL
18:28:50 1713224   uid=unset gid=unset home=NULL
18:28:50 1713224 routed by virtual_aliases router
18:28:50 1713224   envelope to: asdasd1@???
18:28:50 1713224   transport: <none>
18:28:50 1713224 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
18:28:50 1713224 Considering bogdan@???
18:28:50 1713224 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
18:28:50 1713224 routing bogdan@???
...


Did something change there? I don't see any changelog entries for hardened
taints.

--
You are receiving this mail because:
You are on the CC list for the bug.