[File] Python file misdetection

Steve Grubb sgrubb at redhat.com
Wed Nov 30 21:40:03 UTC 2022


Hello,

On Wednesday, November 30, 2022 3:30:38 PM EST Christos Zoulas wrote:
> > On Nov 29, 2022, at 5:37 PM, Steve Grubb <sgrubb at redhat.com> wrote:
> > I run across a case where python files get misdetected when an import
> > statement is commented out. For example:
> > 
> > #!/bin/sh
> > echo DEFANGED.1
> > exit
> > #!/usr/bin/python3
> > import os
> > os.system("ls")
> > 
> > file --mime-type example.py
> > example.py: text/x-script.python
> > 
> > #!/usr/bin/python3
> > #import os
> > os.system("ls")
> > 
> > file --mime-type example.py
> > example.py: text/x-objective-c
> > 
> > It matches Objective-C with a strength of 25, where #!\040/usr/bin/python
> > has a strength of 15. It would seem very plausible for someone to
> > occassionally comment out an import statement. I'm wondering why an
> > Objective-C construct would be stronger than a python shebang (which
> > should be conclusive)? Not sure which of the two to adjust.
> 
> What version of file is that? I can't reproduce it.

I can reproduce this with 5.39, 5.41, and 5.42. All of them on Fedora 36 or 
rawhide. It appears to be finding the #import statement and matching that with 
more weight than the shebang.

-Steve




More information about the File mailing list