-
Notifications
You must be signed in to change notification settings - Fork 20
Open
Description
The code uses d.Bsize without checking if it's within the range of the slice d.NameBts. A specially crafted ole2 file (Excel sheet) can crash the application by setting a a high number for d.Bsize.
Lines 32 to 35 in d694296
| func (d *File) Name() string { | |
| runes := utf16.Decode(d.NameBts[:d.Bsize/2-1]) | |
| return string(runes) | |
| } |
The fix is to check the ranges first.
Metadata
Metadata
Assignees
Labels
No labels