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.