Skip to content
Please update to the latest release 0.77.2 to address Multiple CVEs.
Windows.Binary.Exports

Windows.Binary.Exports

This artifact can be used to extract all binary exports to research potential lolbins. Selecting the AllBinaryInfo tickbox will return complete Binary information.


name: Windows.Binary.Exports
author: Matt Green - @mgreen27
description: |
   This artifact can be used to extract all binary exports to research
   potential lolbins.  Selecting the AllBinaryInfo tickbox will return
   complete Binary information.

type: CLIENT

parameters:
  - name: TargetGlob
    default: C:/ProgramData/*
    description: Glob to target
  - name: AllBinaryInfo
    type: bool
    description: Select to extract all binary info

sources:
  - query: |
      Let Targets = SELECT * FROM glob(globs=TargetGlob)
        WHERE NOT IsDir

      LET all_binary_info = SELECT
            dict(OSPath=OSPath,Name=Name,Size=Size,IsLink=IsLink) as FileDetails,
            dict(Mtime=Mtime,Atime=Atime,Ctime=Ctime,Btime=Btime) as SI,
            parse_pe(file=OSPath) as BinaryInfo,
            authenticode(filename=OSPath) as Authenticode,
            hash(path=OSPath) as Hash
          FROM Targets
          WHERE BinaryInfo

      LET binary_exports = SELECT
            dict(OSPath=OSPath,Name=Name,Size=Size,IsLink=IsLink) as FileDetails,
            parse_pe(file=OSPath).Exports as Exports
          FROM Targets
          WHERE Exports

      SELECT * FROM if(condition=AllBinaryInfo,
            then=all_binary_info,
            else=binary_exports)