Hello Markus,

 

thanx for your fix, it helped us lot. But we have met another problem with
this patch. Using version 3.5.23-5+deb9u1, in logs of ICAP server (in this
case Eset GW Security) we do see, which file/URL was scanned, which we need
to for further analysis in SIEM etc.

 

Sep  2 09:27:44 czsrv-jerproxy02 esets_daemon[28218]: summ[6e3a0106]: vdb=
46656, agent=icap, name="http://ocsp.digicert.com/";, virus="is OK", action="
", info="", avstatus="clean", hop="accepted"

Sep  2 09:27:44 czsrv-jerproxy02 esets_icap[28243]: summ[6e530201]: method=
"REQMOD", object="http://ocsp.digicert.com/";, status="clean", action=
"accepted"

Sep  2 09:27:44 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0207]: Agent
icap accepted

Sep  2 09:27:44 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0207]:
Searching for section icap in configuration

Sep  2 09:27:44 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0207]: Using
configuration for section icap

Sep  2 09:27:44 czsrv-jerproxy02 esets_daemon[28218]: summ[6e3a0207]: vdb=
46656, agent=icap, name="http://ocsp.digicert.com/";, virus="is OK", action="
", info="", avstatus="clean", hop="accepted"

Sep  2 09:27:44 czsrv-jerproxy02 esets_icap[28243]: summ[6e530201]: method=
"RESPMOD", object="http://ocsp.digicert.com/";, status="clean", action=
"accepted"

 

But using new version 3.5.23-5+deb9u3, instead of correct URL, there is 
http://:0 URL in request:

Sep  2 09:29:04 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0108]: Agent
icap accepted

Sep  2 09:29:04 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0108]:
Searching for section icap in configuration

Sep  2 09:29:04 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0108]: Using
configuration for section icap

Sep  2 09:29:04 czsrv-jerproxy02 esets_daemon[28218]: summ[6e3a0108]: vdb=
46656, agent=icap, name="http://:0";, virus="is OK", action="", info="",
avstatus="clean", hop="accepted"

Sep  2 09:29:04 czsrv-jerproxy02 esets_icap[28243]: summ[6e530101]: method=
"REQMOD", object="http://:0";, status="clean", action="accepted"

Sep  2 09:29:04 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0209]: Agent
icap accepted

Sep  2 09:29:04 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0209]:
Searching for section icap in configuration

Sep  2 09:29:04 czsrv-jerproxy02 esets_daemon[28218]: debug[6e3a0209]: Using
configuration for section icap

Sep  2 09:29:04 czsrv-jerproxy02 esets_daemon[28218]: summ[6e3a0209]: vdb=
46656, agent=icap, name="http://:0";, virus="is OK", action="", info="",
avstatus="clean", hop="accepted"

Sep  2 09:29:04 czsrv-jerproxy02 esets_icap[28243]: summ[6e530101]: method=
"RESPMOD", object="http://:0";, status="clean", action="accepted"

 

I know, that from functional standpoint this is not critical, but from
governance view, we are not able now prove, what was scanned and what was 
not. I know, that with SSL communication it is even worse, but still we are
required to have these logs. Can you / anyone take a look onto it?

 

               Thanx, best regards

                              Jarda Stribrsky

 

On Tue, 4 Aug 2020 15:01:08 +0200 Markus Koschany <a...@debian.org> wrote: 

> Hello Andreas,

>

> thanks for your patience. I believe I have found the underlying problem.

> It is a parsing issue in src/adaptation/icap/ModXact.cc and HttpMsg.cc. 

>

> 2020/07/28 09:55:14.614 kid1| 58,3| HttpMsg.cc(184) parse:

> HttpMsg::parse: cannot parse isolated headers in 'OPTIONS

> icap://127.0.0.1:1344/virus_scan ICAP/1.0

>

> To fix CVE-2019-12523 the urlParse function had to be updated to use the

> new SBuf API for better access checks. However at one point in time

> upstream did no longer used this function to parse icap headers and

> simply copied an already known url. I have attached the

> CVE-2019-12523.patch. You can just replace it with the old one. If

> everything works as expected I will upload this change as +deb9u3 shortly.


>

> Regards,

>

> Markus 

Reply via email to