zgrab2/schemas/siemens.py
2018-03-22 17:06:44 -04:00

33 lines
1006 B
Python

# zschema sub-schema for zgrab2's siemens module
# Registers zgrab2-siemens globally, and siemens with the main zgrab2 schema.
from zschema.leaves import *
from zschema.compounds import *
import zschema.registry
import schemas.zcrypto as zcrypto
import schemas.zgrab2 as zgrab2
siemens_scan_response = SubRecord({
'result': SubRecord({
'is_s7': Boolean(),
'system': String(),
'module': String(),
'plant_id': String(),
'copyright': String(),
'serial_number': String(),
'module_type': String(),
'reserved_for_os': String(),
'memory_serial_number': String(),
'cpu_profile': String(),
'oem_id': String(),
'location': String(),
'module_id': String(),
'hardware': String(),
'firmware': String(),
})
}, extends=zgrab2.base_scan_response)
zschema.registry.register_schema('zgrab2-siemens', siemens_scan_response)
zgrab2.register_scan_response_type('siemens', siemens_scan_response)