Denne artikel indeholder en liste over de API'er til enhedslagerstyring, der understøttes for Defender for IoT OT-sensorer.
Brug denne API til at anmode om en liste over alle enhedsforbindelser.
URI: /api/v1/devices/connections
FÅ
Forespørgselsparametre
Definer en af følgende forespørgselsparametre for at filtrere de returnerede resultater. Hvis du ikke angiver forespørgselsparametre, returneres alle enhedsforbindelser.
| Navn |
Beskrivelse |
Eksempel |
Obligatorisk/valgfri |
|
discoveredBefore |
Numeriske. Filterresultater, der blev fundet før et givet tidspunkt, hvor den angivne tid er defineret i millisekunder fra Epoch-tid og i UTC-tidszone. |
/api/v1/devices/2/connections?discoveredBefore=<epoch> |
Valgfrit |
|
discoveredAfter |
Numeriske. Filterresultater, der blev registreret efter et givet tidspunkt, hvor den angivne tid er defineret i millisekunder fra Epoch-tid og i UTC-tidszone. |
/api/v1/devices/2/connections?discoveredAfter=<epoch> |
Valgfrit |
|
lastActiveInMinutes |
Numeriske. Filtrer resultaterne efter en given tidsramme, hvor forbindelser var aktive. Defineret bagud i minutter fra det aktuelle klokkeslæt. |
/api/v1/devices/2/connections?lastActiveInMinutes=20 |
Valgfrit |
Svartype: JSON
Matrix af JSON-objekter, der repræsenterer enhedsforbindelser, eller følgende fejlmeddelelse:
| Meddelelse |
Beskrivelse |
|
Fejl – fejl |
Handlingen mislykkedes |
Felter for vellykket svar
| Navn |
Type |
Kan være null/Ikke null |
Liste over værdier |
|
firstDeviceId |
Numeriske |
Kan ikke være null |
- |
|
secondDeviceId |
Numeriske |
Kan ikke være null |
- |
|
lastSeen |
Numeriske |
Kan ikke være null |
Epoch (UTC) |
|
Opdaget |
Numeriske |
Kan ikke være null |
Epoch (UTC) |
|
Porte |
Talmatrix |
Kan være null |
- |
|
Protokoller |
JSON-matrix |
Kan være null |
Protokolfelt |
Protokolfelter
| Navn |
Type |
Kan være null/Ikke null |
|
Navn |
String |
Kan ikke være null |
|
Kommandoer |
Strengmatrix |
Kan være null |
Svareksempel
[
{
"firstDeviceId": 171,
"secondDeviceId": 22,
"lastSeen": 1511281457933,
"discovered": 1511872830000,
"ports": [
502
],
"protocols": [
{
name: "modbus",
commands: [
"Read Coils"
]
},
{
name: "ams",
commands: [
"AMS Write"
]
},
{
name: "http",
commands: [
]
}
]
},
{
"firstDeviceId": 171,
"secondDeviceId": 23,
"lastSeen": 1511281457933,
"discovered": 1511872830000,
"ports": [
502
],
"protocols": [
{
name: "s7comm",
commands: [
"Download block",
"Upload"
]
}
]
}
]
Type: GET
API'er:
curl -k -H "Authorization: <AUTH_TOKEN>" https://<IP_ADDRESS>/api/v1/devices/connections
Eksempler:
curl -k -H "Authorization: 1234b734a9244d54ab8d40aedddcabcd" https://127.0.0.1/api/v1/devices/connections
Brug denne API til at anmode om en liste over alle forbindelser pr. enhed.
URI: /api/v1/devices/<deviceID>/connections
FÅ
Stiparameter
| Navn |
Beskrivelse |
Eksempel |
Obligatorisk/valgfri |
|
Deviceid |
Hent forbindelser for den angivne enhed. |
/api/v1/devices/<deviceId>/connections |
Påkrævet |
Forespørgselsparametre
| Navn |
Beskrivelse |
Eksempel |
Obligatorisk/valgfri |
|
discoveredBefore |
Numeriske. Filterresultater, der blev fundet før et givet tidspunkt, hvor den angivne tid er defineret i millisekunder fra Epoch-tid og i UTC-tidszone. |
/api/v1/devices/2/connections?discoveredBefore=<epoch> |
Valgfrit |
|
discoveredAfter |
Numeriske. Filterresultater, der blev registreret efter et givet tidspunkt, hvor den angivne tid er defineret i millisekunder fra Epoch-tid og i UTC-tidszone. |
/api/v1/devices/2/connections?discoveredAfter=<epoch> |
Valgfrit |
|
lastActiveInMinutes |
Numeriske. Filtrer resultaterne efter en given tidsramme, hvor forbindelser var aktive. Defineret bagud i minutter fra det aktuelle klokkeslæt. |
/api/v1/devices/2/connections?lastActiveInMinutes=20 |
Valgfrit |
Svartype: JSON
Matrix af JSON-objekter, der repræsenterer enhedsforbindelser, eller følgende fejlmeddelelse:
| Meddelelse |
Beskrivelse |
|
Fejl – fejl |
Handlingen mislykkedes |
Felter for vellykket svar
| Navn |
Type |
Kan være null/Ikke null |
Liste over værdier |
|
firstDeviceId |
Numeriske |
Kan ikke være null |
- |
|
secondDeviceId |
Numeriske |
Kan ikke være null |
- |
|
lastSeen |
Numeriske |
Kan ikke være null |
Epoch (UTC) |
|
Opdaget |
Numeriske |
Kan ikke være null |
Epoch (UTC) |
|
Porte |
Talmatrix |
Kan være null |
- |
|
Protokoller |
JSON-matrix |
Kan være null |
Protokolfelt |
Protokolfelter
| Navn |
Type |
Kan være null/Ikke null |
|
Navn |
String |
Kan ikke være null |
|
Kommandoer |
Strengmatrix |
Kan være null |
Svareksempel
[
{
"firstDeviceId": 171,
"secondDeviceId": 22,
"lastSeen": 1511281457933,
"discovered": 1511872830000,
"ports": [
502
],
"protocols": [
{
name: "modbus",
commands: [
"Read Coils"
]
},
{
name: "ams",
commands: [
"AMS Write"
]
},
{
name: "http",
commands: [
]
}
]
},
{
"firstDeviceId": 171,
"secondDeviceId": 23,
"lastSeen": 1511281457933,
"discovered": 1511872830000,
"ports": [
502
],
"protocols": [
{
name: "s7comm",
commands: [
"Download block",
"Upload"
]
}
]
}
]
Type: GET
API'er:
curl -k -H "Authorization: <AUTH_TOKEN>" 'https://<IP_ADDRESS>/api/v1/devices/<deviceId>/connections?lastActiveInMinutes=&discoveredBefore=&discoveredAfter=
Eksempler:
Med de angivne forespørgselsparametre:
curl -k -H "Authorization: 1234b734a9244d54ab8d40aedddcabcd" 'https://127.0.0.1/api/v1/devices/2/connections?lastActiveInMinutes=20&discoveredBefore=1594550986000&discoveredAfter=1594550986000
Brug denne API til at anmode om en liste over alle kendte CVEs, der er registreret på enheder i netværket, sorteret efter faldende CVE-score.
URI: /api/v1/devices/cves
FÅ
Eksempel: /api/v1/devices/cves
Definer en af følgende forespørgselsparametre for at filtrere de returnerede resultater.
| Navn |
Beskrivelse |
Eksempel |
Obligatorisk/valgfri |
|
Top |
Numeriske. Bestem, hvor mange TOP-scorede CVEs der skal hentes for hver enheds IP-adresse. |
/api/v1/devices/cves?top=50
/api/v1/devices/<ipAddress>/cves?top=50 |
Valgfri. Standard = 100 |
Type: JSON
JSON-matrix af enheds-CVE-objekter eller følgende fejlmeddelelse:
| Meddelelse |
Beskrivelse |
|
Fejl – fejl |
Handlingen mislykkedes |
Felter for vellykket svar
| Navn |
Type |
Kan være null/Ikke null |
Liste over værdier |
|
cveId |
String |
Kan ikke være null |
Et vedtaget branchestandard-id for det angivne CVE. |
|
Ipadresse |
String |
Kan ikke være null |
IP-adresser |
|
Score |
String |
Kan ikke være null |
En CVE-score mellem 0,0-10,0 |
|
attackVector |
String |
Kan ikke være null |
Network, Adjacent Network, Localeller Physical |
|
Beskrivelse |
String |
Kan ikke være null |
- |
Svareksempel
[
{
"cveId": "CVE-2007-0099",
"score": "9.3",
"ipAddress": "10.35.1.51",
"attackVector": "NETWORK",
"description": "Race condition in the msxml3 module in Microsoft XML Core
Services 3.0, as used in Internet Explorer 6 and other
applications, allows remote attackers to execute arbitrary
code or cause a denial of service (application crash) via many
nested tags in an XML document in an IFRAME, when synchronous
document rendering is frequently disrupted with asynchronous
events, as demonstrated using a JavaScript timer, which can
trigger NULL pointer dereferences or memory corruption, aka
\"MSXML Memory Corruption Vulnerability.\""
},
{
"cveId": "CVE-2009-1547",
"score": "9.3",
"ipAddress": "10.35.1.51",
"attackVector": "NETWORK",
"description": "Unspecified vulnerability in Microsoft Internet Explorer 5.01
SP4, 6, 6 SP1, and 7 allows remote attackers to execute
arbitrary code via a crafted data stream header that triggers
memory corruption, aka \"Data Stream Header Corruption
Vulnerability.\""
}
]
Type: GET
API'er:
curl -k -H "Authorization: <AUTH_TOKEN>" https://<IP_ADDRESS>/api/v1/devices/cves
Eksempler:
curl -k -H "Authorization: 1234b734a9244d54ab8d40aedddcabcd" https://127.0.0.1/api/v1/devices/cves
Brug denne API til at anmode om en liste over alle kendte CVEs, der er registreret på enheder i netværket, for en bestemt IP-adresse.
URI: /api/v1/devices/cves
FÅ
Eksempel: /api/v1/devices/cves
Stiparameter
| Navn |
Beskrivelse |
Eksempel |
Obligatorisk/valgfri |
|
Ipadresse |
Hent CVEs for den angivne IP-adresse. |
/api/v1/devices/<ipAddress>/cves |
Påkrævet |
Definer følgende forespørgselsparameter for at filtrere de returnerede resultater.
| Navn |
Beskrivelse |
Eksempel |
Obligatorisk/valgfri |
|
Top |
Numeriske. Bestem, hvor mange TOP-scorede CVEs der skal hentes for hver enheds IP-adresse. |
/api/v1/devices/cves?top=50
/api/v1/devices/<ipAddress>/cves?top=50 |
Valgfri. Standard = 100 |
Type: JSON
JSON-matrix af enheds-CVE-objekter eller følgende fejlmeddelelse:
| Meddelelse |
Beskrivelse |
|
Fejl – fejl |
Handlingen mislykkedes |
Felter for vellykket svar
| Navn |
Type |
Kan være null/Ikke null |
Liste over værdier |
|
cveId |
String |
Kan ikke være null |
Et vedtaget branchestandard-id for det angivne CVE. |
|
Ipadresse |
String |
Kan ikke være null |
IP-adresser |
|
Score |
String |
Kan ikke være null |
En CVE-score mellem 0,0-10,0 |
|
attackVector |
String |
Kan ikke være null |
Network, Adjacent Network, Localeller Physical |
|
Beskrivelse |
String |
Kan ikke være null |
- |
Svareksempel
[
{
"cveId": "CVE-2007-0099",
"score": "9.3",
"ipAddress": "10.35.1.51",
"attackVector": "NETWORK",
"description": "Race condition in the msxml3 module in Microsoft XML Core
Services 3.0, as used in Internet Explorer 6 and other
applications, allows remote attackers to execute arbitrary
code or cause a denial of service (application crash) via many
nested tags in an XML document in an IFRAME, when synchronous
document rendering is frequently disrupted with asynchronous
events, as demonstrated using a JavaScript timer, which can
trigger NULL pointer dereferences or memory corruption, aka
\"MSXML Memory Corruption Vulnerability.\""
},
{
"cveId": "CVE-2009-1547",
"score": "9.3",
"ipAddress": "10.35.1.51",
"attackVector": "NETWORK",
"description": "Unspecified vulnerability in Microsoft Internet Explorer 5.01
SP4, 6, 6 SP1, and 7 allows remote attackers to execute
arbitrary code via a crafted data stream header that triggers
memory corruption, aka \"Data Stream Header Corruption
Vulnerability.\""
}
]
Type: GET
API'er:
curl -k -H "Authorization: <AUTH_TOKEN>" https://<IP_ADDRESS>/api/v1/devices/<deviceIpAddress>/cves?top=
Eksempler:
Med de angivne forespørgselsparametre:
curl -k -H "Authorization: 1234b734a9244d54ab8d40aedddcabcd" https://127.0.0.1/api/v1/devices/10.10.10.15/cves?top=50
Brug denne API til at anmode om en liste over alle enheder, der er registreret af denne sensor.
URI: api/v1/devices/
FÅ
Forespørgselsparameter
Definer følgende forespørgselsparameter for at filtrere de returnerede resultater. Hvis du ikke angiver forespørgselsparametre, returneres alle enhedsforbindelser.
| Navn |
Beskrivelse |
Eksempel |
Obligatorisk/valgfri |
|
Autoriseret |
Boolesk:
-
true: Filtrer kun efter data på godkendte enheder.
-
false: Filtrer kun efter data på uautoriserede enheder. |
/api/v1/devices/ |
Valgfrit |
Svartype: JSON
Matrix af JSON-objekter, der repræsenterer enhedsobjekter, eller følgende fejlmeddelelse:
| Meddelelse |
Beskrivelse |
|
Fejl – fejl |
Handlingen mislykkedes |
Felter for vellykket svar
| Navn |
Type |
Kan være null/Ikke null |
Liste over værdier |
|
id |
Numeriske. Definerer enheds-id'et. |
Kan ikke være null |
- |
|
ipAddresses |
JSON-matrix af strenge. |
Kan være null |
- |
|
Navn |
Streng. Definerer enhedsnavnet. |
Kan ikke være null |
- |
|
Kreditor |
Streng. Definerer enhedens leverandør. |
Kan være null |
- |
|
operatingSystem |
Enum. Definerer enhedens operativsystem. |
Kan være null |
Du kan få flere oplysninger under Understøttede operatingSystem-værdier. |
|
macAddresses |
JSON-matrix af strenge. |
Kan være null |
- |
|
Type |
Streng. Definerer enhedstypen. |
Kan ikke være null |
Kan være Unknown. Du kan få flere oplysninger under Understøttede typeværdier. |
|
engineeringStation |
Boolesk. Definerer, om enheden er defineret som en teknisk station eller ej. |
Kan ikke være null |
-
true: Enheden er en teknisk station
-
false: Enheden er ikke en teknisk station. |
|
Autoriseret |
Boolesk. Definerer, om enheden er defineret som en teknisk station eller ej. |
Kan ikke være null |
-
true: Enheden er en teknisk station
-
false: Enheden er ikke en teknisk station |
|
Scanner |
Boolesk. Definerer, om enheden er godkendt eller ej. |
Kan ikke være null |
-
true: Enheden er godkendt
-
false: Enheden er ikke godkendt |
|
Protokoller |
Objekt, der indeholder oplysninger om enhedens protokol. |
Kan være null |
Du kan få flere oplysninger under Microsoft Defender til IoT - understøttede protokoller af typen IoT, OT, ICS og SCADA. |
|
Firmware |
JSON-matrix for et firmware objekt, der trodser enhedens firmware. |
Kan ikke være null |
Du kan få flere oplysninger under Understøttede firmwarefelter. |
|
hasDynamicAddress |
Boolesk. Definerer, om enheden har en dynamisk adresse eller ej. |
Kan ikke være null |
-
true: Enheden har en dynamisk adresse
-
false: Enheden har ikke en dynamisk adresse |
Understøttede operatingSystem værdier
I dette afsnit vises de understøttede værdier for operatingSystem-svarfeltet .
Windows 10
Windows 10 32
Windows 10 64
Windows 2000
Windows 7
Windows 7 32
Windows 7 64
Windows 8
Windows 8 32
Windows 8 64
Windows 8.1
Windows 8.1 32
Windows 8.1 64
Windows NT
Windows Server 2003
Windows Server 2003 R2
Windows Server 2008
Windows Server 2008 32
Windows Server 2008 64
Windows Server 2008 R2
Windows Server 2012
Windows Server 2012 R2
Windows Server 2016
Windows Vista
Windows Vista 32
Windows Vista 64
Windows XP
Mac OS
Mac OS X
Linux
Windows Server 2019
HP UX
Windows 11
Windows 11 32
Windows 11 64
Understøttede type værdier
I dette afsnit vises de understøttede værdier for svarfeltet af typen .
Engineering Station
PLC
Historian
HMI
Domain Controller
DB Server
Wireless Access Point
Router
Switch
Workstation
Server
IP Camera
Printer
Multicast/Broadcast
Internet
Firewall
Terminal Station
VPN Gateway
Group
IED
DCS Controller
RTU
NTP Server
Storage
Industrial Packaging System
Industrial Scale
Industrial Robot
Slot
Punch Clock
ATM
Smart TV
Game console
DVR
Door Control Panel
HVAC
Thermostat
Fire Alarm
Smart Light
Smart Switch
Fire Detector
IP Telephone
Alarm System
Alarm Siren
Smart Phone
Tablet
Wifi Pineapple
Motion Detector
Elevator
Humidity Sensor
Physical Location
Backup Server
Meter
Barcode Scanner
Uninterruptible Power Supply
Variable Frequency Drive
Robot Controller
Servo Drive
Pneumatic Device
Marquee
People Counter System
Intercom
Turnstile
I/O Adapter
Protocol Converter
KVM
Web Guiding System
Turbine
External Management
Embedded Device
Unknown
Understøttede felter for objektet og protokolværdierne protocolsname
I dette afsnit vises de understøttede felter for protokollerobjektetprotocols i svarfeltet.
| Navn |
Type |
Kan være null/Ikke null |
Liste over værdier |
|
id |
Numeriske. Definerer protokollens interne id. |
Kan ikke være null |
- |
|
Navn |
Streng. Definerer enhedsnavnet. |
Kan ikke være null |
Du kan få flere oplysninger nedenfor. |
|
ipAddresses |
JSON-matrix af strenge af protokol-IP-adresser. |
Kan ikke være null |
- |
Følgende værdier understøttes som protokolnavne , der er indbyggede:
Unknown
DNP3
MODBUS
C37.118
SSH
HTTP
SYSLOG
GENERIC
ICMP
DNS
GOOSE
MMS
MALFORMED
IEC-60870
OPC UA
Siemens S7
ARP
Sampled Values
EtherNet/IP
Siemens S7 Plus
Motorola MDLC
Netbios Name Service
Netbios Datagram Service
Lightweight Access Point
CAPWAP
SNMP
DTLS
TNS
Database
SRTP
RPC
OPC
DF-1
DH-485
TDS
SMB
Suitelink
ControlNet
FTP
CDP
Profinet DCP
Profinet Real-Time
LLDP
Telnet
DeltaV
BACNet
AMS
TwinCAT
Ovation ADMD
Ovation SSRPC
Ovation DPUSTAT
Port Map
STP
Telvent OASyS Tags
Mitsubishi MELSEC
Honeywell Control Data Access
ARP
Yokogawa HIS Equalize
Emerson OpenBSI
Siemens SICAM
Omron FINS
Toshiba Computer Link
Foxboro I/A
Yokogawa VNet/IP
Emerson ROC
ABB Totalflow
Siemens Process Historian Discovery
Siemens WinCC Agent
LonTalk
Common ASCII Message
CodeSys
SAIA S-Bus
MDNS
Bently Nevada
Understøttede firmwarefelter
I dette afsnit vises de understøttede felter for firmwareobjektet i firmware svarfeltet.
| Navn |
Type |
Kan være null/Ikke null |
Liste over værdier |
|
Adresse |
Streng. Definerer firmwarens IP-adresse. |
Kan ikke være null |
- |
|
moduleAddress |
Streng. Definerer firmwarens moduladresse. |
Kan ikke være null. |
- |
|
Serie |
Streng. Definerer firmwarens serienummer. |
Kan være null |
- |
|
Model |
Streng. Definerer firmwaremodellen. |
Kan være null |
- |
|
firmwareVersion |
Streng. Definerer firmwareversionen. |
Kan være null |
- |
|
additionalData |
Streng. Definerer yderligere data for firmwaren. |
Kan være null |
- |
|
Rack |
Streng. Definerer firmwarereolen. |
Kan være null |
- |
|
Slot |
Streng. Definerer firmwarens slot. |
Kan være null |
- |
Type: GET
curl -k -H "Authorization: <AUTH_TOKEN>" 'https://<IP_ADDRESS>/api/v1/devices/'
Næste trin
Du kan få flere oplysninger i referenceoversigten for Defender for IoT API.