Dans le cadre d'un pré-audit ISO27k, j'ai fais en qq minutes (WAPT Power !!) un "ptipackagealacon" qui audit les péripheriques USB de type storage qui ont été branché sur les postes Windows.

Je vous partage ici ce package:

Dans le control, on set l'audit_schedule à la valeur désirée (ici 12h)

Le setup.py:

# -*- coding: utf-8 -*-
from setuphelpers import *
def install():
    pass

def audit():
    try:
        usb = run_powershell(r'Get-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Enum\USBSTOR\*\* | Select FriendlyName,PSChildName')
        print('%s' % usb)
    except:
        print('No USB Storage Found')
    return "OK"

if __name__ == '__main__':
    audit()

def update_package():
    pass



Le rapport qui va bien:

select hosts.computer_name, hosts.serialnr, hosts.last_logged_on_user,

hostpackagesstatus.last_audit_status, hostpackagesstatus.last_audit_on, hostpackagesstatus.last_audit_output

from hosts

LEFT JOIN hostpackagesstatus on hostpackagesstatus.host_id = hosts.uuid and hostpackagesstatus.package = 'ywh-audit-usbstorage'

where hosts.platform = 'Windows'


Ce qui nous sort des infos du genre:


Auditing ywh-audit-usbstorage

{'FriendlyName': 'Kingston DataTraveler 3.0 USB Device', 'PSChildName': 'E0D55EA5XXXXXXXXXXXX71&0'}


Le PSChildName étant le serial du peripherique USB ;)

Bon weekend !