To overcome the challenge of the lack of low level packet
access, we implemented custom TCP and UDP protocols to
carry our legitimate application trac. We encode a covert
timing channel within the legitimate channel by altering the
delays between protocol messages.