Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 115 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
115
Dung lượng
3 MB
Nội dung
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Silver Needleinthe Skype
Philippe BIONDI Fabrice DESCLAUX
phil(at)secdev.org / philippe.biondi(at)eads.net
serpilliere(at)rstack.org / fabrice.desclaux(at)eads.net
EADS Corporate Research Center — DCR/STI/C
IT sec Lab
Suresnes, FRANCE
BlackHat Europe, March 2
nd
and 3
rd
, 2006
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 1/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Outline
1
Context of the study
2
Skype protections
Binary packing
Code integrity checks
Anti debugging technics
Code obfuscation
3
Skype seen from the network
Skype network obfuscation
Low level data transport
Thought it was over?
How to speak Skype
4
Advanced/diverted Skype functions
Analysis of the login phase
Playing with Skype Traffic
Nice commands
5
Conclusion
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 2/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Problems with Skype
The network view
From a network security administrator p oint of view
Almost everything is obfuscated (looks like /dev/random)
Peer to peer architecture
many peers
no clear identification of the destination peer
Automatically reuse proxy credentials
Traffic even when the software is not used (pings, relaying)
=⇒ Impossibility to distinguish normal behaviour from information
exfiltration (encrypted traffic on strange ports, night activity)
=⇒ Jams the signs of real information exfiltration
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 3/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Problems with Skype
The system view
From a system security administrator point of view
Many protections
Many antidebugging tricks
Much ciphered code
A product that works well for free (beer) ?! From a company
not involved on Open Source ?!
=⇒ Is there something to hide ?
=⇒ Impossible to scan for trojan/backdoor/malware inclusion
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 4/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Problems with Skype
Some legitimate questions
The Chief Security Officer point of view
Is Skype a backdoor ?
Can I distinguish Skype’s traffic from real data exfiltration ?
Can I block Skype’s traffic ?
Is Skype a risky program for my sensitive business ?
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 5/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Problems with Skype
Idea of usage inside companies ?
At least 700k regularly used only on working days.
2e+06
2.5e+06
3e+06
3.5e+06
4e+06
4.5e+06
5e+06
5.5e+06
6e+06
0 500 1000 1500 2000 2500
connected
time
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 6/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Problems with Skype
Context of our study
Our point of view
We need to interoperate Skyp e protocol with our firewalls
We need to check for the presence/absence of backdoors
We need to check the security problems induced by the use of
Skype in a sensitive environment
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 7/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Binary packing
Code integrity checks
Anti debugging technics
Code obfuscation
Outline
1
Context of the study
2
Skype protections
Binary packing
Code integrity checks
Anti debugging technics
Code obfuscation
3
Skype seen from the network
Skype network obfuscation
Low level data transport
Thought it was over?
How to speak Skype
4
Advanced/diverted Skype functions
Analysis of the login phase
Playing with Skype Traffic
Nice commands
5
Conclusion
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 8/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Binary packing
Code integrity checks
Anti debugging technics
Code obfuscation
Encryption
Avoiding static disassembly
Some parts of the binary are xored by a hard-coded key
In memory, Skype is fully decrypted
Skype Binary
Decryption Procedure:
Each encrypted part
of the binary will be
decrypted at run time.
Encrypted part
Clear part
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 9/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Binary packing
Code integrity checks
Anti debugging technics
Code obfuscation
Structure overwriting
Anti-dumping tricks
1
The program erases the beginning of the code
2
The program deciphers encrypted areas
3
Skype import table is loaded, erasing part of the original
import table
Ciphered
code
Original
import table
Ciphered
code
Original
import table
Deciphered
code
Original
import table
Deciphered
code
Original
import table
Skype
import table
Code Erased code
Transition code
Erased code Erased code
Transition code Transition code Transition code
Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 10/98
[...]... DESCLAUX SilverNeedleintheSkype 22/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging technics Code obfuscation Twin processes debugging Process 1 Soft Hard Process 2 Twin Debugger PC Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 22/98 Skype protections Skype seen from the network Advanced/diverted Skype. .. breakpoints before and after the checksumer of the twin process 4 Use the twin process to compute the checksum value 5 Write it down 6 Report it into the first process and jump the checksumer 7 Go to point 2 Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 21/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging... break inthe detection code Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 32/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging technics Code obfuscation Outline 1 2 3 4 5 Context of the study Skype protections Binary packing Code integrity checks Anti debugging technics Code obfuscation Skype seen from the. .. BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 26/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging technics Code obfuscation Outline 1 2 3 4 5 Context of the study Skype protections Binary packing Code integrity checks Anti debugging technics Code obfuscation Skype seen from the network Skype network obfuscation... DESCLAUX SilverNeedleintheSkype 18/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging technics Code obfuscation Global checksumer scheme Each rectangle represents a checksumer An arrow represents the link checker/checked In fact, there were nearly 300 checksums Philippe BIONDI, Fabrice DESCLAUX SilverNeedleinthe Skype. .. DESCLAUX SilverNeedleintheSkype 23/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging technics Code obfuscation Checksum execution and patch Solution 2 1 Compute checksum for each one 2 The script is based on a x86 emulator 3 Spot the checksum entry-point: the pointer initialization 4 Detect the end of the loop 5 Then,... DESCLAUX SilverNeedleintheSkype 16/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging technics Code obfuscation Semi polymorphic checksumers Interesting characteristics Each checksumer is a bit different: they seem to be polymorphic They are executed randomly The pointers initialization is obfuscated with computations The. .. over? How to speak Skype Advanced/diverted Skype functions Analysis of the login phase Playing with Skype Traffic Nice commands Conclusion Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 27/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging technics Code obfuscation Counter measures against dynamic attack... used in hidden imports 674 classic imports 169 hidden imports Philippe BIONDI, Fabrice DESCLAUX KERNEL32.dll WINMM.dll WS2 32.dll RPCRT4.dll SilverNeedleintheSkype 13/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging technics Code obfuscation Outline 1 2 3 4 5 Context of the study Skype protections Binary packing... network Skype network obfuscation Low level data transport Thought it was over? How to speak Skype Advanced/diverted Skype functions Analysis of the login phase Playing with Skype Traffic Nice commands Conclusion Philippe BIONDI, Fabrice DESCLAUX SilverNeedleintheSkype 33/98 Skype protections Skype seen from the network Advanced/diverted Skype functions Binary packing Code integrity checks Anti debugging . DESCLAUX Silver Needle in the Skype 1/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Outline
1
Context of the study
2
Skype. DESCLAUX Silver Needle in the Skype 8/98
Skype protections
Skype seen from the network
Advanced/diverted Skype functions
Binary packing
Code integrity