Getting a full list of Exchange Online Powershell Commands

Again, I love to share things that seem to take a bunch of searching for, and in this case, trying to find a full list of commands when administering Exchange online/Office365 via Powershell. You won’t ever find a list really, because they’re changing all the time and may also be dependent on the type of tenant you have amongst other factors.

Continue reading “Getting a full list of Exchange Online Powershell Commands”

Problem using Invoke-Webrequest in a Powershell task on Windows Server

I figured I’d share this one, since it’s one of those fun Microsoft-isms that just like to pop up on a rainy Friday. I had a script that runs on a server, that I had to modify to grab some info off a web page using Invoke-Webrequest. Super simple basic request with no auth. Added it to the script, run the script on the server, works great, life is good!

Continue reading “Problem using Invoke-Webrequest in a Powershell task on Windows Server”

IMAP Protocol in Office 365 bypasses MFA

Recently saw this article mention IMAP attacks against Office365 mailboxes due to IMAP bypassing MFA rules:

https://www.bleepingcomputer.com/news/security/multi-factor-auth-bypassed-in-office-365-and-g-suite-imap-attacks/

My suggestion is to bulk disable IMAP and POP of your organization doesn’t use them. You can use Powershell to disable these protocols en-bulk in seconds, however if your firm is larger, make sure those protocols aren’t in use first by various systems, especially IMAP.

You may also want to look at Activesync and OWA as well, not every mailbox likely needs those as well, especially system mailboxes.

Gets all IMAP enabled mailboxes
get-casmailbox | ? imapenabled -eq $true

Gets all IMAP enabled mailboxes and disables it

get-casmailbox | ? imapenabled -eq $true | set-casmailbox -imapenabled $false

Gets all POP enabled mailboxes

get-casmailbox | ? popenabled -eq $true

Gets all POP enabled mailboxes and disables it

get-casmailbox | ? popenabled -eq $true | set-casmailbox -popenabled $false

Edit: Heres another article about how to set defaults for the protocols. Remember to disable OWAforDevices if you don’t allow the Outlook IOS/Android app.

https://community.spiceworks.com/how_to/152329-setting-the-default-email-protocols-in-office-365

You can disable OWAforDevices for existing users using the same set-casmailbox cmdlet:

get-casmailbox | ? owafordevicesenabled -eq $true | set-casmailbox -OWAforDevicesEnabled $false