Skype - Wielki Brat i botnet w jednym?
- Paweł Krawczyk,
- 24.04.2006, godz. 13:54
Z zaprezentowanej na konferencji Black Hat prezentacji dwóch Francuzów wyłania się ciekawy obraz Skype jako aplikacji, która stanowi realne zagrożenie dla sieci korporacyjnych. Publikujemy skuteczne recepty jak zablokować Skype.
195.215.8.145:33033
130.234.81.46:57628
130.161.3.220:22555
131.94.221.207:48580
165.124.227.95:58821
128.197.181.49:56619
130.89.22.250:11013
129.27.140.33:57500
129.49.105.176:38045
143.89.56.23:1605
128.138.158.40:46554
193.140.250.54:40694
144.92.112.46:19313
212.247.25.102:17726
24.14.17.89:11419
213.112.251.102:41438
147.46.8.194:42860
128.122.50.102:12376
130.237.43.211:23619
130.235.74.125:62349
129.15.114.106:6045
81.161.187.55:6433
84.81.174.164:41451
81.24.96.6:39356
217.199.123.7:47762
140.125.41.137:14330
137.48.35.185:27167
140.114.45.184:63172
140.122.65.77:28156
68.2.88.235:52126
61.41.216.58:25403
131.234.20.39:1179
140.113.119.137:58523
128.176.61.12:11610
128.122.190.230:1284
130.237.67.73:3326
128.2.198.162:56862
24.226.160.23:42075
211.65.64.115:2666
58.5.40.133:64681
69.137.48.209:60277
193.147.161.197:38821
130.111.216.83:12787
222.121.185.244:42253
129.186.197.152:27971
129.64.55.43:4455
140.115.62.196:30666
139.91.23.2:5147
128.2.179.152:4788
128.233.26.47:48266
131.172.138.62:9705
128.59.19.230:36043
128.174.116.228:1725
131.96.170.140:34886
83.240.13.193:32400
80.109.18.220:7004
147.83.7.105:63878
132.239.95.167:11770
24.150.80.152:21152
138.4.8.22:9744
195.169.99.12:1189
211.53.35.154:65347
130.75.152.55:11911
137.110.125.206:29243
140.113.239.87:12371
137.82.22.134:25539
140.113.179.86:64404
129.116.232.79:1192
131.174.191.140:4433
131.204.99.79:3119
152.66.215.13:12736
139.82.24.94:60768
137.189.165.46:18924
213.180.124.68:57101
130.91.94.80:4036
81.216.216.152:38055
129.241.167.206:2287
67.175.121.246:32783
143.89.59.13:1340
129.241.31.92:49485
147.102.220.36:27250
130.91.117.125:17105
130.34.197.171:3419
128.12.179.47:3202
128.200.156.50:53383
128.148.61.111:8335
128.104.4.30:16504
128.210.67.162:25162
64.234.170.52:1154
128.42.62.10:65191
128.196.40.72:2329
18.170.1.75:42570
211.214.102.188:1579
129.24.25.227:6633
139.103.33.104:30816
134.7.42.38:24206
210.217.95.211:49918
128.42.70.155:11722
131.215.7.209:55816
129.186.5.15:25107
137.111.103.83:1386
131.151.20.161:1255
134.100.109.19:2042
140.114.202.30:22475
193.10.65.222:23684
85.115.100.55:9986
193.145.60.124:32581
152.2.10.42:1429
168.122.146.75:3614
24.28.72.110:3234
68.110.79.145:46276
140.113.13.33:10329
129.74.64.1:39652
165.230.205.77:29262
158.49.121.226:17930
68.171.32.200:45250
131.204.99.44:2894
129.2.28.102:1757
140.113.131.103:55506
171.64.103.12:1887
67.172.80.248:2953
158.39.25.157:18155
128.30.48.18:1073
85.115.107.135:39127
138.232.233.46:29794
221.253.118.201:1031
81.67.173.131:2234
24.14.218.197:39669
171.64.204.132:1243
128.143.41.3:33540
82.197.230.212:36634
82.45.1.59:21421
140.113.169.170:27458
129.79.206.130:1098
140.127.216.167:6519
140.118.196.132:4496
70.116.150.107:1260
140.112.214.44:40386
81.66.155.8:53648
143.107.88.97:3734
140.110.61.86:45381
24.63.64.98:1218
69.172.249.237:25427
164.8.253.173:5883
159.148.13.13:1412
195.139.104.228:1167
193.0.96.5:56558
82.75.229.246:30505
130.232.157.140:59206
24.150.90.28:32859
131.215.146.45:1417
143.107.246.50:1596
130.208.166.177:63608
145.97.229.211:6547
69.167.174.107:1834
131.238.77.178:39820
24.18.183.130:3160
143.89.46.72:53040
140.116.36.16:3541
68.108.10.9:35234
155.207.26.203:22705
220.121.43.206:58274
194.47.181.155:1160
82.100.79.181:2037
131.155.68.173:12913
137.113.103.6:4986
140.113.94.94:1048
150.135.220.233:31962
24.127.250.50:61783
68.65.250.14:4313
71.192.222.215:1248
152.2.10.32:59387
67.184.104.247:54977
140.192.35.19:1846
130.161.41.63:1150
147.83.149.108:28279
129.2.124.212:1534
130.236.36.107:1999
129.2.115.143:5496
170.140.124.180:1141
82.43.181.148:11500
130.179.198.236:43913
140.117.168.187:1046
128.135.191.190:1208
147.32.229.209:18891
130.15.104.68:4193
195.252.99.61:63979
140.113.214.107:33504
207.237.225.98:16502
140.112.239.223:4240
147.8.109.142:2929
69.140.76.20:21379
140.117.168.175:31302
128.122.184.18:51307
140.125.246.11:1263
165.230.205.72:1524
128.2.130.60:39288
58.5.158.181:11321
203.186.212.59:2157
84.25.55.205:13398
Komunikacja Skype jest bardzo "udziwniona". Program nie stosuje żadnego ze znanych protokołów VoIP takich jak SIP czy H.323. Protokoły te są ustandaryzowane, otwarte i wszyscy wiedzą co jest w nich przesyłane. W przypadku Skype jest inaczej - nikt nie wie, co tak naprawdę przesyłają między sobą klienci Skype, ponieważ protokół komunikacji jest tajny. Użytkownikom Skype pozostaje wierzyć w mętne zapewnienia producentów, wcześniej autorów znanej aplikacji Kazaa, że protokół jest bezpieczny i szyfrowany.
Zobacz również:
Odkrywamy tajemnice
Przeprowadzona przez Biondi i Desclaux analiza pokazała, że protokół Skype jest o wiele bardziej tajemniczy, niż się to wydawało na początku. Szyfrowanie pakietów Skype jest dwupoziomowe - najpierw każdy pakiet jest szyfrowany algorytmem AES, z kluczem wymienianym między węzłami Skype przy pomocy RSA. Ten etap zapewnia poufność transmisji.
Drugi raz pakiety są szyfrowane za pomocą algorytmu RC4, z kluczem opartym m.in. o adresy IP. Etap ten ma na celu tylko ukrycie zawartości pakietu przed filtrami, zaporami i systemami wykrywania włamań - dzięki użyciu RC4 w każdym pakiecie tylko kilka pierwszych bajtów jest stałych, a cała reszta wygląda jak dane losowe.
Poza tym Skype stosuje kilka innych technik omijania firewalli. Tak jak wiele aplikacji P2P, korzysta ze zmieniających się portów UDP, a jeśli to nie działa to próbuje łączyć się na port 80/tcp, który zwykle jest odblokowany. Jeśli jest on wypuszczony tylko przez serwer proxy, to Skype próbuje "ukraść" hasło do proxy z ustawień Internet Explorera. Nawet pomimo najszczerszych chęci trudno więc uznać Skype za program budzący zaufanie i nadający się do zastosowań korporacyjnych, nawet pomimo niewątpliwych atutów jakim są niskie ceny połączeń SkypeOut.
Badania Francuzów ujawniły także, że sama aplikacja Skype jest wielokrotnie szyfrowana i stosuje sztuczki utrudniające analizę jej działania za pomocą dizasemblera i debuggera. Nie przeszkodziło im to jednak w odkryciu kilku jej sekretów.
Autorzy Skype popełnili kilka błędów, na przykład w systemie szyfrowania RC4 zastosowali ten sam ciąg kluczowy do zaszyfrowania dwóch fragmentów pakietu. Dzięki własnościom XOR jak i każdego innego szyfru strumieniowego, umożliwia to łatwe "zdjęcie ciągu kluczowego". Technika ta może być wykorzystana przez systemy IDS/IPS do wykrywania ruchu Skype.
Skype jako wielki botnet?
Poza opisanymi wyżej podejrzeniami, do Skype można mieć szereg bardzo poważnych zarzutów - aplikację tę można uznać za potencjalne zagrożenie bezpieczeństwa dla każdej sieci.
Program Skype podłączony do sieci może być bowiem wykorzystywany do wykonywania zdalnych komend - protokół Skype pozwala na zdalne zlecanie każdemu węzłowi np. połączeń do innych systemów. Francuscy badacze zademonstrowali jak węzeł Skype można łatwo zmienić w zdalny skaner sieciowy, który może skanować wnętrze sieci w której działa.
Dzięki obecności w Skype kilku błędów typu przepełnienie bufora i sterty (heap overflow), Skype może łatwo stać się największą na świecie siecią komputerów "zombie" czyli botnetem.
Istnieje także możliwość - jeśli zmienić startowe adresy IP i klucze RSA - zbudowania własnej sieci Skype. Co gorsza, taką sieć można także podłączyć do oficjalnej, zapewniając tym samym komunikację z innymi użytkownikami. Ktoś, kto to zrobi będzie mógł - dzięki znajomości ustawionych wcześniej przez siebie kluczy - przejmować i podsłuchiwać rozmowy.
Szyfrowanie protokołu tylko pogarsza sprawę, ponieważ praktycznie czyni ruch Skype nieprzezroczytym dla systemów wykrywania włamań.
Kiedy chcemy blokować Skype
Francuscy badacze usystematyzowali również stałe elementy w pakietach Skype, co pozwoliło im na przygotowanie regułki dla linuksowego firewalla iptables blokującej ruch tej aplikacji po UDP:
* iptables -I FORWARD -p udp -m length --length 39 -m u32 --u32 '27&0x8f=7' --u32 '31=0x527c4833' -j DROP
Ponieważ jednak Skype komunikuje się także po TCP, konieczne jest blokowanie wszystkich adresów IP, które są wbudowane w binarny program Skype. Zawiera on listę adresów IP i portów systemów, z którymi łączy się program by wejść do sieci.
Inne artykuły poświęcone blokowaniu Skype
* Skuteczna metoda blokowania Skype
Lista ta może zmieniać się, jeśli Skype było już wcześniej podłączone do sieci lub jeśli zainstalowano nowszą wersję Skype. Ta lista pochodzi z wersji 2.0.0.97.
#Prezentacja "Silver Needle in Skype":
* http://www.secdev.org/conf/skype_BHEU06.handout.pdf