From 0b1741b9bfa2887c97731087a5f68d095023063b Mon Sep 17 00:00:00 2001 From: Recursing Date: Tue, 7 Jan 2020 21:59:13 +0100 Subject: [PATCH] Pack the /P (ermissions) entry from the /Encrypt dictionionary in the file trailer, as unsigned long (#352) Fixes #186 * Tread the permissions (the /P entry) as unsigned long, fix #186 * handle negative values for p * Extract function for resolving an twos-complement * Add test for issue #352 * Add line to CHANGELOG.md * Only ints can be converted to a uint using two's-complement method * Standardize import style; multiple imports from same module on one line Co-authored-by: Pieter Marsman --- CHANGELOG.md | 3 +- pdfminer/pdfdocument.py | 38 ++++++------------ pdfminer/pdftypes.py | 9 +++++ pdfminer/utils.py | 2 +- .../issue-00352-hash-twos-complement.pdf | Bin 0 -> 93761 bytes tests/test_tools_pdf2txt.py | 10 ++++- 6 files changed, 34 insertions(+), 28 deletions(-) create mode 100644 samples/contrib/issue-00352-hash-twos-complement.pdf diff --git a/CHANGELOG.md b/CHANGELOG.md index a81cdd2..dcd2350 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). ## [Unreleased] -Nothing here +### Fixed +- Interpret two's complement integer as unsigned integer ([#352](https://github.com/pdfminer/pdfminer.six/pull/352)) ## [20200104] - 2019-01-04 diff --git a/pdfminer/pdfdocument.py b/pdfminer/pdfdocument.py index 3031a38..d8be5c6 100644 --- a/pdfminer/pdfdocument.py +++ b/pdfminer/pdfdocument.py @@ -1,34 +1,21 @@ +import hashlib as md5 +import logging import re import struct -import logging -import hashlib as md5 + try: - from Crypto.Cipher import ARC4 - from Crypto.Cipher import AES + from Crypto.Cipher import ARC4, AES from Crypto.Hash import SHA256 except ImportError: AES = SHA256 = None from . import arcfour as ARC4 -from .psparser import PSEOF -from .psparser import literal_name -from .psparser import LIT -from .psparser import KWD +from .psparser import PSEOF, literal_name, LIT, KWD from . import settings -from .pdftypes import PDFException -from .pdftypes import PDFTypeError -from .pdftypes import PDFStream -from .pdftypes import PDFObjectNotFound -from .pdftypes import decipher_all -from .pdftypes import int_value -from .pdftypes import str_value -from .pdftypes import list_value -from .pdftypes import dict_value -from .pdftypes import stream_value -from .pdfparser import PDFSyntaxError -from .pdfparser import PDFStreamParser -from .utils import choplist -from .utils import nunpack -from .utils import decode_text +from .pdftypes import PDFException, uint_value, PDFTypeError, PDFStream, \ + PDFObjectNotFound, decipher_all, int_value, str_value, list_value, \ + dict_value, stream_value +from .pdfparser import PDFSyntaxError, PDFStreamParser +from .utils import choplist, nunpack, decode_text log = logging.getLogger(__name__) @@ -307,7 +294,7 @@ class PDFStandardSecurityHandler: def init_params(self): self.v = int_value(self.param.get('V', 0)) self.r = int_value(self.param['R']) - self.p = int_value(self.param['P']) + self.p = uint_value(self.param['P'], 32) self.o = str_value(self.param['O']) self.u = str_value(self.param['U']) self.length = int_value(self.param.get('Length', 40)) @@ -348,7 +335,8 @@ class PDFStandardSecurityHandler: password = (password + self.PASSWORD_PADDING)[:32] # 1 hash = md5.md5(password) # 2 hash.update(self.o) # 3 - hash.update(struct.pack('= 4: if not self.encrypt_metadata: diff --git a/pdfminer/pdftypes.py b/pdfminer/pdftypes.py index f1252b1..14c729b 100644 --- a/pdfminer/pdftypes.py +++ b/pdfminer/pdftypes.py @@ -139,6 +139,15 @@ def num_value(x): return x +def uint_value(x, n_bits): + """Resolve number and interpret it as a two's-complement unsigned number""" + x = int_value(x) + if x > 0: + return x + else: + return x + 2**n_bits + + def str_value(x): x = resolve1(x) if not isinstance(x, bytes): diff --git a/pdfminer/utils.py b/pdfminer/utils.py index fa4fc52..feaa8a3 100644 --- a/pdfminer/utils.py +++ b/pdfminer/utils.py @@ -124,7 +124,7 @@ def apply_matrix_norm(m, v): # Utility functions def isnumber(x): - return isinstance(x, ((int,), float)) + return isinstance(x, (int, float)) def uniq(objs): diff --git a/samples/contrib/issue-00352-hash-twos-complement.pdf b/samples/contrib/issue-00352-hash-twos-complement.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d6fb340351a1d1c8006197f4f157ca329cec4a57 GIT binary patch literal 93761 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 BFU|k} literal 0 HcmV?d00001 diff --git a/tests/test_tools_pdf2txt.py b/tests/test_tools_pdf2txt.py index d192f80..30bc3c8 100644 --- a/tests/test_tools_pdf2txt.py +++ b/tests/test_tools_pdf2txt.py @@ -35,7 +35,8 @@ class TestDumpPDF(): def test_nonfree_175(self): """Regression test for: - https://github.com/pdfminer/pdfminer.six/issues/65""" + https://github.com/pdfminer/pdfminer.six/issues/65 + """ run('nonfree/175.pdf') def test_nonfree_dmca(self): @@ -63,6 +64,13 @@ class TestDumpPDF(): """Regression test for # https://github.com/euske/pdfminer/issues/96""" run('scancode/patchelf.pdf') + def test_contrib_hash_two_complement(self): + """Check that unsigned integer is added correctly to encryption hash. + + See https://github.com/pdfminer/pdfminer.six/issues/186 + """ + run('contrib/issue-00352-hash-twos-complement.pdf') + class TestDumpImages: