Commit Graph
65 Commits
Author SHA1 Message Date
Kevin Thomas 67b4312cff WEEK07-BN: add Binary Ninja lesson for Week 7 (constants + I2C LCD)
WEEK07-BN.md/.pdf mirroring the -BN series: build/flash/symbol map, load the raw
.bin, dynamic (break at the FAV_NUM printf, live r1=43) then static (resolve
functions incl. lcd_1602.c, patch FAV_NUM 2a->2b, OTHER_FAV_NUM movw 39->40, LCD
'Reverse'->'Exploit'). README links it.
2026-10-03 19:48:55 -04:00
Kevin Thomas f7ab170ed2 WEEK06-BN: add Binary Ninja lesson for Week 6 (static variables)
WEEK06-BN.md/.pdf mirroring WEEK04-BN: build/flash/symbol map, load the raw .bin,
dynamic (GDB MI break at the first printf, live r1=43) then static (resolve
functions, patch 0x10000264 2a->2b, invert the button logic 0x10000288 01->00,
export/convert/flash). README links it.
2026-10-03 19:39:07 -04:00
Kevin Thomas 55251a2d52 WEEK05-BN: add Binary Ninja lesson for Week 5 (float + double IEEE 754)
New WEEK05-BN.md/.pdf mirroring WEEK04-BN: build/flash/symbol map, load the raw
.bin, dynamic (GDB MI break + live double hack) then static (resolve functions,
patch the 42.5->99.0 one-word and 42.52525->99.99 two-word constants, export,
convert, flash) for both 0x000e float and 0x0011 double. README links it.
2026-10-03 18:50:25 -04:00
Kevin Thomas c2bab7cbd6 README: name arm-none-eabi-gdb in the toolchain; split compile/flash per platform
The Pico extension's Arm GNU Toolchain includes arm-none-eabi-gdb (used by the
GDB / GDB MI labs) -- call it out. Keep the identical cmake build for all OSes but
give full Windows / macOS / Linux compile+flash blocks, plus the explicit
PICO_SDK_PATH/PICO_TOOLCHAIN_PATH fallback.
2026-10-03 16:43:25 -04:00
Kevin Thomas d9c2922445 README: add native Development Environment Setup (Windows/macOS/Linux)
Install everything for the course without a VM: VS Code Pico extension (SDK,
Arm toolchain, picotool, OpenOCD), Binary Ninja Personal, Ghidra + JDK 21, and a
serial monitor. Ends with a compile + SWD flash example for 0x0001 hello, world.
2026-10-03 16:39:29 -04:00
Kevin Thomas 3e52dd0412 Add Week 4 Binary Ninja notebook and OpenOCD/flash host tooling
- WEEK04-BN.md/.pdf: full Binary Ninja dynamic + static lab for 0x0005 and 0x0008
- README: link the Week 4-BN notebook after Week 4a
- debug-server.sh/.ps1: OpenOCD launcher (USE_CORE=0, -rtos none, BP_ADDR)
- flash.sh/.ps1: UF2 flash helpers
- pyproject.toml: ruff config for root host-side scripts
2026-10-03 11:33:10 -04:00
Kevin Thomas 34f21bcd52 Update README.md 2026-10-02 09:37:56 -04:00
Kevin Thomas ec1964b5cc Revise today's tutorial and lesson information
Updated tutorial date and lesson details for October 1, 2026.
2026-10-01 09:46:18 -04:00
Kevin Thomas 8c21fb50c6 Update README.md 2026-09-30 09:30:14 -04:00
Kevin Thomas bbda3d31d1 Update README.md 2026-09-29 09:49:06 -04:00
Kevin Thomas 2ac27dc108 Update README.md 2026-09-29 08:47:05 -04:00
Kevin Thomas 4b92d17357 Update README.md 2026-09-28 18:13:10 -04:00
Kevin Thomas 67d3226b22 Update README.md 2026-09-28 12:42:28 -04:00
Kevin Thomas c9c23dd413 Update README.md 2026-09-28 12:06:04 -04:00
Kevin Thomas a06615b615 Update README.md 2026-09-28 10:38:34 -04:00
Kevin Thomas 026bdb9597 Update README.md 2026-09-28 09:52:26 -04:00
Kevin Thomas b3e0a05ade Update README.md 2026-09-27 19:23:22 -04:00
Kevin Thomas 35eacd2c0e Course update: lessons, CTF 0x0011a_cb, and documentation
- 0x0011a_cb (Operation Dark Vector): nation-state CTF redesign with an
  AES-128-ECB sealed target and a plaintext launch origin; RP2350 firmware with
  bearing-driven servo, tri-color LEDs, GSV stats, and a realistic no-fix path
