Terence Eden. He has a beard and is smiling.

Terence Eden’s Blog

Theme Switcher:

$3k Bug Bounty - Twitter's OAuth Mistakes

· 4 comments · 450 words · Viewed ~16,093 times


A Twitter login screen. Highlighted is the information that it cannot access your DMs.

Imagine the scenario. You're trying out some cool new Twitter app. It asks you to sign in via OAuth as per usual. You look through the permissions - phew - it doesn't want to access your Direct Messages. You authorise it - whereupon it promptly leaks to the world all your sexts, inappropriate jokes, and dank memes. Tragic! What's going on? Many years ago the official Twitter API keys were…

PodCast review: This Week - The Musical

· 100 words


Logo for This Week The Musical.

Brand new podcasting from The Two LJs - being TV presenter LJ Rich and artist Leila Johnston. It's a happy mix of tech and snark. Rather than two dull blokes chattering away about which iPhone is fastest, it's two women discussing the week's tech news. And occasionally breaking into song. Take a listen It is a delightful twist on the usual podcast fare. Genuinely joyous, and…

Open Glasgow's Moral Maze

· 700 words · Viewed ~240 times


The Glasgow Open Government Licence. Highlighted is a passage saying the data cannot be used for illegal or immoral purposes.

Glasgow City Council has released a treasure-trove of open data. Nearly one-hundred datasets ranging from Live Traffic Information - to historic climate data. A fantastic boon for researches and open government enthusiasts. But there's a sting in the tail. The majority of the datasets are under the Open Government Licence (OGL). That's basically Creative Commons Attribution (CC-BY 4.0). …

Using the WordPress mShots Screenshot API

· 7 comments · 300 words · Viewed ~4,044 times


The Logo for WordPress.

A few years ago, I wrote about Google's secret screenshot API - a slightly cumbersome way to take website screenshots for free. There's another service which you may find simpler to use - mShots from WordPress. Here's how it works: Take any website link: https://twitter.com/JennyVass/status/1067855777040338944 URL Encode it: …

Top 10 reasons to attend an all-male event

· 600 words · Viewed ~335 times


There's been lots of talk recently of the dearth of women attending technical conferences. This problem is blown out of all proportion! There are many excellent reasons to attend an all-male tech event: Reduced chance of having an affair while away on business ⚤ Hetrosexuals only! Won't accidentally mistake a CEO for a cocktail waitress 💁🍸 embarrassing! Excellent networking opportunities i…

Major sites running unauthenticated JavaScript on their payment pages

· 12 comments · 700 words · Viewed ~34,333 times


HTML code from Spotify.

A few months ago, British Airways' customers had their credit card details stolen. How was this possible? The best guess goes something like this: BA had 3rd party JS on its payment page <script src="https://example.com/whatever.js"></script> The 3rd party's site was hacked, and the JS was changed. BA's customers ran the script, which then harvested their credit card details as they were…

Building an Alexa-Powered Electric Blanket

· 10 comments · 600 words · Viewed ~9,519 times


One evening, my wife turned to me in bed and said, "Winter is coming..." Well, what she actually said was "Get your frozen feet away from me, you cold-blooded monster!" The only way to save our marriage? HOOK OUR BED UP TO THE INTERNET! I couldn't find an electric blanket with IoT connectivity - so I built my own. Why? As a person with cold feet, I want to yell at my robot servant to…

Should you use SRI for self-hosted scripts?

· 2 comments · 250 words · Viewed ~721 times


HTML source of Sony's PlayStation website.

Here's a curiosity which I found while stumbling through the Sony PlayStation store. The website loads internally hosted scripts using SRI (SubResource Integrity). Why? Does your work require you to swipe an ID card to access the building? That seems pretty normal. Does your work also remind you to keep your badge visible, and to challenge people who aren't wearing theirs? That also seems…

OpenBenches - some stats

· 3 comments · 500 words · Viewed ~355 times


UK map covered in thousands of markers.

For the last year-and-a-bit, Liz and I have been running OpenBenches.org. An open data website dedicated to memorial benches. Here are some rough and ready numbers about how it has gone so far. 9,870 Benches At the time of writing, we're a little shy of 10,000 benches. As you can see, we have photos from all around the world. 9,000 UK Benches The majority of our benches are in the UK. …

I've broken myself - dealing with RSI

· 2 comments · 200 words · Viewed ~231 times


Terence and Liz at a laptop. Terence is wearing wrist braces.

I've recently been suffering from a nasty bout of RSI. Thanks to the NHS, I know it isn't full Carpal Tunnel Syndrome, which is good. But I do need to take better care of myself. My usual kit is the MS 4000 ergonomic keyboard and an Evoluent Vertical Mouse. But recently I've been travelling a lot, and cramping over a MacBook's tiny keyboard. And that's taken a toll on me. The pain in my…

Dynamic JavaScript and SRI

· 2 comments · 550 words · Viewed ~2,156 times


HTML source of The Guardian website. Polyfill is being loaded from their own CDN.

Some external JavaScript libraries are dynamic. That's a problem for the SRI model of security. How can this be fixed? Definitions Suppose I want my website to have the latest version of the jQuery library. I might use a Content Delivery Network (CDN) to serve the code for me. <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> If an attacker were to…

The Myth of the Pixel Perfect Grid

· 3 comments · 850 words · Viewed ~5,267 times


The letter E displayed on various screens. Each renders differently.

If you've spent any time with graphic designers, you'll know that they love spending your money on imperceptible tweaks to your image files. "It must be pixel-perfect!" they cry. When you query why they've generated the same icon in multiple sizes, each with subtle variations, they cryptically mention how everything must align with "the grid." This is hokum. First Principles When we first…