334: Bag of Heuristics

Embedded.fm · 11 Jun 2020 · 1h 09m · Episode 334

What this episode covers

Matt Godbolt, creator of Compiler Explorer (godbolt.org) and the jsbeeb BBC Micro emulator, discusses the evolution of his open-source tools, the technical details of compiler internals, and the nostalgia of 6502 computing. He explains how Compiler Explorer helps developers understand assembly output, manage ABI constraints, and debug compiler bugs, while also detailing the security and privacy challenges of running arbitrary code on a public web service. Godbolt also shares insights into the BBC Micro's hardware quirks, the impact of Hyrum's Law on legacy systems, and the shift from transparent hardware to opaque modern processors.

Mentioned

Products
Compiler Explorer, jsbeeb, BBC Micro, Commodore 64, Elite, Exile
Tools
GCC, Clang, LLVM
Also
The Dragon Book

Other shows on the same ground, closest first.

  • Oxide and Friends · 1h 30m

    Debugging Methodologies

    Jordan Hendricks and Luqman Aden of Oxide Computer Company detail their methodologies for debugging complex hardware and compiler issues. Hendricks explains how he used the KMDB in-situ debugger to diagnose an NVMe reset hang, discovering that switching from abrupt to normal shutdown notifications resolved the issue. Aden describes his process for debugging a rustc segfault involving inline assembly in async blocks, using LLVM IR analysis and Rust Analyzer to isolate a bug in the compiler's code generation. The episode also covers a third case involving a triple fault caused by undefined behavior in a bare-metal bootloader, highlighting the importance of tooling and collaborative debugging culture at Oxide.

  • 018 - Ghidra

    Thomas Daede, a reverse engineering hobbyist, discusses his experience using Ghidra, the NSA's newly released reverse engineering tool, to analyze firmware from a Sharp X68000 computer. He explains how Ghidra handles custom Application Binary Interfaces (ABIs) and decompiles handwritten assembly into C-like code, noting its user-friendly interface and undo functionality compared to IDA. The conversation covers Ghidra's extensive processor support, its P-code intermediate representation, and its utility for hobbyists modifying old software without source code.

  • The Amp Hour · 57m

    Finding Hardware Flaws with Laura Abbott

    Laura Abbott, an engineer at Oxide Computer, discusses her accidental discovery of a buffer overflow vulnerability in the ROM update mechanism of the NXP LPC55S69 microcontroller while working on Oxide's server root of trust. She explains how Oxide is rebuilding the server from the ground up with a focus on hardware security, utilizing their open-source operating system Hubris and the Rust programming language to mitigate risks like memory safety issues. The conversation covers the architecture of the server's secure components, including the service processor and TrustZone-M, as well as the challenges of remote hardware debugging and contributing to the Linux kernel community.

  • Oxide and Friends · 1h 18m

    Talking Turkeys

    Bryan Cantrill and Adam Leventhal host a Twitter Space with community members discussing tools they are thankful for, including ANTLR, Pest, build.rs, and Saleae logic analyzers. Participants highlight the value of open source software like YubiKey, Node.js, RabbitMQ, WireGuard, Tailscale, and eBPF, while also praising proprietary tools such as Ghidra, CUDA, and Microsoft Excel. The conversation emphasizes how these technologies simplify complex tasks, from parsing and debugging to networking and data visualization, enhancing both productivity and engineering insight.

  • Unnamed Reverse Engineering Podcast · 1h 28m

    058 - Technically Met the Specs

    Eric Schlaepfer and Windell Oskay discuss their book 'Open Circuits,' detailing the process of cutting components in half with sandpaper and grinding wheels to reveal internal structures, while Jacob Creedon, Spencer Moss, Ken, and Will McGuiness share their perspectives on reverse engineering tools like IDA Pro and Ghidra, and the legal and social implications of technology. The group debates the future of AI, the validity of NFTs, and the importance of right-to-repair legislation, with Spencer Moss from Google and Ken from Somerset Recon highlighting the increasing complexity of hardware security. Mike Ryan from Ice 9 Consulting joins to discuss Bluetooth security, the obsolescence of passwords, and the dual-use nature of technology in the context of government regulation.

The summary, chapters and topics are generated from the episode’s audio by this directory, not written by Embedded.fm. The episode itself belongs to its publisher.