- docs: story-driven classified brief, GDB and Ghidra tutorials with deep
  step-throughs, regenerated artifacts and PDFs
- scripts: docstring standard, AES per-student randomizer, telemetry monitor
- week 3 to week 5 lessons: Ghidra patching tutorial, CMSIS-SVD hardware RE,
  double floating-point and GPIO architecture chapters, README structure
2026-09-27 14:18:56 -04:00
Kevin Thomas 5201ee4b6b Revise today's tutorial and lesson information
Updated tutorial date and lesson details.
2026-08-27 09:10:37 -04:00
Kevin Thomas 3213e3c944 Revise tutorial for August 26, 2026
Updated tutorial date and lesson details.
2026-08-26 08:24:23 -04:00
Kevin Thomas da05a298c9 Revise today's tutorial and lesson details
Updated tutorial date and lesson information.
2026-08-25 09:53:57 -04:00
Kevin Thomas c33cef279b Revise today's tutorial and lesson information
Updated tutorial date and lesson details for the Embedded Assembler Course.
2026-08-24 08:57:54 -04:00
Kevin Thomas 9d63c21229 Revise today's tutorial and lesson information
Updated tutorial date and lesson details for the Embedded Assembler Course.
2026-08-23 09:50:28 -04:00
Kevin Thomas 97517cd3f3 Revise today's tutorial and lesson information
Updated the tutorial date and lesson details.
2026-08-22 09:13:39 -04:00
Kevin Thomas fb856b1662 Revise tutorial date and lesson content
Updated today's tutorial date and lesson details.
2026-08-21 19:41:57 -04:00
Kevin Thomas cd8920e6ed Revise tutorial date and lesson content
Updated the tutorial date and lesson details for the Hacking Embedded Rust Course.
2026-08-16 09:11:27 -04:00
Kevin Thomas 8973e04b5e Revise today's tutorial and lesson information
Updated tutorial date and lesson details for embedded Rust course.
2026-08-15 08:17:33 -04:00
Kevin Thomas 556116e6cc Update README.md 2026-08-14 16:59:32 -04:00
Kevin Thomas bbd9cff410 Revise tutorial date and lesson content
Updated tutorial date and lesson details for the Hacking Embedded Rust Course.
2026-08-14 07:49:12 -04:00
Kevin Thomas 9f52047694 Update README.md 2026-08-13 07:58:17 -04:00
Kevin Thomas 481b3ca511 Update tutorial date and lesson details 2026-08-12 08:12:12 -04:00
Kevin Thomas c8f1b70fbe Update tutorial date and lesson content
Updated the tutorial date and lesson number, and changed the content to reflect the new chapter on building and flashing.
2026-08-10 11:15:22 -04:00
Kevin Thomas dbf9232bf3 Update README.md 2026-08-04 08:18:20 -04:00
Kevin Thomas 8f7ab37025 Update tutorial date and lesson information 2026-08-03 08:47:57 -04:00
Kevin Thomas ef6805e391 Update README.md 2026-08-02 08:09:26 -04:00
Kevin Thomas 7819024e8b Revise today's tutorial and lesson information
Updated tutorial date and lesson details for the Hacking Embedded Rust Course.
2026-08-01 07:20:01 -04:00
Kevin Thomas 234d7d6d0a Update README.md 2026-07-31 07:20:48 -04:00
Kevin Thomas a605492a9c Update README.md 2026-07-30 07:23:28 -04:00
Kevin Thomas 86a78cddd5 Update README.md 2026-07-29 09:12:57 -04:00
Kevin Thomas 6302b8317b Update README.md 2026-07-28 09:27:04 -04:00
Kevin Thomas 207c68e8fd Update README.md 2026-07-27 09:27:01 -04:00
Kevin Thomas 6f3d0fb83c Update README.md 2026-07-26 09:18:32 -04:00
Kevin Thomas d019ef3027 Update README.md 2026-07-25 09:28:53 -04:00
Kevin Thomas c32b660111 Update README.md 2026-07-24 09:39:33 -04:00
Kevin Thomas 0af3fa3611 Update README.md 2026-07-23 08:36:15 -04:00
Kevin Thomas beab9b1895 Update README.md 2026-07-22 10:00:22 -04:00
Kevin Thomas 4cf0ba300b Update README.md 2026-07-21 07:42:04 -04:00
Kevin Thomas 0fbc0735e8 Update README.md 2026-07-20 07:39:02 -04:00
Kevin Thomas 73146389a7 Update README.md 2026-07-19 13:48:50 -04:00
Kevin Thomas db5154357e Merge branch 'main' of github.com:mytechnotalent/Embedded-Hacking 2026-07-19 09:30:28 -04:00