Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Microsoft Defender for Endpoint source #1009

Open
wants to merge 20 commits into
base: master
Choose a base branch
from

Conversation

juju4
Copy link
Contributor

@juju4 juju4 commented Oct 8, 2022

Add Ingestion of MDE assets as source (follow-up of #999)
Include initial test data and draft schema

Bugs

  • fix import of array and dict, or needed values (vmMetaData, ipAddresses...) to get instance_id, subscription_d and resource_id which are required to make relationship with AzureVirtualMachine.
  • fix mypy and flake8 issues, part due to import .util not working.

Pending

  • AzureVirtualMachine relationship.
  • Add a tenant_id to link to AzureTenant and allow multi-tenancy.
  • import vulnerabilities' detections.
  • may want cleanup retention to be configurable. Typically, EDR keep inventories for 30-45 days.

Reviewed with pylint and black

@juju4
Copy link
Contributor Author

juju4 commented Oct 15, 2022

I think this is good for review and merge.
At this point, I only added relation to AzureVirtualMachine. hesitated for AzureSubscription as more widely available (ex: Crowdstrike)
Likely need some help to fix mypy errors as not familiar with tool.

Copy link
Contributor

@achantavy achantavy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's try to avoid pandas. We can use a similar transform approach as in this PR: #1146, happy to continue helping here.

It might also be worth exploring using the data model using that PR as example.

@@ -56,6 +56,7 @@
"kubernetes>=22.6.0",
"pdpyras>=4.3.0",
"crowdstrike-falconpy>=0.5.1",
"pandas>=1.5.1",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pandas is a very heavy dependency. Can we do without it?

@@ -6,6 +6,7 @@ on:
push:
branches:
- master
- devel*
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What's this do? Can we omit it?

"""
cartography/intel/mde/endpoints
"""
# pylint: disable=missing-function-docstring,too-many-arguments
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# pylint: disable=missing-function-docstring,too-many-arguments


Placeholder representation of a single [MDE Host or machine](https://docs.microsoft.com/en-us/microsoft-365/security/defender-endpoint/get-machines?view=o365-worldwide). This node is the minimal data necessary to map an asset.

Warning! Work In Progress.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Warning! Work In Progress.

@juju4
Copy link
Contributor Author

juju4 commented Apr 15, 2023

I will try to review but I don't think it will be in near time.
If anyone interested, feel free to help.

@chandanchowdhury chandanchowdhury added data-addition Describes adding new data to the graph Azure Related to the Azure intel module labels Jul 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Azure Related to the Azure intel module data-addition Describes adding new data to the graph
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants