Closed
Bug 505626
Opened 17 years ago
Closed 3 years ago
Check that transform_fn is valid before executing it
Categories
(Core :: Graphics: Color Management, defect)
Tracking
()
RESOLVED
INVALID
People
(Reporter: jrmuizel, Unassigned)
Details
(Keywords: good-first-bug, sec-want, Whiteboard: [sg:want][third-party-lib-audit])
qcms uses a single indirect function call. I would guess that this could be a likely exploit vector so it would be nice if we could check that the address pointed to by transform_fn is something expected instead of an exploit. Unfortunately, I don't really have any good ideas about how to implement this.
Comment 1•17 years ago
|
||
Do you know at compile-time what the possible functions are? Got an MXR link so interested people can see what callspot you mean?
| Reporter | ||
Comment 2•17 years ago
|
||
(In reply to comment #1)
> Do you know at compile-time what the possible functions are? Got an MXR link so
> interested people can see what callspot you mean?
Yes, the possible functions are known at compile time. They are currently the following:
qcms_transform_data_gray_out_precache;
qcms_transform_data_graya_out_precache;
qcms_transform_data_gray_out_lut;
qcms_transform_data_graya_out_lut;
qcms_transform_data_rgb_out_lut_sse;
qcms_transform_data_rgba_out_lut_sse;
qcms_transform_data_rgb_out_lut_precache;
qcms_transform_data_rgba_out_lut_precache;
qcms_transform_data_rgb_out_lut;
qcms_transform_data_rgba_out_lut;
The callspot is here:
http://mxr.mozilla.org/mozilla-central/source/gfx/qcms/transform.c#1644
Comment 3•17 years ago
|
||
You could make qcms_transform.transform_fn an enum instead of a function pointer and then switch on it... this also has the advantage of being very branch-predictable by processors, where calls through functions pointers aren't.
Updated•16 years ago
|
Whiteboard: [sg:want]
This doesn't seem to describe a serious vulnerability and a solution was proposed > 3 years ago. Is this still an issue, and if so, does it need to remain hidden?
No need for this to remain private (I checked with Jeff), doesn't describe an actual vulnerability. We should do this though, if it still makes sense.
Group: core-security
Updated•8 years ago
|
Assignee: jmuizelaar → nobody
Whiteboard: [sg:want] → [sg:want][third-party-lib-audit]
Updated•6 years ago
|
Keywords: good-first-bug
Updated•3 years ago
|
Severity: normal → S3
Should this bug be closed since this code/file doesn't exist anymore (converted to rust etc.). I was looking for a "good first bug" and came across this.
You need to log in
before you can comment on or make changes to this bug.
Description
•