CIA Brief – 231118

Our vision to bring Microsoft Copilot to everyone, and more –

https://blogs.bing.com/search/november-2023/our-vision-to-bring-microsoft-copilot-to-everyone-and-more

Ignite News: Augment your EDR with deception tactics to catch adversaries early –

https://techcommunity.microsoft.com/t5/microsoft-defender-for-endpoint/ignite-news-augment-your-edr-with-deception-tactics-to-catch/ba-p/3982253

Microsoft Security Copilot and NIST 800-171 –

https://techcommunity.microsoft.com/t5/public-sector-blog/microsoft-security-copilot-and-nist-800-171/ba-p/3984053

Power Apps accelerates the shift toward modern, AI-infused apps with governance at scale –

https://powerapps.microsoft.com/en-us/blog/power-apps-accelerates-the-shift-toward-modern-ai-infused-apps-with-governance-at-scale/

Microsoft Defender XDR, Security Copilot & Microsoft Sentinel now in one portal –

https://www.youtube.com/watch?v=snV2joMnSlc&t=1s

What’s new with Windows at Microsoft Ignite 2023! –

https://techcommunity.microsoft.com/t5/windows-it-pro-blog/what-s-new-with-windows-at-microsoft-ignite-2023/ba-p/3980507

Microsoft Backup in public preview –

https://learn.microsoft.com/en-us/microsoft-365/syntex/backup/backup-overview

Simplify IT management with Microsoft Copilot for Azure – save time and get answers fast –

https://techcommunity.microsoft.com/t5/azure-infrastructure-blog/simplify-it-management-with-microsoft-copilot-for-azure-save/ba-p/3981106

Universal Print makes cloud printing truly “universal” –

https://techcommunity.microsoft.com/t5/windows-it-pro-blog/universal-print-makes-cloud-printing-truly-universal/ba-p/3982872

Microsoft Archive available in preview –

https://learn.microsoft.com/en-us/microsoft-365/syntex/archive/archive-overview

Meet the new Microsoft Planner –

https://www.youtube.com/watch?v=jwGQPWAihjQ

Copilot Studios | Explained by Microsoft –

https://www.youtube.com/watch?v=06D4G2K9UFs

Microsoft Stream: The Future of Video in Microsoft 365 –

https://www.youtube.com/watch?v=XxuVc9ji3as

Microsoft Loop: built for the new way of work, generally available to Microsoft 365 work accounts –

https://techcommunity.microsoft.com/t5/microsoft-365-blog/microsoft-loop-built-for-the-new-way-of-work-generally-available/ba-p/3982247

Microsoft Intune introduces Security Copilot-embedded experience –

https://techcommunity.microsoft.com/t5/microsoft-intune-blog/microsoft-intune-introduces-security-copilot-embedded-experience/ba-p/3982632

Announcing Microsoft Copilot Studio: Customize Copilot for Microsoft 365 and build your own standalone copilots –

https://www.microsoft.com/en-us/microsoft-365/blog/2023/11/15/announcing-microsoft-copilot-studio-customize-copilot-for-microsoft-365-and-build-your-own-standalone-copilots/

Microsoft Stream: The Future of Video in Microsoft 365 –

https://techcommunity.microsoft.com/t5/microsoft-stream-blog/microsoft-stream-the-future-of-video-in-microsoft-365/ba-p/3969156

Announcing Windows 365 GPU-enabled Cloud PC public preview –

https://techcommunity.microsoft.com/t5/windows-it-pro-blog/announcing-windows-365-gpu-enabled-cloud-pc-public-preview/ba-p/3982952

Introducing Microsoft Copilot Studio and new features in Copilot for Microsoft 365 –

https://www.microsoft.com/en-us/microsoft-365/blog/2023/11/15/introducing-microsoft-copilot-studio-and-new-features-in-copilot-for-microsoft-365/

Microsoft unveils expansion of AI for security and security for AI at Microsoft Ignite –

https://www.microsoft.com/en-us/security/blog/2023/11/15/microsoft-unveils-expansion-of-ai-for-security-and-security-for-ai-at-microsoft-ignite/

Microsoft Cloud PKI launches as a new addition to the Microsoft Intune Suite –

https://techcommunity.microsoft.com/t5/microsoft-intune-blog/microsoft-cloud-pki-launches-as-a-new-addition-to-the-microsoft/ba-p/3982830

Announcing Microsoft Intune Advanced Analytics –

https://techcommunity.microsoft.com/t5/microsoft-intune-blog/announcing-microsoft-intune-advanced-analytics/ba-p/3982742

