Steps
- Read up on the subject
- Snoop the protocol
- Take educated guesses
- Experiment
- Rinse and repeat...
Read up on the subject
- Google!
- Get any manuals you can and read them
- Trawl any knowledge-base or tech support forums for details
Snoop the protocol
- For ethernet: Ethereal/Wireshark
- For USB: ???
- For serial: socat
- ... actually socat's good for lots of things
- ... but not perfect - you should try writing your own too
Take educated guesses
- Compare the protocol to any UI elements
- Search for common strings in docs from step 1
- Think what you'd do if you were writing the system
- ... but assume your crappy v0.1 is in production and you never got a
chance to bugfix it
Experiment
- Vary UI elements one at a time and see what changes
- Feed deliberate crap to the UI/unit and see what happens
- See if you can emulate the unit well enough to fool the unit
Rinse and repeat
- Did it work?
- Keep going until it does!
←
→
/
#