Skip to content

Commit

Permalink
tests for Fli OOB reads
Browse files Browse the repository at this point in the history
  • Loading branch information
wiredfool authored and hugovk committed Apr 1, 2020
1 parent 8d4f3c0 commit 19ff42b
Show file tree
Hide file tree
Showing 48 changed files with 71 additions and 0 deletions.
61 changes: 61 additions & 0 deletions Tests/check_fli_oob.py
@@ -0,0 +1,61 @@
#!/usr/bin/env python

from PIL import Image

repro_ss2 = ('images/fli_oob/06r/06r00.fli',
'images/fli_oob/06r/others/06r01.fli',
'images/fli_oob/06r/others/06r02.fli',
'images/fli_oob/06r/others/06r03.fli',
'images/fli_oob/06r/others/06r04.fli'
)

repro_lc = ('images/fli_oob/05r/05r00.fli',
'images/fli_oob/05r/others/05r03.fli',
'images/fli_oob/05r/others/05r06.fli',
'images/fli_oob/05r/others/05r05.fli',
'images/fli_oob/05r/others/05r01.fli',
'images/fli_oob/05r/others/05r04.fli',
'images/fli_oob/05r/others/05r02.fli',
'images/fli_oob/05r/others/05r07.fli',
)


repro_advance = ('images/fli_oob/03r/03r00.fli',
'images/fli_oob/03r/others/03r01.fli',
'images/fli_oob/03r/others/03r09.fli',
'images/fli_oob/03r/others/03r11.fli',
'images/fli_oob/03r/others/03r05.fli',
'images/fli_oob/03r/others/03r10.fli',
'images/fli_oob/03r/others/03r06.fli',
'images/fli_oob/03r/others/03r08.fli',
'images/fli_oob/03r/others/03r03.fli',
'images/fli_oob/03r/others/03r07.fli',
'images/fli_oob/03r/others/03r02.fli',
'images/fli_oob/03r/others/03r04.fli',
)

repro_brun = ('images/fli_oob/04r/initial.fli',
'images/fli_oob/04r/others/04r02.fli',
'images/fli_oob/04r/others/04r05.fli',
'images/fli_oob/04r/others/04r04.fli',
'images/fli_oob/04r/others/04r03.fli',
'images/fli_oob/04r/others/04r01.fli',
'images/fli_oob/04r/04r00.fli',
)

repro_copy = ('images/fli_oob/02r/others/02r02.fli',
'images/fli_oob/02r/others/02r04.fli',
'images/fli_oob/02r/others/02r03.fli',
'images/fli_oob/02r/others/02r01.fli',
'images/fli_oob/02r/02r00.fli',
)


for path in repro_ss2 + repro_lc + repro_advance + repro_brun + repro_copy:
im = Image.open(path)
try:
im.load()
except Exception as msg:
print(msg)


Binary file added Tests/images/fli_oob/02r/02r00.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/02r/notes
@@ -0,0 +1 @@
Is this because a file-originating field is being interpreted as a *signed* int32, allowing it to provide negative values for 'advance'?
Binary file added Tests/images/fli_oob/02r/others/02r01.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/02r/others/02r02.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/02r/others/02r03.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/02r/others/02r04.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/02r/reproducing
@@ -0,0 +1 @@
Image.open(...).seek(212)
Binary file added Tests/images/fli_oob/03r/03r00.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/03r/notes
@@ -0,0 +1 @@
ridiculous bytes value passed to ImagingFliDecode
Binary file added Tests/images/fli_oob/03r/others/03r01.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r02.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r03.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r04.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r05.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r06.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r07.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r08.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r09.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r10.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/03r/others/03r11.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/03r/reproducing
@@ -0,0 +1 @@
im = Image.open(d); im.seek(0); im.getdata()
Binary file added Tests/images/fli_oob/04r/04r00.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/04r/initial.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/04r/notes
@@ -0,0 +1 @@
failure to check input buffer (`data`) boundaries in BRUN chunk
Binary file added Tests/images/fli_oob/04r/others/04r01.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/04r/others/04r02.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/04r/others/04r03.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/04r/others/04r04.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/04r/others/04r05.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/04r/reproducing
@@ -0,0 +1 @@
im = Image.open(d); im.seek(0); im.getdata()
Binary file added Tests/images/fli_oob/05r/05r00.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/05r/notes
@@ -0,0 +1 @@
failure to check input buffer (`data`) boundaries in LC chunk
Binary file added Tests/images/fli_oob/05r/others/05r01.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/05r/others/05r02.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/05r/others/05r03.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/05r/others/05r04.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/05r/others/05r05.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/05r/others/05r06.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/05r/others/05r07.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/05r/reproducing
@@ -0,0 +1 @@
im = Image.open(d); im.seek(0); im.getdata()
Binary file added Tests/images/fli_oob/06r/06r00.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/06r/notes
@@ -0,0 +1 @@
failure to check input buffer (`data`) boundaries in SS2 chunk
Binary file added Tests/images/fli_oob/06r/others/06r01.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/06r/others/06r02.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/06r/others/06r03.fli
Binary file not shown.
Binary file added Tests/images/fli_oob/06r/others/06r04.fli
Binary file not shown.
1 change: 1 addition & 0 deletions Tests/images/fli_oob/06r/reproducing
@@ -0,0 +1 @@
im = Image.open(d); im.seek(0); im.getdata()

0 comments on commit 19ff42b

Please sign in to comment.