Skip to content

Conversation

@RamboV
Copy link
Contributor

@RamboV RamboV commented Sep 15, 2025

Required items, please complete

Change(s):

  • See guidance below

Reason for Change(s):

  • See guidance below

Version Updated:

  • Required only for Detections/Analytic Rule templates
  • See guidance below

Testing Completed:

  • See guidance below

Checked that the validations are passing and have addressed any issues that are present:

  • See guidance below

Guidance <- remove section before submitting


Before submitting this PR please ensure that you have read the following sections and filled out the changes, reason for change and testing complete sections:

Thank you for your contribution to the Microsoft Sentinel Github repo.

Details of the code changes in your submitted PR. Providing descriptions for pull requests ensures there is context to changes being made and greatly enhances the code review process. Providing associated Issues that this resolves also easily connects the reason.

Change(s):

  • Updated syntax for XYZ.yaml

Reason for Change(s):

Version updated:

  • Yes
  • Detections/Analytic Rule templates are required to have the version updated

The code should have been tested in a Microsoft Sentinel environment that does not have any custom parsers, functions or tables, so that you validate no incorrect syntax and execution functions properly. If your submission requires a custom parser or function, it must be submitted with the PR.

Testing Completed:

  • Yes/No/Need Help

Note: If updating a detection, you must update the version field.

Before the submission has been made, please look at running the KQL and Yaml Validation Checks locally.
https://github.com/Azure/Azure-Sentinel#run-kql-validation-locally

Checked that the validations are passing and have addressed any issues that are present:

  • Yes/No/Need Help

Note: Let us know if you have tried fixing the validation error and need help.

References:


@RamboV RamboV requested review from a team as code owners September 15, 2025 05:54
@v-shukore v-shukore added the New Solution For new Solutions which are new to Microsoft Sentinel label Sep 15, 2025
@rahul0216 rahul0216 requested a review from Copilot September 15, 2025 07:00
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR introduces a new JoeSandbox solution for Microsoft Sentinel that provides threat intelligence integration and automated analysis capabilities.

Key Changes:

  • Adds complete JoeSandbox solution infrastructure with threat intelligence feed integration
  • Implements Azure Function apps for file/URL analysis and IOC generation
  • Provides Logic Apps for automated incident response and email attachment analysis

Reviewed Changes

Copilot reviewed 39 out of 76 changed files in this pull request and generated 13 comments.

Show a summary per file
File Description
Solutions/JoeSandbox/SolutionMetadata.json Solution metadata configuration for marketplace deployment
Solutions/JoeSandbox/ReleaseNotes.md Version history and release documentation
Solutions/JoeSandbox/README.md Complete setup and deployment instructions
Solutions/JoeSandbox/Package/mainTemplate.json ARM template for solution deployment infrastructure
Solutions/JoeSandbox/Data Connectors/ Threat intelligence data connector with Azure Functions
Solutions/JoeSandbox/Playbooks/ Logic Apps for URL analysis and email attachment processing

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@@ -0,0 +1,227 @@
# JoeSandbox Threat Intelligence Feed and Enrichment Integration - Microsoft Sentinel

**Latest Version:** **1.0.0** - **Release Date:** **12/09/2025**
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

The version in README.md (1.0.0) does not match the version in ReleaseNotes.md (3.0.0). These should be consistent across all documentation files.

Suggested change
**Latest Version:** **1.0.0** - **Release Date:** **12/09/2025**
**Latest Version:** **3.0.0** - **Release Date:** **12/09/2025**

Copilot uses AI. Check for mistakes.
Comment on lines 1 to 3
| **Version** | **Date Modified (DD-MM-YYYY)** | **Change History** |
|-------------|--------------------------------|---------------------------------------------|
| 3.0.0 | 23-07-2025 | Initial Solution Release |
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

The release date format is inconsistent. ReleaseNotes.md uses DD-MM-YYYY (23-07-2025) while README.md uses DD/MM/YYYY (12/09/2025). Standardize the date format across all files.

Suggested change
| **Version** | **Date Modified (DD-MM-YYYY)** | **Change History** |
|-------------|--------------------------------|---------------------------------------------|
| 3.0.0 | 23-07-2025 | Initial Solution Release |
| **Version** | **Date Modified (DD/MM/YYYY)** | **Change History** |
|-------------|--------------------------------|---------------------------------------------|
| 3.0.0 | 23/07/2025 | Initial Solution Release |

Copilot uses AI. Check for mistakes.
1. Azure functions with Flex Consumption plan.
Reference: https://learn.microsoft.com/en-us/azure/azure-functions/flex-consumption-plan

