Hiding Secret Messages In Skype Silences
Orome1 writes "A group of researchers from the Institute of Telecommunications of the Warsaw University of Technology have devised a way to send and receive messages hidden in the data packets used to represent silences during a Skype call. After learning that Skype transmits voice data in 130-byte packets and the silences in 70-byte packets, the researchers came upon the idea of using the latter to conceal the sending and receiving of additional messages."
If you talk long conversation, specific pauses might simply work as morse code.
There are no atheists when recovering from tape backup.
I wonder why Skype needs 70 bytes to transmit essentially nothing. Maybe they already do use it for secret data transmission, just to their own servers?
The Tao of math: The numbers you can count are not the real numbers.
If you are going to hide something, don't let everyone know where you put it.
Now that the exploit has been discussed it will be watched out for.
Don't know something? Look it up. Still don't know? Then ask.
Nothing to see hear.
So skype has 1kilobit/sec spare capacity when transmitting silence ? How much data does it actually sent then ? just for silence ?
This protocol is either very inefficient, or there is reason for this 'waste' of bandwidth. So what does skype use it for ?
From TFA, it's 70 bytes per packet (560 bits, excluding packet overhead), so less than 2 packets/second gives 1kbit/second of data. That doesn't seem all that inefficient.
There are a million ways to communicate in secret, and this ranks among the stupidest.
Which ways are less stupid than hiding your packets in a stream that's believed to be innocuous and even if the voice packets are monitored, your hidden data would presumably remain hidden?
C may currently have overtaken Java as the most popular language but Whitespace is going to overtake them all!
Mielipiteet omiani - Opinions personal, facts suspect.
Each side has a very smart bridge.
If bridge A sees an incoming 130 byte packet from the LAN side thats obviously skype, pass it.
If bridge A sees an incoming 70 byte packet from the LAN side thats obviously skype, add a 60 byte encrypted / hashed / whateverd back channel of data.
If bridge B sees an incoming 130 byte packet from the LAN side thats obviously skype, ram it thru the decrypt / dehash / whateverd thing and see if the last 60 bytes decodes to a valid back channel data packet. To a crude first approximation your bit error rate will approximate your magic number or header or whatever length, so requiring the decrypted packet data to begin with 0x1234 means you'll only false positive about once in 2**32 decodes, probably good enough for text, maybe not so good for DVD iso transfer.
This simple idea is pretty simple to traffic analyze. Are the conversation patterns more like speech or embedded text? A slightly intelligent algo on the TX side could fix that (perhaps only the first silence packet after normal speech gets special data, or it only sends special data in a vaguely normal conversational (very) random pattern). You can come up with traffic analysis systems all day.. my rev-2 design could be caught by displaying a histogram of how long each stretch of silence is, how odd that this convo 1 packet long silences match the typical graph for 2 packet long silences instead of typical 1 packet long...
"Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
3
2
1
Because MicroSoft will have none of this, obviously.
I was promised a flying car. Where is my flying car?
Have gnu, will travel.
Side channel attacks are old-school but any security researcher worth their title knows about them.
This was a popular attack in the 60's and 70's for governments.
Decades ago CS programs taught about how spies once leaked data from secret-privileged machines by emitting communications through CPU load, or through disk usage, or through various other timing attacks.
//TODO: Think of witty sig statement