Microsoft Ignite 2023: AI transformation and the technology driving change –

https://blogs.microsoft.com/blog/2023/11/15/microsoft-ignite-2023-ai-transformation-and-the-technology-driving-change/

Tailor Windows Update for Business reports with Power BI –

https://techcommunity.microsoft.com/t5/windows-it-pro-blog/tailor-windows-update-for-business-reports-with-power-bi/ba-p/3978975

Ten things you need to know before buying Microsoft 365 Copilot –

https://www.directionsonmicrosoft.com/blog/ten-things-you-need-to-know-before-buying-microsoft-365-copilot/

Microsoft could be bringing its AI Copilot to billions of Windows 10 users –

https://www.tomsguide.com/news/microsoft-could-be-bringing-its-ai-copilot-to-billions-of-windows-10-users

After hours

Candy Thieves vs Rigged Candy Bowl – https://www.youtube.com/watch?v=Zb01RStdzEs

Editorial

There is still more Microsoft Ignite goodness to digest, so be prepared for lots of links in the CIA Brief next week as well!

If you found this valuable, the I’d appreciate a ‘like’. This helps me know that people enjoy what I have created. If you have any feedback or suggestions around this, I’m all ears. You can also find me via email director@ciaops.com and on X (Twitter) at https://www.twitter.com/directorcia.

Watch out for the next CIA Brief next week.

Accessing Azure Key Vault via Power Automate

In a previous article:

Adding a secret to an Azure Key Vault

I showed how a secure credential could be saved to an Azure Key Vault and then retrieved either from the browser, or PowerShell. You can however, also retrieve a secret using Power Automate.

image

You can see I have the same ‘super secret’ password stored in the Azure Key Vault above.

The Azure Key Vault connector in Power Automate is a premium connector which means you’ll either need an advanced Power Platform license or you’ll need to set up a

Power Platform PAYG configuration

which is probably the more cost effective approach.

image

You’ll firstly need to login to your Power Platform environment and select Connectors from the menu on the left as shown above. In here look for the Azure Key Vault connector. If it is not there select the +New connector from the menu at the top.

image

Search for key vault in the top right and then select Azure Key Vault as shown above. You will note that this connector is a Premium connector as highlighted earlier.

image

Enter the vault name and select Create.

image

You should now see the connector displayed in the list as shown above.

image

If you select this connector you will see additional information and the connection Status as well. Icons on the menu bar at the top that allow you to maintain this connector if needed.

image

Create a new flow and add a new step. Search for key vault as shown and select Get Secret as the action below as shown above.

image

If you pull down the Name of the secret field you should see your secret name previously created in the Azure Key Vault as shown above, which you can select.

image

Complete your flow. Here I’m just going to output the value of the secret (i.e. the password) to a Microsoft Team channel.

image

If you now run the flow you see that it succeeds.

image

You should also see the output of the secret (i.e. here the password) stored in the Azure Key Vault displayed as shown above.

Another advantage of using an Azure Key Vault is that you can use it a variety of tools such as PowerShell and Power Automate as I have shown here. This means that the credentials stay secure and can still be accessed via your automation process.

Adding a secret to an Azure Key Vault

An Azure Key Vault is a great location for storing credential securely. In a recent article I cover how to:

Create a new Azure Key Vault

next, I want to cover how you can actually put credentials in there.

image

Step one is to navigate the Azure Key Vault you have created, and select the Secrets option from the menu on the left as shown above. From the menu on the right select +Generate/Import as shown.

image

Simply complete the fields as shown and select the Create button at the bottom of the window.

You will note that your secret (say a password) has a Name and potentially an activation and expiration date if desired. You can also enable or disable if desired.

image

You should now see that the secret has been created as shown above. To view the details simply click on the secret.

image

Here you’ll now see all the details about the secret. The good thing about information about an Azure Key Vault credential is that you can easily update it if required and previous versions will be retained. You can also control access to this individual secret via the Access control (IAM) on the menu on the left hand side.

If you now select the Current version displayed in the middle of the page you will get more details like so:

image

Here, you can update the settings for secret as well as reveal what the secret is by selecting the Show Secret Value button as shown.

image

You see the super secret password shown above.

One of the main reasons reasons for using an Azure Key Vault is that we can access this information also programmatically, for example by using PowerShell.

image

If I connect to Azure using the Azure PowerShell module with a user that has rights to access the vault and secret, I can run a command like:

get-azkeyvaultsecret -vaultname “vaultname” -name “secretname”

and the results will be shown above. But how do I get to the actual secret?

image

Basically, you repeat the previous command but this time assign it to a variable and add the –asplaintext option, like shown above. The command would look like:

$pwd = get-azkeyvaultsecret -vaultname “vaultname” -name “secretname” –asplaintext

Now the secret value (say password) is in the variable $pwd for use in my code.

PowerShell is not the only method you can use to obtain what is in an Azure Key Vault. You can use something like Power Automate and Flow, which I’ll cover off in an upcoming articles. However, PowerShell allows just about any function with vaults including creating, reading, deleting, updating and so on. Thus, using an Azure Key Vault provides a secure yet flexible method of storing credentials you want to protect as well as make potentially portable (i.e. you can use them anywhere on any device that runs PowerShell and connect to the internet).

So an Azure Key Vault provides secure storage for credentials that you can easily access programmatically using something like PowerShell and Power Automate. What can now be achieved with this? Stay tuned to find out more.

Create a new Azure Key Vault

Given that a number of upcoming articles will discuss Azure Key Vaults, I thought a good place to start was to show you how to set one up. It is pretty easy, so let’s do it!

image

You’ll need a paid Azure subscription and administrator access to your Azure portal.

In the Azure portal, search for Key Vaults as shown and select Key Vaults from the results.

image

Then select the option to Create a new vault as shown above.

image

Complete the details for the vault, including:

– Azure subscription

– Resource group

– Key vault name

– Region

– Pricing tier

most of the other options can be left at their defaults. Select the Next button at the bottom of the window to continue.

image

In this case the default Permissions model of Azure role-based access control is desired setting.

Generally, no further changes are required. Select Next at the bottom of the windows to continue.

image

Typically, no changes need to be made here as we will want this new vault to be available publicly via something like PowerShell. However, you can make whatever changes you desire and select the Next button at the bottom of the screen to continue.

image

Add tags if you wish and then select the Next button at the bottom of the window.

image

Review the settings you have made and select the Create button.

image

You should now see the new vault being provisioned as shown above.

image

When the provisioning you can select the option to view the result as shown above.

image

You can return to your new vault at any time by navigating to Key Vaults in the Azure portal where you should see the vault just created as shown above.

image

I’d also suggest you check some permissions before you leave. Open the newly created vault and select Secrets from the menu on the left. If you see the banner across the top as shown above the reads This operation is not allowed by RBAC then you’ll probably need to change some permissions.

image

Navigate to the Access Control (IAM) option from the menu on the left as shown above. Then on the right select +Add.

image

From the menu that appears select the Add role assignment as shown above.

image

Locate and select the Key Vault Administrator job function role as shown.

Select Next at the bottom of the screen to continue.

image

Click the +Select members hyperlink as shown above.

From the window that appears on the right, search for the user whom you want to have rights over the vault (typically the same user that is currently logged in). Press the Select button at the bottom of the window to continue.

image

The selected user(s) should now appear under the Members section as shown above.

Press the Next button to continue.

image

Select the Review + assign button at the bottom of the screen to complete the process.

image

If you now return to the Secrets area that displayed the original RBAC warning, after a minute or two, you should see that message is longer displayed. The user that you just added now has administrative rights to the vault.

If you want to learn more about what Azure Key Vaults are all about take a look at:

Azure Key Vault basic concepts

however, in essence they are going to place to store stuff you want kept secure, like configurations details, including passwords and then access them programmatically.

CIA Brief is coming

messenger delivering a new annoucement to the pubblic

For a long while I used Power Automate to push out interesting stories around the Microsoft Cloud I found to Twitter (X now). Unfortunately, X changed the pricing of their API which made it prohibitively expensive to continue with this approach.

Given this, I’ve been thinking about what would be a suitable replacement. I initially considered an email list, as that is what all the cool kids do, but I also needed a process that was simple and easy for me, especially if I was going to do something weekly. The problem using a bulk email system like Mailchimp, is that I would need to format each blast using the Mailchimp website as well as send it from there. If I planned to do a weekly update of links I have found, that becomes time consuming and inconvenient, especially if I’m travelling.

Another reason I have not opted for an email list is that I am already on plenty that send updates weekly and honestly I don’t find that it is a very effective mechanism. Yes, I do read them all and yes, they provide value but I tend to put off reading them and deal with more important things in my inbox. I kind of need to be in the ‘mood’ to sit there and read through all the information and if I’m not then they tend to ‘backup’ as a to-do item.

I also considered doing a video update and posting it on YouTube as many others do. The downside to this method is it is a huge amount of work behind the scenes. My experience is also that a video of a whole bunch of screen shots or text really doesn’t appeal to people because when I tried it a while back by posting my podcasts with this content, the number of views simply didn’t reach acceptable minimums for the amount of invested effort.

