Actions
Bug #8
closedMultiple integer underflows in dcmnet/libsrc/dulparse.cc
Status:
Closed
Priority:
High
Assignee:
-
Category:
-
Target version:
-
Start date:
Due date:
% Done:
100%
Estimated time:
Module:
dcmnet
Operating System:
Compiler:
Description
Siehe Mail von Uli Schlachter vom 01.10.09
dulparse.cc "glaubt" den Längenfeldern, die die Gegenseite sendet.
An vielen Stellen wird die "Rest-Länge" eines Objektes berechnet durch
z.B. //pduLength -= itemLength;//.
Dies kann für Integer underflows ausgenutzt werden (itemLength größer als pduLength), wodurch dcmnet dann versucht
weit über das Ende des PDUs zu lesen.
Beispielsweise kann man am Ende von dulconst.cc ''constructPresentationContext()'' folgende Zeile einfügen:
context->length = 3;
Alle SCUs und SCPs mit denen man nun presentation contexts aushandelt stürzen ab.
Actions