etc.git


etc

~ scripts and random things
git clone https://github.com/djnnvx/etc.git
log | files | refs | archive

README.md (1104B)

      1 # doip-uds
      2 
      3 Fuzzers and clients for DoIP (ISO 13400) and UDS (ISO 14229) over Ethernet.
      4 
      5 | File | What it does |
      6 |---|---|
      7 | `doipstate.py` | Sequence fuzzer. Holds several live connections and mutates the order of operations rather than the bytes. |
      8 | `doipfuzz.py` | One-shot case fuzzer over DoIP headers, routing activation and UDS. |
      9 | `doip.py` | Client. discover, info, send, scan, shell. |
     10 | `doip_tls.py` | Client for DoIP over TLS on 3496. |
     11 | `uds_protection_map.py` | Sweeps all 256 service IDs and classifies each by its negative response code. |
     12 
     13 Prefer `doipstate.py`. One-shot cases on fresh connections cannot reach state
     14 that takes a long session to build, and that is where the interesting behaviour
     15 tends to be.
     16 
     17     python3 doipstate.py -t 127.0.0.1 -n 20000 --seed 1 --len 12
     18     python3 doipstate.py replay sequences/000123_PERSISTED.json
     19 
     20 Both fuzzers exclude the UDS services that write, reset or route: `0x2E`,
     21 `0x31`, `0x11`, `0x34`-`0x37`, `0x85`, `0x28`, and `0x27` with an even
     22 subfunction. `doipfuzz.py --unsafe` lifts that. Do not lift it against hardware
     23 you care about.