Rust is a general-purpose programming language emphasizing performance, type safety, and concurrency. It enforces memory safety, meaning that all references point to valid memory. It does so without a traditional garbage collector; instead, both memory safety errors and data races are prevented by the “borrow checker”, which tracks the object lifetime of references at compile time.
reasons
- I want to add a systems programming language to my go-to languages
- compile time type safety
- compile time memory safety
- compile to any target, including windows
- interesting concurrency model
- suggested part of Memory Safe Roadmaps by intelligence authorities
- use in cyber security
- secure and performant security tooling
- secure and performant malware
- both imperative, functional ánd async
chapters
rust cybersec quotes
annotations
They revealed that ransomware gangs are increasingly turning to Rust due to its speed and efficiency, posing a new challenge for security professionals.
Building secure multithreaded and parallel applications is essential for many cybersecurity tasks, such as vulnerability scanning and intrusion detection
Notorious ransomware groups like BlackCat, Hive, and RansomExx have reportedly adopted Rust to develop their tools. This shift highlights the effectiveness of Rust in bypassing traditional security measures, posing a significant challenge for defenders.
Link to originalWebAssembly (WASM): Rust’s ability to compile to WASM allows developers to create secure and performant browser extensions, web applications, and serverless functions, expanding the scope of its security application.
rust project ideas
- boflab rust version
- tweedekamer stukken rag llm liveblog
- turning tkconv into grafana stats
- windows rust malware lab
- arduino lightbutton game in rust (w embassy?)
- Rust USB device driver
- customising Nostr relay nostr-rs-relay
- programming photon board https://github.com/japaric-archived/photon-quickstart#photon-quickstart
- rewriting rasplogger
- Obsidian-LLM-RAG-rs
- contribute to white noise nostr MLS client
- microsdk (https://kerkour.com/rust-patterns-micro-sdks)
rust codebases
- white noise (MLS nostr chat client)
- Theseus os (operating system)
- sled (database)
- rustscanner (nmap)
- ferox (file enumeration)
- libafl (fuzzer)
- lsniffglue (sniffer)
courses
- rust in 24 lunches
- Tokio tutorial
- rustlings challenges
- black hat rust
- https://rust-exercises.com/100-exercises/
- primeagen frontendmasters (rust for typescript developers)
- tip https://www.udemy.com/course/ultimate-rust-crash-course/
resources
techniques to investigate
- impl from
- arcmutex
- statemachine
- fuzzing stack example in ntp-rs
- wrapstacks?
- look into Type Aliases