Preparing To Decommission Windows DNS Servers

Today I want to write about a few of the tricks I’ve picked up for migrating DNS servers in a Windows AD environment with minimal pain and unexpected service interruptions due to forgotten devices that were pointing to the soon to be gone DNS server. The scenario is that you’ve…

Validating PrintNightmare Remediation with PowerShell

There has been a lot of uncertainty around CVE-2021-34527, dubbed ‘PrintNightmare’. From whether the released out-of-band patches work, to GPO settings & associated registry values which allow the mitigation in the patch to be bypassed, and arguments regarding whether these GPO…

Using Keyboard Macro Keys To Control HomeAssistant

I recently purchased a Logitech keyboard and while I didn’t particularly care for the macro keys I decided to look into whether I could program them to control HomeAssistant. This proved to be rather painless but there are a few steps necessary so I wanted to throw up a short…

Determining Which Process Is Making SMB Requests On Windows

How would you go about finding what process was making SMB requests on a Windows PC? If you’re like me you probably answered either or PowerShell’s . These are the commands I reach for whenever I needed to link a process to a network connection, but the case isn’t so simple for…

Getting MX, SPF, DMARC, DKIM, and SMTP Banners With PowerShell

When diagnosing email issues I tend to start with some basics: MX records, SPF, DMARC and DKIM data. There are a multitude of ways to get these, but I tend to like working in PowerShell, so I wanted to write a function to quickly pull this data. Further, I also like to ensure I…

How To Query APNIC WHOIS With Powershell

I’m finding myself frequently needing to query APNIC for IP WHOIS data, and while I tend to always have a PowerShell prompt (or 17) open, I rarely have the APNIC site handy, so I thew together a little function that sits in my which hits the APNIC search endpoint and returns the…

PowerShell Sleep Duration Accuracy and Windows Timers

I’ve previously written about different methods of pausing PowerShell script execution but it’s spread over several unrelated posts and it was never the core topic being covered so I wanted to put it all together into a single place. You may want to ‘sleep’ or ‘suspend’ a script…

Analyzing Thread CPU Utilization with ProcessExplorer, PowerShell, and WMI

In a previous post we examined ways to get per core CPU performance data using PowerShell and WMI, and there was a question that we mostly glossed over - how do we know when a thread is CPU bound? A simple but unreliable method was to look at the CPU usage of a process, and if…