Skype - Wielki Brat i botnet w jednym?

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.

Lista adresów IP z którymi Skype łączy się po TCP

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

Skype zrobiło karierę jako program oferujący bezpłatne rozmowy VoIP z wykorzystaniem komputerów lub tanie rozmowy, zwłaszcza międzynarodowe, na numery stacjonarne. Mniej entuzjazmu wykazują wobec Skype obrońcy prywatności oraz administratorzy sieci, dla których Skype jest wielką zagadką. Niedawne wystąpienie dwóch Francuzów, Philippe Biondi i Fabrice Desclaux na konferencji Black Hat 2006 rzuciło nieco więcej światła na sposób działania tego programu.

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ż:

  • AES-128 vs AES-256 - czym różnią się znane standardy szyfrowania

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

* Skype niepokoi NSA

* Verso filtruje Skype i P2P

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

W celu komercyjnej reprodukcji treści Computerworld należy zakupić licencję. Skontaktuj się z naszym partnerem, YGS Group, pod adresem [email protected]

TOP 200