GitPython versions up to 3.1.58 have an incomplete denylist for unsafe git revision options in the Repo.blame() and Repo.blame_incremental() methods. This allows an attacker to use the --contents or -S options to read arbitrary local files by causing their contents to be included in the blame output. The vulnerability arises because the denylist only blocks file-write options (--output/-o) but omits these file-read options, enabling arbitrary file read at the privileges of the host process.