L3akCTF 2025 — Fidget Spinner Writeup
This is a writeup for an OSINT challenge part of the 2025 L3ak CTF. The format was similar to GeoGuessr: you are given a random location on Google Street View and have to pinpoint this location on a map, as accurately as possible.
This write-up will explore the methods through which our team THEM?! solved this challenge.
Finding the general area
You can access the challenge here. In case it gets taken down, here are a few images:
Searching the windmill, the most notable element in these picture, in Google Lens yields the following results:
This kind of AI overview is powerful but always need to be checked, in case of hallucinations. Here, we can use the street sign, near the yellow building in our second image. Searching for “priority road sign sweden” yield the following image from Wikipedia, confirming that this is likely a Swedish sign.
Assuming that Google Lens is right, we restricted our search to the island of Öland. According to Wikipedia, this means we had to cover an area of more than 1300 km square kilometers.
Taking a shortcut
To avoid looking at thousands of kilometers of road, I used Overpass-turbo.eu to generate a list of all the windmills on the island.
[out:json][timeout:25];
//restrict our search to the island
area[name="Öland"];
(
// search for windmills
nwr["man_made"="windmill"](area);
);
// print results
out geom;
This gives us quite a large number of results, to check every pin in Google Street View in a data set this size, it is often best to export it as a .kml file and drop it into Google Earth. This will allow you to thoroughly examine each points by going down the list pin by pin.
Unfortunately, this did not lead us to the solution: Open Street Map (Overpass-turbo’s data source) is a collaborative initiative, relying on its vast community to maintain its database. This means that some elements can be missing for it: if nobody bothered adding this particular windmill, it will not appear in our search results. OSM is an invaluable source of information for GEOINT, but it is not infallible.
Please note that this windmill has since been added, however it was not present at the time of the CTF.
Reducing the area of research
After realizing that the list from Overpass-turbo.eu did not contain our target, we had to think of another way to narrow down our area of research.
Road Orientation
Because of the low altitude of the sun, we assumed this was either early or late in the day, which would position the sun in the east or the west. Because of its position in the picture, it would indicate that our road is roughly oriented North to South.
Type of road
The road shown in the picture is a very small road with no markings on the sides nor the center. This points to a remote area, separated from the main roads. This helped us to steer clear of the two main roads: road 136 and its, albeit smaller, equivalent on the east side of the island.
After this, the only thing left to do was to methodically check suitable roads. Unfortunately we quickly noticed that our assumption regarding the direction of the road was most likely false: because of how far north the island is. See below this screenshot from Google Street View with similar lighting as our target, in which you can see the sun while facing south. This Suncalc.org overview shows the sun’s behavior in December 2020. The orange line representing sunrise and the red line sunset.
By broadening the search to roads facing any direction and focusing on the northern part of the island due to architectural similarities, I was able to find the correct address here: 57.12492, 16.94668.
Tools
Google Street View, Overpass Turbo, Google Maps, Google Earth Pro, OpenStreetMap Wiki and Suncalc.org.