Thus, I ruled out setting up an email list or using a video update as well as few other methods and instead have favoured posting the information here on my blog. The benefits of this is that it will be easy for me to quickly copy, paste and post the collection of stuff I find weekly. For those that do want emails there is the option to subscribe to my blog as email if you wish. The blog method however means you can simply read the post without having to give up your email if you choose and not have additional emails in your inbox, which is always a good thing. I also like that it will be searchable and publicly available.

I have created a tag on my blog called ‘CIA Brief’ which allows you to filter by just that tag. For example the feed will be:

https://blog.ciaops.com/tag/CIA-Brief/

that means you can simply follow the items I post with this tag the get the list of information I plan to post.

image

The ask I have of those that find value in the CIA Brief is to Like the post, as shown above at the bottom of each post. This way I know that the information is of value to people and provides an incentive for me to continue producing it. If you can Like each CIA Brief you see that would be very much appreciated.

Of course, I also welcome your feedback about how to make this concept even more valuable to people. I want something that is quick and easy to view on a weekly basis that will keep you up to date with the Microsoft Cloud. If you have any suggestions or feedback then I’m all ears.

That is the why and wherefores done. Stay tuned for the first CIA brief at the end of this week.

Monitoring a break glass account with Sentinel

In a previous article I covered off how to use Defender for Cloud Apps to monitor a break glass account. Typically, the alerts generated there will feed into Sentinel, however it is possible to configure Sentinel to perform a similar role.

The starting point is to use a KQL query like this:

SigninLogs
| where UserPrincipalName == “breakglass@domain.com”
| where OperationName == “Sign-in activity”
| project TimeGenerated, UserPrincipalName, ClientAppUsed, LocationDetails

image

If you run that query manually you’ll see a result like shown above. You will however also notice a New alert rule option in the top right of the window.

image

Selecting this will reveal two choices as shown above. Select Create Microsoft Sentinel alert to continue.

image

Make the appropriate settings in the General page, like shown above, and continue.

image

Here there are number of settings you can select but you will probably want to adjust how often the query is run as shown above. The important point to remember is that, as Azure is a consumption based billing model, there is a (very, very small charge) every time the query is run. Thus, the more often it runs the more it will cost.

When you have completed this section, move onto the Incident settings.

image

Here it is important to ensure that the option to Create incidents is Enabled as shown above.

Make any additional adjustments and move to Automated response.

image

Here you can enable any automation action you wish by selecting from those already created, as shown above. You can always add additional automation later if desired.

image

Finally, review and create the alert.

image

Verify that the alert you just created now appears in the list of Analytic rules for your environment as shown above.

image

If you now test this by logging as your breakglass account you should an incident generated as shown above. Once again, it is important to remember that this incident doesn’t appear immediately. It will appear in a time period based on how often you set the alert to check.

Another important thing to remember is that by default, the incident will not send an email notification of the alert. You can configure that a variety of different ways if you wish, which I won’t cover here.

The differences with using Sentinel for custom alerts is that the billing is consumption based, but you have a lot more flexibility in how you configure the actual alerts as well as any automated response if desired. I would also say that Sentinel has more power around actually analysing signals as well which is handy to protect your breakglass account.



Using Sentinel to determine application usage

examinatyion using a magnifying glass

In recent article:

Block applications on Windows devices using Intune

I outlined how to prevent an application from running on a Windows device. It would be nice to know how many people are running this application prior to it being blocked (and even before). You can achieve this using Sentinel.

Many don’t appreciate

The extra value that Microsoft Defender provides

apart from security. In a nutshell, Defender for Endpoint sends signals from devices into the Microsoft cloud that something like Sentinel can take advantage of. This is something that can be taken advantage of to see application usage.

DeviceNetworkEvents
| where InitiatingProcessFileName contains “msedge.exe”
| project TimeGenerated, RemoteUrl, RemoteIP, DeviceName, InitiatingProcessAccountName
| summarize count() by bin(TimeGenerated,1day),DeviceName
| render columnchart

an example of this is the above KQL query, which when run provides an output like:

image

The result is basically a bar graph, over whatever time you specify, of how many times an application has been used. This is a great indicative way to get a feel for how often a device is running a particular application (here msedge.exe). The different bar colours show each particular device and each bar height represents the total usage of that application for one day.

The great thing is that you can further customize and enhance this query to suit your needs to product the output your require. You can then take that query and embed it into a Sentinel workbook so that it is available as part of a dashboard.

There is just so much that you can do and all it takes is becoming familiar with the tools Microsoft provides in your environment.