[Bugzilla user: smn@nebelhauch.de]
[Bugzilla date: 2020-07-17T21:53:59+00:00]
Hallo,
Orthanc, namely libpython according to the trace, segfaults if a REST callback handler registered within the python plugin receives non-UTF8-encoded request parameters.
This concerns for example ISO-8859-1 encoded German Umlauts (Ä, Ö, Ü, ...) in GET-query parameters (ex.: http://orthanc-host/worklist/add?lastname=Müller&firstname=Cäcilia).
The segfault occurs before the request callback handler is invoked (a log message placed as first instruction in callback handler is not printed before the segfault occurs).
Encoding to UTF-8 solves the problem.
From my point of view it's a security or stability issue nonetheless, as everyone who may call the REST API can pass any bytes she wants as Query parameters paying no attention to the correct encoding and a segfault effectively termiantes the complete Orthanc service at the moment as there doesn't seem to be any sandboxing. |