**Note:** Flex Consumption plans are not available in all regions, please check if the region your are deploying the function is supported, if not we suggest you to deploy the function app with premium plan.
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

Grammatical error: 'your are' should be 'you are'.

Suggested change
**Note:** Flex Consumption plans are not available in all regions, please check if the region your are deploying the function is supported, if not we suggest you to deploy the function app with premium plan.
**Note:** Flex Consumption plans are not available in all regions, please check if the region you are deploying the function is supported, if not we suggest you to deploy the function app with premium plan.

Copilot uses AI. Check for mistakes.
"status": "New",
"description": "JoeSandbox Email Attachment Scan . From:@{triggerBody()?['from']}. To: @{triggerBody()?['toRecipients']}"
},
"path": "/Incidents/subscriptions/@{encodeURIComponent('7356a8d4-94f5-4210-a777-f4d6329e1c71')}/resourceGroups/@{encodeURIComponent('Joe-Security')}/workspaces/@{encodeURIComponent('JoeSecurity')}"
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

Hardcoded subscription ID, resource group, and workspace names in the Logic App template. These should be parameterized to work with different deployments.

Copilot uses AI. Check for mistakes.
},
"method": "post",
"body": {
"To": "[email protected]",
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

Hardcoded email addresses in the Logic App template. This should be parameterized to allow users to specify their own email addresses.

Copilot uses AI. Check for mistakes.
"WaitSection"
],
"properties": {
"packageUri": "https://github.com/RamboV/JoeSandboxMSSentinel/raw/refs/heads/main/JoeSandboxThreatIntelligence/FlexCunsumptionPlan/JoeSandboxConn.zip",
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

Typo in URL path: 'FlexCunsumptionPlan' should be 'FlexConsumptionPlan'.

Suggested change
"packageUri": "https://github.com/RamboV/JoeSandboxMSSentinel/raw/refs/heads/main/JoeSandboxThreatIntelligence/FlexCunsumptionPlan/JoeSandboxConn.zip",
"packageUri": "https://github.com/RamboV/JoeSandboxMSSentinel/raw/refs/heads/main/JoeSandboxThreatIntelligence/FlexConsumptionPlan/JoeSandboxConn.zip",

Copilot uses AI. Check for mistakes.
"status": "New",
"description": "JoeSandbox Email Attachment Scan . From:@{triggerBody()?['from']}. To: @{triggerBody()?['toRecipients']}"
},
"path": "/Incidents/subscriptions/@{encodeURIComponent('7356a8d4-94f5-4210-a777-f4d6329e1c71')}/resourceGroups/@{encodeURIComponent('Joe-Security')}/workspaces/@{encodeURIComponent('JoeSecurity')}"
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

Multiple hardcoded values in the main template including subscription IDs, workspace IDs, and email addresses. These should be replaced with parameters to ensure the template works across different environments.

Copilot uses AI. Check for mistakes.
"sourcesystem": "JoeSandboxThreatIntelligence",
"indicators": "@body('GetJoeSanboxIOCs')['custom_response']"
},
"path": "/V2/ThreatIntelligence/4f06a513-315c-41be-8dc2-3dd4da0ba830/UploadIndicators/"
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

Multiple hardcoded values in the main template including subscription IDs, workspace IDs, and email addresses. These should be replaced with parameters to ensure the template works across different environments.

