Hackaday Links Column Banner

Hackaday Links: July 21, 2024

When monitors around the world display a “Blue Screen of Death” and you know it’s probably your fault, it’s got to be a terrible, horrible, no good, very bad day at work. That’s likely the situation inside CrowdStrike this weekend, as engineers at the cybersecurity provider struggle to recover from an update rollout that went very, very badly indeed. The rollout, which affected enterprise-level Windows 10 and 11 hosts running their flagship Falcon Sensor product, resulted in machines going into a boot loop or just dropping into restore mode, leaving hapless millions to stare at the dreaded BSOD screen on everything from POS terminals to transit ticketing systems.

Continue reading “Hackaday Links: July 21, 2024”

Do Your Research

We were talking about a sweet hack this week, wherein [Alex] busts the encryption for his IP web cam firmware so that he can modify it later. He got a number of lucky breaks, including getting root on the device just by soldering on a serial terminal, but was faced with having to reverse-engineer a binary that implemented RSA encryption and decryption.

Especially when they’re done right, and written to avoid side-channel attacks, encryption routines aren’t intuitive, even when you’re looking at the C source. Reversing it from the binary would be a tremendous hurdle.

That’s when [Alex] started plugging in strings he found in the binary into a search engine. And that’s when he found exactly the open source project that the webcam used, which gave him the understanding he needed to crack the rest of the nut.

Never forget! When you’re doing some reverse engineering, whether hardware or software, do a search for every part number and every string you find in memory. If you’re like me, it might feel like cheating a little bit, but it’s just being efficient. It’s what all your hacker heroes say they do, and if you’re lucky, it might just be the break you need too.

An image of a man in glasses in a circle placed on a black background. The title "Pierce Nichols: Teaching Robots to Sail" is on white lettering in the bottom left corner.

Supercon 2023: [Pierce Nichols] Is Teaching Robots To Sail

Sailing the high seas with the wind conjures a romantic notion of grizzled sailors fending off pirates and sea monsters, but until the 1920s, wind-powered vessels were the primary way goods traveled the sea. The meager weather-prediction capabilities of the early 20th Century spelled the end of the sailing ship for most cargo, but cargo ships currently spend half of their operating budget on fuel. Between the costs and growing environmental concerns, [Pierce Nichols] thinks the time may be right for a return to sails.

[Nichols] grew up on a sailing vessel with his parents, and later worked in the aerospace industry designing rockets and aircraft control surfaces. Since sailing is predominantly an exercise in balancing the aerodynamic forces of the sails with the hydrodynamic forces acting on the keel, rudder, and hull of the boat, he’s the perfect man for the job.

WhileAn image of a sailing polar diagram on the left next to the words "A) Dead upwind (“in irons”) B) Close-hauled C) Beam reach (90˚ to the wind - fastest for sailing vessels D) Broad reach E) Run" The letters correspond to another diagram of a sailboat from the top showing it going directly into the wind (A), slightly into (B), perpendicular to (C), slightly away (D), and directly away from the wind / downwind (E). the first sails developed by humans were simple drag devices, sailors eventually developed airfoil sails that allow sailing in directions other than downwind. A polar diagram for a vessel gives you a useful chart of how fast it can go at a given angle to the wind. Sailing directly into the wind is also known as being “in irons” as it doesn’t get you anywhere, but most other angles are viable.

After a late night hackerspace conversation of how it would be cool to circumnavigate the globe with a robotic sailboat, [Nichols] assembled a team to move the project from “wouldn’t it be cool” to reality with the Pathfinder Prototype. Present at the talk, this small catamaran uses two wing sails to provide its primary propulsion. Wing sails, being a solid piece, are easier for computers to control since soft sails often exhibit strange boundary conditions where they stop responding to inputs as expected. Continue reading “Supercon 2023: [Pierce Nichols] Is Teaching Robots To Sail”

Hackaday Podcast Episode 280: TV Tubes As Amplifiers, Smart Tech In Sportsballs, And Adrian Gives Us The Fingie

Despite the summer doldrums, it was another big week in the hacking world, and Elliot sat down with Dan for a rundown. Come along for the ride as Dan betrays his total ignorance of soccer/football, much to Elliot’s amusement. But it’s all about keeping the human factor in sports, so we suppose it was worth it. Less controversially, we ogled over a display of PCB repair heroics, analyzed a reverse engineering effort that got really lucky, and took a look at an adorable one-transistor ham transceiver. We also talked about ants doing surgery, picking locks with nitric acid, a damn cute dam, and how to build one of the world’s largest machines from scratch in under a century. Plus, we answered the burning question: can a CRT be used as an audio amplifier? Yes, kind of, but please don’t let the audiophiles know or we’ll never hear the end of it.

Worried about attracting the Black Helicopters? Download the DRM-free MP3 and listen offline, just in case.

Continue reading “Hackaday Podcast Episode 280: TV Tubes As Amplifiers, Smart Tech In Sportsballs, And Adrian Gives Us The Fingie”

Supercon 2023: Bringing Arcade Classics To New Hardware

The processing power of modern game consoles is absolutely staggering when compared to the coin-op arcade machines of the early 1980s. Packed with terabytes of internal storage and gigabytes of RAM, there’s hardly a comparison to make with the Z80 cabinets that ran classics like Pac-Man. But despite being designed to pump out lifelike 4K imagery without breaking a virtual sweat, occasionally even these cutting-edge consoles are tasked with running one of those iconic early games like Dig Dug or Pole Position. Nostalgia is a hell of a drug…

As long as there are still demand for these genre-defining games, developers will have to keep figuring out ways to bring them to newer — and vastly more complex — systems. Which is precisely the topic of Bob Hickman’s 2023 Supercon talk, The Bits and Bytes of Bringing Arcade Classics to Game Consoles. Having spent decades as a professional game developer, he’s got plenty of experience with the unique constraints presented by both consoles and handhelds, and what it takes to get old code running on new silicon.

Continue reading “Supercon 2023: Bringing Arcade Classics To New Hardware”

Secrets Of The Old Digital Design Titans

Designing combinatorial digital circuits seems like it should be easy. After all, you can do everything you want with just AND, OR, and NOT gates. Bonus points if you have an XOR gate, but you can build everything you need for combinatorial logic with just those three components. If all you want to do is design something to turn on the light when the ignition is on AND door 1 is open OR door 2 is open, you won’t have any problems. However, for more complex scenarios, how we do things has changed several times.

In the old days, you’d just design the tubes or transistor circuits you needed to develop your logic. If you were wiring up everything by hand anyway, you might as well. But then came modules like printed circuit boards. There was a certain economy to having cards that had, say, two NOR gates on a card. Then, you needed to convert all your logic to use NOR gates (or NAND gates, if that’s what you had).

Small-scale ICs changed that. It was easy to put a mix of gates on a card, although there was still some slight advantage to having cards full of the same kind of gate. Then came logic devices, which would eventually become FPGAs. They tend to have many of one kind of “cell” with plenty of logic gates on board, but not necessarily the ones you need. However, by that time, you could just tell a computer program what you wanted, and it would do the heavy lifting. That was a luxury early designers didn’t have. Continue reading “Secrets Of The Old Digital Design Titans”

FLOSS Weekly Episode 792: Rust Coreutils

This week Jonathan Bennett and Jeff Massie chat with Sylvestre Ledru about the Rust Coreutils! Why would we want to re-implement 50 year old utilities, what’s the benefit of doing them in Rust, and what do the maintainers of the regular coreutils project think about it?

Continue reading “FLOSS Weekly Episode 792: Rust Coreutils”