Matthew's Blog

ddns-bunny.net

There’s many dynamic DNS services out there, but sometimes it’s easier to just figure out an API and make your own utility. This utility uses wtfismyip.com to get your current external IP(v4) address, and then updates the record using the Bunny.net API.


This project was recently migrated from GitHub to Sourcehut. As such, I haven’t had a chance to set up releases for it yet. However, it’s fairly straightforward to build this yourself. For now, check out the GitHub Actions workflow to see how things were build in CI.

Set Nextcloud Contacts as Default Account in iOS

Sometime in the last couple of years Nextcloud made some changes to the Contacts app. They added a system address book, and the ability to have multiple address books under a single Nextcloud account.

iOS sort of supports multiple address books under one account, but this has some unintended side effects. The additional address books show up as groups in the iOS Contacts app, and this marks the account as unavailable to be set as the default account for saving contacts. As I’m writing this, that’s probably because the system address book isn’t writable, and iOS requires a default account to be writable. I suppose that makes sense.

NextJS With Google ReCaptcha Enterprise

I haven’t been able to find a guide for this yet, but there’s plenty of guides out there for Recaptcha v2 and v3. Many of the v3 packages can work with ReCaptcha Enterprise, but none of them seem to support policy-based challenges. This guide will show you how to implement ReCaptcha Enterprise with policy-based challenges in a NextJS app without any external libraries.

This guide will not cover how to obtian a ReCaptcha Enterprise key, nor how to validate the token on the server side.

"Color Picker" Browser Extension Becomes Malware

Recently, several articles have been published about several browser extensions that have started shipping malware. Many of these extensions were previously benign and were “trusted” and “verified” by the browser vendors.

This article focuses more on one of the C&C domains used by the extension: hxxp(s)://admitclick.net.

Low-Hanging Fruit

I swear I’ve seen this domain before, or maybe I’m thinking of doubleclick.net, in any case, domains that have “click” in them set of my alarm bells.

Windows Update Error 0x80070780

These last two months a couple of the servers I maintain at work were failing to install the monthly update rollup. Usually when updates start failing, we tend to reach for a server rebuild instead of troubleshooting the black box that can be Windows Updates – after all the error messages and codes they display to end users aren’t exactly… descriptive. This particular error code doesn’t make Microsoft’s list of common errors and mitigation.

Page 1 of 6