Copilot uses AI. Check for mistakes.
},
"method": "post",
"body": {
"To": "[email protected]",
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

Multiple hardcoded values in the main template including subscription IDs, workspace IDs, and email addresses. These should be replaced with parameters to ensure the template works across different environments.

Copilot uses AI. Check for mistakes.
},
"method": "post",
"body": {
"To": "[email protected]",
Copy link

Copilot AI Sep 15, 2025

Choose a reason for hiding this comment

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

Multiple hardcoded values in the main template including subscription IDs, workspace IDs, and email addresses. These should be replaced with parameters to ensure the template works across different environments.

Copilot uses AI. Check for mistakes.
return indicators


def check_ip(ip: str) -> Optional[str]:

Check notice

Code scanning / CodeQL

Explicit returns mixed with implicit (fall through) returns Note

Mixing implicit and explicit returns may indicate an error, as implicit returns always return None.
@v-maheshbh
Copy link
Contributor

Hi @RamboV Kindly check failing Validations.

Thanks!

@v-maheshbh
Copy link
Contributor

Hi @RamboV Kindly check above comment.

Thanks!

@shubhamloginsoft
Copy link
Contributor

Hi @RamboV Kindly check above comment.

Thanks!

@v-maheshbh We have fixed the failed checks. Kindly review and let me know if any changes required.

@v-maheshbh
Copy link
Contributor

Hi @RamboV
Kindly update the offerId to follow the correct format and repackage solution.
azure-sentinel-solution-solutionName

Thanks!

@RamboV
Copy link
Contributor Author

RamboV commented Nov 18, 2025

Hi @v-maheshbh
updated the offerId.
Thanks!

@RamboV
Copy link
Contributor Author

RamboV commented Nov 20, 2025

Hi @v-maheshbh , any update please?

@v-maheshbh
Copy link
Contributor

Hi @RamboV
We are putting your PR on hold because your solution uses Azure Function and not Sentinel Codeless Connector Framework (CCF). We would be happy to work with you to migrate your solution to CCF. Please contact the Microsoft Sentinel Partners at [email protected] to discuss available options.

Thanks!

@RamboV
Copy link
Contributor Author

RamboV commented Nov 21, 2025

Hi @RamboV We are putting your PR on hold because your solution uses Azure Function and not Sentinel Codeless Connector Framework (CCF). We would be happy to work with you to migrate your solution to CCF. Please contact the Microsoft Sentinel Partners at [email protected] to discuss available options.

Thanks!

Hello @v-maheshbh ,

CCF Framework will not work in this scenario, this includes.multuple API calls to process the data, each API calls is dependent on other.. hence we went with function app... please kindly arrange a call to discuss on this further.

@v-maheshbh
Copy link
Contributor

Hi @RamboV
Please drop a mail to the Microsoft Sentinel Partners at [email protected] to get their feedback and approval, so we can proceed further.

Thanks!

@RamboV
Copy link
Contributor Author

RamboV commented Nov 28, 2025

Hi @RamboV Please drop a mail to the Microsoft Sentinel Partners at [email protected] to get their feedback and approval, so we can proceed further.

Thanks!

Hi @v-maheshbh , already did that.. please proceed with the review we got approval .

@v-maheshbh
Copy link
Contributor

Hi @RamboV
Could you please attach the approval so we can proceed? Thank you.

@RamboV
Copy link
Contributor Author

RamboV commented Nov 28, 2025

Hi @RamboV Could you please attach the approval so we can proceed? Thank you.
Screenshot_20251128_103210_Outlook

If you still need anything please let me know your emails so that I will add them to the loop

@v-maheshbh
Copy link
Contributor

v-maheshbh commented Nov 28, 2025

Hi @RamboV

Please update the short link and ensure the description is formatted correctly so the author can easily distinguish between the two files. please find below links -
https://aka.ms/sentinel-JoeSandbox-azuredeployflex
https://aka.ms/sentinel-JoeSandbox-azuredeploypremium
Additionally, could you please confirm whether both URLs point to the same ZIP file?

and Kindly attach the screenshot of the playbook created.

Thanks!

@v-maheshbh
Copy link
Contributor

Hi @RamboV
Kindly review above comments.

Thanks!

@RamboV
Copy link
Contributor Author

RamboV commented Dec 10, 2025

@RamboV
Copy link
Contributor Author

RamboV commented Dec 10, 2025

@RamboV
Copy link
Contributor Author

RamboV commented Dec 15, 2025

Hi @v-maheshbh any update on soft links please?

@RamboV
Copy link
Contributor Author

RamboV commented Dec 17, 2025

Hi @v-maheshbh any update on this please?

@v-maheshbh
Copy link
Contributor

v-maheshbh commented Dec 19, 2025

Hi @RamboV
Kindly revert the changes related to chore: Update Solutions Analyzer CSV files and documentation (#2) that were automatically added via workflow.

image image

and Additionally, we will be working on creating the soft link as part of the next steps.

Thanks!

@RamboV
Copy link
Contributor Author

RamboV commented Dec 22, 2025

Hello @v-maheshbh I have reverted the commit as suggested. Please kindly move on to the next steps.

@v-maheshbh
Copy link
Contributor

Hi @RamboV Kindly resolved the Branch conflict. and revert the changes related to chore files.

Thanks!

@RamboV
Copy link
Contributor Author

RamboV commented Jan 6, 2026

@v-maheshbh can you please help us here its getting so much delayed, let us sync on a call to resolve the issues and merge the PR

@v-maheshbh
Copy link
Contributor

@v-maheshbh can you please help us here its getting so much delayed, let us sync on a call to resolve the issues and merge the PR
Let us connect tomorrow. I will be available as per IST. Please find my [email protected]

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

New Solution For new Solutions which are new to Microsoft Sentinel

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants