Sophos Switch: apparaat- en clientgegevens opvragen met Live Discover
Met Live Discover vraagt u telemetrie op van Sophos Switches die in Sophos Fusion worden beheerd. De Data Lake-gegevens helpen u bijvoorbeeld bij het onderzoeken van apparaten die met een bepaalde switch verbonden waren. Ze vormen echter geen liveweergave van de huidige status van de switch.
Vereisten
U hebt ten minste één door Sophos Fusion beheerde Sophos Switch nodig en toegang tot de juiste tenant en tot Threat Analysis Center > Live Discover. Live Discover vereist een licentie voor Sophos EDR, XDR of MDR. Daarnaast vermeldt de documentatie geen specifiek Switch-licentiepakket of een bepaalde beheerdersrol. Als Live Discover, Switch of een bewerkingsfunctie ontbreekt, laat u daarom de licentietoewijzing, uw toegangsrechten en de beschikbaarheid van de functie in de betreffende tenant controleren.
Bepaal vooraf het onderzoeksdoel. Geschikte referentiepunten zijn bijvoorbeeld de switch-ID, apparaatnaam, het serienummer, MAC-adres van de client, de poort, VLAN en periode. U hebt Designer Mode alleen nodig wanneer u een query bewerkt of maakt.
Switchgegevens opvragen
Begin met een ingebouwde switchquery. Zo krijgt u eerst een vergelijkingsresultaat en hoeft u alleen naar de designer over te schakelen als de bestaande query uw vraag niet beantwoordt.
- Open in Sophos Fusion Threat Analysis Center > Live Discover > Switch.
- Selecteer een ingebouwde Data Lake-query voor Sophos Switch. Controleer het doel, de zichtbare definitie en de vereiste parameters.
- Stel, indien beschikbaar, onder Select a Time Period de onderzoeksperiode in en voer de query uit.
- Beoordeel de resultaten aan de hand van de switchidentiteit,
type_of_dataen de tijdvelden. Vergelijk een bekende switch of testclient met de gegevens in het switchbeheer. - Als de ingebouwde query volstaat, documenteert u de query, parameters, het tijdvenster en het resultaat. Schakel anders Designer Mode in en kies een van de volgende opties:
- Bestaande query aanpassen: selecteer de query onder Query en klik op Edit. Sla de oorspronkelijke definitie op voordat u deze wijzigt.
- Nieuwe query maken: klik onder Query op Create new query en selecteer Data Lake als Source.
- Open in het SQL-dialoogvenster rechtsboven Schema. De Schema Viewer wordt in een nieuw tabblad geopend. Selecteer NSG Cswitch > nsg_cswitch_data en controleer de beschikbare kolommen en gegevenstypen.
- Gebruik alleen tabellen, velden en waarden die in de huidige Schema Viewer of ingebouwde query worden weergegeven. Wijzig telkens slechts één samenhangend onderdeel, bijvoorbeeld de veldselectie of het filter voor een bekende switch.
- Voer de aangepaste query eerst uit met een nauw afgebakende, bekende switch of client. Vergelijk het resultaat met de ongewijzigde ingebouwde query en de bekende inventaris- of verbindingsgegevens.
Om de clients van een bepaalde switch te zoeken, identificeert u het doelapparaat eenduidig met device_id of het serienummer. Beoordeel daarna het MAC-adres van de client, device_port, client_vlan, de verbindingsstatus en de tijdvelden gezamenlijk. Deze afbakening voorkomt verwisselingen, maar bewijst nog niet dat de clientlijst volledig is; ook de periode en is_full_set moeten kloppen.
Tijdvenster kiezen
Select a Time Period is optioneel bij Data Lake-query’s. Zonder eigen selectie worden de afgelopen 7 dagen gebruikt. Eén query kan maximaal 30 dagen beslaan.
Voor langere onderzoeken voert u meerdere query’s met afzonderlijke tijdvensters uit. Voor 90 dagen noemt Sophos bijvoorbeeld 0–30, 31–60 en 61–90 dagen. Documenteer elk venster afzonderlijk en laat de switch, het gegevenstype en andere filters tijdens de vergelijking ongewijzigd.
Velden in het switchschema
Het schema omvat de switchidentiteit, verbonden clients en logboeken. type_of_data geeft het type verzonden gegevens aan, bijvoorbeeld client- of loggegevens. Daarom bevat niet elke rij tegelijkertijd alle client- en logvelden.
| Veld | Gedocumenteerde betekenis |
|---|---|
message_identifier | Unieke ID die door de opnamepipeline wordt gegenereerd |
ingest_date | Datum waarop de gegevens zijn opgenomen |
ingestion_timestamp | Opnametijd in epochseconden |
schema_version | Versie van het Data Lake-schema |
record_size | Grootte van de gegevens |
customer_id | Klant-ID |
type_of_data | Type gegevens dat in de stream wordt verzonden, bijvoorbeeld client- of loggegevens |
is_full_set | Geeft aan of de levering volledig of incrementeel is |
timestamp | Tijdstip waarop de gebeurtenis is gegenereerd |
device_id | Unieke ID van de switch |
device_name | Naam van de switch |
device_model | Model van de switch |
device_firmware | Firmwareversie van de switch |
device_serial_id | Serienummer van de switch |
client_mac | MAC-adres van het verbonden apparaat |
client_ip | IP-adres van het verbonden apparaat |
client_hostname | Hostnaam van het verbonden apparaat |
client_event_timestamp | Tijdstip waarop het apparaat verbinding maakte |
client_conn_status | Verbindingsstatus van het apparaat |
log_id | Log-ID |
log_subtype | Logsubtype |
log_component | Logcomponent |
log_message | Logbericht |
log_severity | Ernst van het logbericht |
device_ip | IP-adres van de switch |
device_port | Switchpoort waarmee de client is verbonden |
client_vlan | VLAN dat aan het verbonden apparaat is toegewezen |
direct_end_device | Geeft aan of het apparaat rechtstreeks met de switch is verbonden |
Status-, subtype- en ernstwaarden kunnen afhankelijk van de weergegeven gegevens variëren. Neem de exacte spelling en betekenis over uit het huidige schema en het queryresultaat.
Resultaten correct interpreteren
Een onbewerkte Data Lake-rij is in eerste instantie een queryresultaat. Uit type_of_data en de ingevulde velden blijkt of de rij client- of loggegevens bevat. Als de SQL-query meerdere records samenvoegt, is de resultaatrij een berekende samenvatting en geen afzonderlijke netwerkgebeurtenis. Pas de betekenis van timestamp daarom niet zonder controle toe op een aggregaat.
Identiteit en tenant
device_id is de unieke switch-ID. Vergelijk ook ten minste één ander referentiepunt, zoals device_serial_id, device_name, device_model of device_ip, met het doelapparaat. Namen en IP-adressen kunnen wijzigen of opnieuw worden gebruikt. customer_id koppelt de gegevens aan de tenant en is geen switch-, serie- of client-ID.
Gebeurtenis- en opnametijd
timestampgeeft het tijdstip aan waarop de gebeurtenis is gegenereerd.client_event_timestampgeeft het tijdstip aan waarop het apparaat verbinding maakte.ingestion_timestampgeeft de opnametijd in epochseconden aan.ingest_dateis de opnamedatum.
Een latere opname is niet automatisch een latere netwerkgebeurtenis. Controleer bij tijdreeksen ook de epochconversie en de tijdzone van de gebruikte queryomgeving.
Volledige en incrementele gegevens
is_full_set geeft aan of een levering volledig of incrementeel is. Behandel een incrementele gegevensset niet als een volledige clientinventaris. Ook een als volledig gemarkeerde levering garandeert op zichzelf niet dat elke verwachte client in de onderzochte periode voorkomt.
Clients en logboeken
device_port en client_vlan koppelen een client aan een poort en VLAN. Of de client rechtstreeks is aangesloten, blijkt alleen uit de waarde van direct_end_device, niet uit de aanwezigheid van het veld. Het IP-adres en de hostnaam kunnen ontbreken of wijzigen; gebruik voor de toewijzing ook client_mac en de tijdvelden. Een telemetrierecord is bovendien slechts een tijdgebonden waarneming en geen bewijs van de huidige status of een ononderbroken verbindingsgeschiedenis.
Bij loggegevens bieden log_id, log_subtype, log_component, log_message en log_severity de context. De ernst alleen bewijst noch de oorzaak, noch het effect van een netwerkprobleem.
Resultaat controleren
Beantwoord deze vragen voordat u het resultaat gebruikt:
- Horen
customer_iden de switchidentiteit bij de juiste tenant en het juiste doelapparaat? - Komen
type_of_dataen de daadwerkelijk ingevulde client- of logvelden overeen met de onderzoeksvraag? - Vallen de gebeurtenis-, client- en opnametijden binnen het verwachte venster en zijn ze afzonderlijk geïnterpreteerd?
- Is rekening gehouden met
is_full_setals u een uitspraak doet over volledigheid? - Komen bij een bekende testclient het MAC-adres, de poort, het VLAN en de waarde van
direct_end_deviceovereen met de verwachte verbinding? - Levert de ingebouwde query voor hetzelfde doel en tijdvenster een aannemelijk vergelijkingsresultaat op?
Een ontbrekend record betekent alleen dat er onder de geselecteerde voorwaarden geen bewijs is. Het bewijst niet dat de switch of client niet bestaat en is op zichzelf evenmin bewijs van een telemetriefout.
Problemen afbakenen
Switchquery’s of bewerkingsfuncties ontbreken
Als het gedeelte Switch ontbreekt, controleert u eerst de juiste Fusion-tenant, een door Fusion beheerde switch en de licentietoewijzing voor Sophos EDR, XDR of MDR. Laat vervolgens uw toegangsrechten en de beschikbaarheid van de functie in de tenant controleren. Voor Edit en Create new query moet bovendien Designer Mode zijn ingeschakeld.
Schema of tabel ontbreekt
U kunt de Schema Viewer openen vanuit het SQL-dialoogvenster van een bewerkte of nieuwe query. Bij een nieuwe query moet Source: Data Lake zijn geselecteerd. Gebruik voor switchtelemetrie uitsluitend het pad NSG Cswitch > nsg_cswitch_data dat in de viewer wordt weergegeven en de huidige velden daarvan.
De query levert geen rijen op
Test eerst een ingebouwde switchquery voor een bekende switch. Noteer de tenant, het switchfilter, de verwachte testrecord en het tijdvenster. Verwijder vervolgens uw eigen filters een voor een en vergelijk de veldnamen met het schema.
Houd zonder een eigen tijdselectie rekening met de standaardwaarde van 7 dagen. Vergroot het venster bij ongewijzigde overige voorwaarden stapsgewijs tot maximaal 30 dagen. Gebruik voor langere onderzoeken afzonderlijke, gedocumenteerde vensters. Vergelijk ook de gebeurtenis- en opnametijd en controleer type_of_data en is_full_set. Leg het resultaat vast als ‘geen rijen onder de geselecteerde queryvoorwaarden en in de geselecteerde periode’.
U kunt de bedrijfs- en synchronisatiestatus van het doelapparaat ook controleren met het runbook Een Sophos Switch-vloot beheren.
Er zijn rijen, maar clientgegevens ontbreken
Een logrij hoeft geen clientvelden te bevatten. Controleer daarom eerst type_of_data en is_full_set en beoordeel daarna client_mac, client_ip, client_hostname, client_event_timestamp en client_conn_status in samenhang. Vul ontbrekende waarden niet aan vanuit de inventaris of naamgevingsconventies.
De tijdreeks lijkt tegenstrijdig
Vergelijk gebeurtenis- en opnametijden afzonderlijk en controleer de epochconversie en tijdzone. Een vertraagde opname is niet automatisch een tweede netwerkgebeurtenis. Voor deduplicatie kunt u message_identifier gebruiken, maar de uniciteit daarvan is alleen binnen de opnamepipeline gedocumenteerd.
Wijzigingen terugdraaien en gegevens beschermen
Een query wijzigt de eigen SQL-definitie of selectie, niet de switchconfiguratie. Als een aangepaste query onbetrouwbaar is, gebruikt u deze niet langer en keert u terug naar de ongewijzigde ingebouwde query. Herstel zo nodig de eerder opgeslagen definitie of verwijder de nieuwe variant met de functie die uw interface biedt. Controleer daarna met de ingebouwde query of het normale proces nog steeds werkt.
Geëxporteerde resultaten kunnen klant-ID’s, serienummers, IP- en MAC-adressen, hostnamen, poorten, VLAN’s en logberichten bevatten. Bescherm en verwijder exports, schermafbeeldingen en notities volgens uw vereisten voor bewaring en gegevensbescherming. Het terugdraaien van een query verwijdert reeds opgeslagen kopieën niet; die moeten op hun respectieve opslaglocaties worden behandeld.