Uploaded November 2021 | Updated September 2026, 1 week ago
In this stream we do some "fuzzing" of NT 4.0. We end up finding bugs so fast that we immediately start writing some triage tools. We mainly write a .DBG symbol parser and importer to Binary Ninja.
github.com/gamozolabs/coff_nm
00:00:00 Italian
00:07:35 Why I'm getting 2gbps full duplex dedicated ethernet
00:24:15 How'd you learn about software eng at such a young age
00:32:30 Fixing a handle leak in our threading implementation
00:46:50 Fixing thread stack leak by having the thread free it's own stack
01:20:10 Creating 10,000 threads with no leaks!
01:21:50 Starting our "fuzzer"
01:37:05 "This shouldn't be able to find a blue screen"
01:52:00 Figuring out how to get information out of old crash dumps
02:02:20 mipskd.exe allows us to open dumps!?
02:26:40 "Scripting" KD with notepad find and replace to dump all symbols from the dump
02:48:30 Desu_Used claims 100,000 channel point reward to drop what I'm doing and rewrite it in Rust (symbol dumper)
03:07:20 Initial debug info parsing
03:14:40 Section header parsing
03:24:15 Debug directory parsing
03:47:00 COFF debug dircetory parsing
04:40:40 We have symbol names!
04:51:20 Trying to figure out how to associate file:line info with addresses
06:45:10 Okay we actually found a way to associate files with addresses, but it was really hard
07:02:00 Polishing up our DBG parsing code
07:26:20 Creating command line tool out of our DBG parser
07:33:40 Adding CAB support so that .DB_ files will automatically be decompressed
07:46:15 It works!!!
07:54:50 Writing README.md
08:02:11 Writing Binary Ninja script to consume tool output to symbolize binaries
08:54:25 Polishing our Binary Ninja script by turning it into a plugin
09:04:50 Success! Fully symbolized (and typed by mangling) Binja output, with source line comments!
09:16:50 Just browsing around NT code with our new tool!
In this stream we do some "fuzzing" of NT 4.0. We end up finding bugs so fast that we immediately start writing some triage tools. We mainly write a .DBG symbol parser and importer to Binary Ninja.
github.com/gamozolabs/coff_nm
00:00:00 Italian
00:07:35 Why I'm getting 2gbps full duplex dedicated ethernet
00:24:15 How'd you learn about software eng at such a young age
00:32:30 Fixing a handle leak in our threading implementation
00:46:50 Fixing thread stack leak by having the thread free it's own stack
01:20:10 Creating 10,000 threads with no leaks!
01:21:50 Starting our "fuzzer"
01:37:05 "This shouldn't be able to find a blue screen"
01:52:00 Figuring out how to get information out of old crash dumps
02:02:20 mipskd.exe allows us to open dumps!?
02:26:40 "Scripting" KD with notepad find and replace to dump all symbols from the dump
02:48:30 Desu_Used claims 100,000 channel point reward to drop what I'm doing and rewrite it in Rust (symbol dumper)
03:07:20 Initial debug info parsing
03:14:40 Section header parsing
03:24:15 Debug directory parsing
03:47:00 COFF debug dircetory parsing
04:40:40 We have symbol names!
04:51:20 Trying to figure out how to associate file:line info with addresses
06:45:10 Okay we actually found a way to associate files with addresses, but it was really hard
07:02:00 Polishing up our DBG parsing code
07:26:20 Creating command line tool out of our DBG parser
07:33:40 Adding CAB support so that .DB_ files will automatically be decompressed
07:46:15 It works!!!
07:54:50 Writing README.md
08:02:11 Writing Binary Ninja script to consume tool output to symbolize binaries
08:54:25 Polishing our Binary Ninja script by turning it into a plugin
09:04:50 Success! Fully symbolized (and typed by mangling) Binja output, with source line comments!
09:16:50 Just browsing around NT code with our new tool!
