Debian over Tor – HOWTO

Jakiś czas temu dowiedziałem się, że Debian oficjalnie zapewnia dostęp do wielu swoich zasobów poprzez sieć Tor, jako zasoby wewnętrzne tejże sieci. Tutaj dostępna jest lista usług Debiana dostępna poprzez Tor wraz z adresami, a poniżej przykład zastosowania, czyli zmiana konfiguracji apt tak, aby pobierał pakiety za pośrednictwem Tora.

Po pierwsze, należy zainstalować pakiet umożliwiający aptowi korzystanie z Tora:

apt-get install apt-transport-tor

Po drugie, należy usunąć istniejące wpisy dotyczące repozytoriów i zastąpić je wersją dla sieci Tor:

deb  tor+http://vwakviie2ienjx6t.onion/debian          stretch            maindeb  tor+http://vwakviie2ienjx6t.onion/debian          stretch-updates    maindeb  tor+http://sgvtcaew4bxjd7ln.onion/debian-security stretch/updates    main

Jak widać zmiana dotyczy zarówno adresu, jak i dodania przed adresem prefiksu tor+.

Nie jest to jedyny sposób, można także ustawić proxy HTTP przekierowujace ruch na Tor i zostawić wpisy bez prefiksu tor+, ale z wpisami .onion, albo przekierować cały ruch HTTP przez sieć Tor, jednak rozwiązanie z instalacją transportu jest najprostsze.

Tutoriale (patrz źródła) zalecają dodanie mirrora lub fallbacka dla repozytoriów security, ale IMO zależy do czego jest używana maszyna i jak wykonywane są update’y. Jeśli robisz je ręcznie i sprawdzasz powodzenie, można sobie odpuścić.

Pozostaje pytanie, po co komu coś takiego. Nie ukrywam, że trudno mi sobie wyobrazić wiarygodny scenariusz, kiedy takie rozwiązanie mogłoby być przydatne w naszych realiach. Być może w innych krajach wygląda to trochę inaczej i są np. obostrzenia w zakresie systemów, których wolno używać. Niemniej rozwiązanie działa i możliwość pobierania pakietów Debiana przez Tor istnieje.

Źródła:

Panoptykon narzeka na ministerstwa i blokowanie Tora

Fundacja Panoptykon po raz kolejny narzeka na blokowanie przez ministerstwa IP, na którym mają uruchomiony węzeł Tor (relay-node). Sytuacja skłoniła mnie do wpisu, bo mam wrażenie, że zachodzi grube niezrozumienie tematu. Z obu stron…

Logo projektu Tor

Źródło: https://media.torproject.org/image/official-images/2011-tor-logo-flat.svg

 

Czy warto blokować ruch z sieci Tor?

To zależy. Ruch z sieci Tor pozwala na łatwe uzyskanie stosunkowo wysokiej anonimowości w sieci. Z jednej strony jest to wykorzystywane do anonimowej komunikacji przez zwykłych ludzi, z drugiej jest wykorzystywane do nadużyć i wandalizmu. Ze znanych serwisów wymienionych w FAQ – Wikipedia blokuje edycję artykułów z sieci Tor, podobnie Slashdot. Oczywiście takich serwisów jest o wiele więcej. Po prostu stosunek sygnał/szum jest w przypadku sieci Tor wyjątkowo niski.

Są też inne, poważniejsze powody do blokowania. O ile sieć Tor ma raczej słabą przepustowość i nie nadaje się do ataków wolumetrycznych, to zdecydowanie ułatwia łatwe, anonimowe ataki na aplikację, SQLi itp. Czyli raj dla script kiddies. I dokładnie taki jest oficjalny powód podany przez rzecznika ABW cytowany na Niebezpieczniku.

Jak blokować ruch z sieci Tor?

Autorzy projektu Tor podkreślają, że wezły sieci Tor mają indywidualne polityki, ale.. Patrząc z punktu widzenia administratora serwisu docelowego i ekonomii działania: sieć Tor to jakieś ułamki promila ruchu, w dodatku często ruchu niepożądanego. Jeśli ktoś zdecyduje się już blokować ruch z sieci Tor, to raczej nie będzie bawił się w polityki poszczególnych węzłów, tylko zablokuje wszystkie. Czy to na poszczególnych maszynach, czy to na centralnym firewallu, czy wręcz null-route’ując na routerach ruch kierowany do węzłów Tor (co uniemożliwi komunikację TCP). Ostatnia metoda jest i prosta w implementacji, i prosta w utrzymaniu (centralne miejsce do zarządzania), i wydajna.

Z których węzłów ruch blokować?

Tu jest pies pogrzebany. Fundacja Panoptykon nie prowadzi exit node, czyli nie przekazuje ruchu z sieci Tor do „normalnego internetu”. Niestety, oficjalne narzędzia udostępniane przez projekt Tor IMO nie są zbyt przyjazne administratorom (szczególnie tym, którzy są mniej świadomi zasad działania Tora lub którzy nie mają czasu). Blokowanie wszystkich węzłów Tora widziałem spotkałem, zarówno jako użytkownik końcowy (tak, relay node w domu, ruch z normalnego IP i komunikat o niewpuszczaniu z sieci Tor w serwisie), jak i administrator. Przede wszystkim brakuje oficjalnej listy węzłów wyjściowych łatwej do przetwarzania, czyli zawierającej same IP. Przypominam, że pisałem we wpisie o blokowaniu węzłów Tor, że udostępniam taką listę. Tylko exit nodes, tylko adresy IP.

Podsumowując, obie strony są winne:

Dziwią mnie żale ze strony Panoptykonu, gdy sytuacja jest typowa i opisana w FAQ Tora:

You might also find that your Tor relay’s IP is blocked from accessing some Internet sites/services. This might happen regardless of your exit policy, because some groups don’t seem to know or care that Tor has exit policies. (If you have a spare IP not used for other activities, you might consider running your Tor relay on it.)

Jak widać, projekt Tor zaleca prowadzenie węzłów na oddzielnych IP, nieużywanych do innych usług. Tak, wiem, sekcja dotyczy węzłów wyjściowych, ale idę o zakład, że pomysłodawca/admin w Panoptykonie nie czytał. Poza tym, zdrowy rozsądek zaleca analizę możliwych konsekwencji przed uruchomieniem usługi i stosowanie oddzielnych IP w tym przypadku.

Dziwi mnie też implementacja blokowania Tora na rządowych serwerach, wskazująca na niezrozumienie tematu. Oczywiście nie mam złudzeń co do korzystania przez nich np. z mojej listy (sam bym tego na ich miejscu nie zrobił), ale samodzielna implementacja to nie rocket science… Plus, niezrozumienie tematu może prowadzić do fałszywego poczucia bezpieczeństwa – tak naprawdę nie sposób zablokować 100% ruchu z sieci Tor, przynajmniej nie w oparciu o adresy IP.

Wybór kraju w sieci Tor

Dawno nie było notki. W sumie to chyba jeszcze nie było tak długiej przerwy między wpisami. Nie dlatego, że nic się nie dzieje, bo się dzieje aż za dużo, ale po pierwsze jakaś blokada przed jakimkolwiek pisaniem (nie tylko na blogu), po drugie, jakiś taki wypompowany z pracy przychodzę, że mi się nie chce już pisać, nawet jak są ciekawe tematy. No to może na przełamanie…

Logo Tor

Źródło: https://media.torproject.org/image/official-images/2011-tor-logo-flat.svg

 

Ostatnio jeden z czytelników przysłał maila z pytaniem: czy jest możliwość zmodyfikowania TOR-a tak by zawsze przydzielał polski adres IP? Już zacząłem odpisywać, że byłoby to bez sensu, bo przecież wybór exit node tylko z jednego kraju znacznie zmniejsza poziom anonimowości (nie rozwijając: i łatwiej podsłuchać, i łatwiej namierzyć korzystającego), ale… coś mnie tknęło i zacząłem drążyć temat, bo patrząc na to z drugiej strony, do pewnych usług dostęp może być tylko z pewnych lokalizacji geograficznych.

Podrążyłem i – ku memu niewielkiemu zdziwieniu – okazuje się, że można wybrać kraj, czyli np. użyć sieci Tor do obejścia blokady regionalnej. Co lepsze, można wybrać zarówno konkretny exit node, z którego chcemy korzystać (lub ich zbiór), jak i sam kraj (lub zbiór krajów).

Wybór konkretnego exit nodewygląda następująco:

ExitNodes server1, server2, server3
StrictExitNodes 1

 

Natomiast wybór kraju (lub krajów):

ExitNodes {pl}, {de}
StrictNodes 1

 

Za każdym razem zmiany należy wprowadzić w pliku torrc (pod Debian/Ubuntu: /etc/tor/torrc) i przeładować Tora. Podobno działa, mi na TAILS nie udało się wyedytować konfiga i uruchomić ponownie Tora (ale nie drążyłem specjalnie).

Źródła (i więcej informacji, w tym lista kodów krajów):

  1. wybór serwera w sieci Tor [en]
  2. wybór kraju w sieci Tor, lista kodówkrajów [en]

Blokada exit nodes Tora

Dawno temu pisałem o walce z Tor. Odsyłałem tam do strony, na której można sprawdzić, czy IP jest węzłem wyjściowym Tora, jest też stronka z listą węzłów. Niestety, stronka popełnia częsty błąd i wrzuca wszystkie węzły do jednego wora, zarówno węzły wyjściowe (exit node) jaki pośredniczące (relay node). Niestety, błąd ten później pokutuje, bo taki admin, który chce wyciąć exit nodes bierze, nie patrzy, nie rozumie i… wycina np. moje domowe IP, choć z Tora się do jego serwera nie łączę, tylko dorzucam parę groszy do projektu przerzucając czyjś ruch.

Tor logoŹródło: https://media.torproject.org/image/official-images/2011-tor-logo-flat.svg

Ponieważ potrzebowałem (no dobrze, ja jak ja…) listę węzłów wyjściowych na niezupełnie swoje potrzeby, zrobiłem własną listę. Tylko IP i tylko węzły wyjściowe. Idealne do automatycznego przetwarzania.

Dane brane są z z oficjalnej strony projektu Tor ( https://check.torproject.org/exit-addresses). Aktualizacja odbywa się raz na godzinę o pełnej godzinie (nie ma sensu pytać częściej). Jakby było zainteresowanie i potrzeba, to mogę zwiększyć częstotliwość. Mi wystarcza.

Plik dostępny jest po HTTP i HTTPS pod tym adresem: Tor exit node IP list. Udostępniam as is, bez żadnych gwarancji działania, dostępności, kompletności czy poprawności danych czy braku złośliwych danych. Jak widać wisi to na darmowej domenie, co może mieć dotyczące zawartości. You get what you pay for. 😉

Zresztą ogólnie korzystanie z tego typu automatycznych źródeł bez jakiejś weryfikacji uważam za nierozsądne.

UPDATE: Metoda nie jest doskonała. O tym, że część exit nodes może nie być widocznych przeczytasz tutaj.

Wyszukiwarka na blogu

Z jakichś powodów szukałem niedawno możliwości podpięcia pod bloga innej wyszukiwarki, niż ta przychodząca z Blox. Pierwsze co przyszło mi do głowy, to Google i któraś z ich usług. Wiem, zewnętrzny serwis, w dodatku Google. Pewnie bym nie użył i tak, ale nie każdemu to przeszkadza… Jednak to co znalazłem u Google miało wadę – nie dawało się zawęzić do danej witryny, szukało także na podlinkowanych stronach.

Dziś u Boniego w komentarzach zeszło na dyskusję nt. wyszukiwarki na blogu i… postanowiłem poszukać, czy DuckDuckGo się dorobiło. TIL:

  • Mają stronkę z pomysłami i całkiem przyzwoitą wyszukiwarką wśród nich. Na dodatek zintegrowaną z forum.
  • Mają też możliwość podpięcia wyszukiwarki do bloga dokładnie w taki sposób, o który mi chodziło. Oczywiście o ile ktoś się nie brzydzi iframe i zewnętrznym serwisem. Ja się nie brzydzę.
  • Obsługują parametr site: dla wyszukiwania w danej domenie. Albo nowe, albo ślepy jestem, bo brakowało mi tego i korzystałem do tego celu z Google.

Dla Google pewnie też zadziała, w analogiczny sposób, ale w trosce o prywatność, anonimowość itd. itp. zostaje DuckDuckGo. Wyszukiwarki z Blox póki co nie zdejmuję, ale zachęcam do korzystania z nowej.

UPDATE Strona opisująca umieszczenie wyszukiwarki DuckDuckGo na stronie.

Tails 1.1 wydany, 0day w Tails

We wtorek pojawiła się informacja o tym, że wydana została wersja 1.1 dystrybucji live Linuksa ułatwiającej zachowanie anonimowości w internecie poprzez użycie sieci Tor. Dużą zmianą jest zmiana wersji Debiana, na której Tails bazuje. Do tej pory był to Squeeze, obecnie jest to (w końcu!) Wheezy. Tradycyjnie sporo aktualizacji bezpieczeństwa. Nowy obraz iso jest większy o ok. 60 MB od poprzednika.

Skoro o aktualizacjach bezpieczeństwa mowa, to autorzy dystrybucji napisali o rzekomo odkrytych błędach 0day w dystrybucji. Wszystko wskazuje na to, że faktycznie istnieją. Błędy póki co nie zostały im ujawnione, ale ma to nastąpić w ciągu tygodnia. Otrzymali również zapewnienie, że błędy nie zostaną opublikowane, dopóki nie zdołają ich naprawić, a użytkownicy będą mieli szansę na aktualizację oprogramowania:

They informed us that they would provide us with a report within a week. We’re told they won’t disclose these vulnerabilities publicly before we have corrected it, and Tails users have had a chance to upgrade. We think that this is the right process to responsibly disclose vulnerabilities, and we’re really looking forward to read this report.

Tymczasem można pobrać wersję 1.1, która – jakkolwiek podatna – posiada naprawione inne błędy.

Dell deanonimizuje Bitcoiny

Niedawno Dell ogłosił, że akceptuje transakcje przy pomocy Bitcoin. Mało tego, dają 10% rabatu na transakcje z użyciem BTC (do $150). Na pierwszy rzut oka jest to dobra wiadomość dla sympatyków BTC i popularyzacji Bitcoin ogólnie, ale mi się od razu zapaliły lampki ostrzegawcze. W szczególności:

We’re piloting bitcoin, the world’s most widely used digital currency, as a purchase option on Dell.com for consumer and small business shoppers in the U.S.

Czemu tylko USA? Jedną z wad Bitcoin jest możliwość prześledzenia całej historii przemieszczania się waluty, czyli zupełna kontrola przeprowadzanych transakcji. Zamawiając sprzęt z dostawą, wiążemy konto BTC (przynajmniej jedno z kont) z naszą tożsamością.

Oczywiście U.S. only może wynikać z tematów formalnych, prawnych czy organizacyjnych, ale zastanawiam się, czy nie wiąże się z łatwością/jakością śledzenia lub obszarem zainteresowania. W sumie rozsądniej byłoby zbierać dane globalnie, nawet obarczone jakimś błędem.

Oczywiście anonimowość (pozorna?) to tylko jeden z aspektów kryptowalut. Niekoniecznie najważniejszy.

Hazard z użyciem Bitcoin – 100 BTC do wzięcia

Dawno temu pisałem, że można obejść ustawę hazardową za 5 euro miesięcznie. Stare dzieje. Powstały już serwisy, w których można uprawiać hazard i zakłady z użyciem Bitcoin, co doda kolejną warstwę anonimowości. Bo przecież niekoniecznie na blokadzie stron by się kończyło, a transakcje między wskazanymi kontami łatwo sprawdzić…

W każdym razie do ogródka powody do delegalizacji Bitcoin wpada kolejny kamyczek. We wcześniejszym wpisie można poczytać o wadach Bitcoin.

O całości piszę, bo serwis Cloudbet, który prowadzi hazardowo-zakładowy biznes, zrobił ciekawą zabawę związaną z nadchodzącym Pucharem Świata w Brazylii. Wystarczy założyć u nich za darmo konto i poprawnie typować zwycięzców poszczególnych spotkań i można wygrać 100 BTC (dead link). Czas na rejestrację do 12 czerwca. Wygląda, że no strings attached (pewnie poza spamem na podanego im maila ;-)).

Nie żebym promował/popierał specjalnie, bo nie mam złudzeń, to im się opłaci w postaci wciągniętych w niecny proceder hazardu duszyczek. Ale 100 BTC tak czy inaczej do wzięcia, więc tradycyjnie kibicuję wykorzystującym słabości systemu (powiedzmy, że taki metasport). Swoją drogą ciekawe, ile energii poświęconych będzie na wykrywanie nadużyć i jakie techniki będą stosowane. Niezły test na zachowanie anonimowości (w sumie bardziej: fałszywej tożsamości) w praktyce.

Tails w wersji 1.0 wydany

Projekt Tails, czyli dystrybucji Linuksa ułatwiającej zachowanie anonimowości (szerzej opisana w tym wpisie) doczekał się w końcu wersji 1.0. Poza kosmetycznymi zmianami w nazwie i logo, wydanie przynosi tradycyjne aktualizacje bezpieczeństwa typu aktualizacja przeglądarki Firefox i aktualizacja oprogramowania Tor, w szczególności pod kątem niedawnego błędu Heartbleed.

Prawdę mówiąc uważam, że przeskok numeracji nieco przedwczesny, gdyż na czerwiec przewidziane jest wydanie wersji bazującej na Debianie Wheezy (aktualnie Tails oparty jest o Squeeze). Ale w sumie to tylko cyferki – sam system działa nieźle od dłuższego czasu. Co ciekawe, twórcy donoszą, że liczba użytkowników wzrosła w ciągu ostatniego półtora roku czterokrotnie.

Jakie wady ma Bitcoin?

Tak się składa, że hype związany z Bitcoin czy Litecoin nadal trwa i w ostatnich dniach przeprowadziłem minimum dwie rozmowy o kryptowalutach. Konkretnie o popularniejszej z nich, czyli Bitcoin. Nie ukrywam, że zainteresowałem się nim wcześnie, ale wrodzony sceptycyzm nie przerodził się w uruchomienie kopalni. Z perspektywy czasu żałuję, bo były to czasy (okolice marca 2011 jak widzę), gdy kopanie BTC na karcie graficznej zwracało sprzęt po 4-5 m-cach, wg ówczesnych cen. Jakbym nie wydał tylko trzymał do dziś, to pewnie byłoby minimum niezłe auto…

Bitcoin logo

Źródło: Bitcoin Wikipedia

Było, minęło. Sceptykiem pozostałem, szczególnie gdy zestawię moje podejście z zachwytem niektórych osób, że to takie krypto, pozapaństwowe, anonimowe i w ogóle przyszłość i cudowna alternatywa dla istniejących walut.

Żeby nie rozpisywać się od nowa przy każdej tego typu okazji, poniżej krótkie zestawienie wad, jakie widzę w Bitcoin (ale nie tylko, sporo odnosi się także do innych kryptowalut, np. Litecoin).

Podatność na spekulację

Niby oczywista sprawa, ale nie dla wszystkich. Ja rozumiem, że kurs (póki co) generalnie rośnie w długim okresie, ale to mały rynek, przez co podatny na spekulację. Zmiany kursu o kilkadziesiąt procent w krótkim okresie nie są niczym niezwykłym. W przypadku happeningu sprawa pomijalna, w przypadku podstawowego środka płatniczego – a tak niektórzy zdają się widzieć BTC – nie można tego nie zauważać.

Totalna kontrola przeprowadzanych transakcji

Brak znajomości tego zjawiska dziwi mniej. W końcu krypto w nazwie sugeruje, że coś jest szyfrowane i/lub anonimowe. Tymczasem jest dokładnie odwrotnie. Historię każdego BTC można prześledzić do samego początku. Implikacje z punktu widzenia anonimowości czy prywatności są nie do zignorowania. Wielu ludzi kręci nosem, że bank wie o nich wszystko z historii rachunku. To teraz wyobraźmy sobie, że każdy przelew między kontami wiązałby się z ujawnieniem wszystkich transakcji przeprowadzonych przez obie strony przy użyciu danych rachunków. W przeszłości i przyszłości.

Dokładniej nie tyle ujawnienie wszystkich kwot transakcji i rachunków (bo to można zrobić nie będąc stroną), ale powiązanie ich z konkretnym płatnikiem. Gdyby Bitcoin był w powszechnym użyciu, pozwalałoby to określić, gdzie dana osoba mieszka, co ostatnio kupiła itd. itp. Dla stalkerów i marketingowców raj. Chociaż podobno marketingowcy nie umieją korzystać z danych. Ale implikacje są poważniejsze, chociażby w przypadku wglądu ubezpieczalni w zakupy np. leku czy alkoholu. Albo płatności za mandaty. Sky is the limit.

Oczywiście można się przed tym zabezpieczać. Np. często zmieniać konta. Tylko to średnio wygodne. No i trzeba jakoś przetransferować BTC między kontami. A znana jest cała historia… Są nawet serwisy typu blockchain.info czy sharedcoin.com, pomagające anonimizować transfery przy użyciu BTC. Co dają? Znajomy, z którym dyskutowałem przytoczył cytat:

How can you guarantee that the transaction chain will be broken?
There is no guess work involved, each shared transaction analyzes up to 50,000 outputs or 250 levels deep in the blockchain to ensure the coins sent to the destination  address are 100% untainted with the original coins.

Faktycznie sporo. Zakładając, że ktoś chciałby to analizować ręcznie, rzecz jasna. Komputer poradzi sobie z analizą takiej transakcji w ciągu ułamków sekund. Identyfikacja kont używanych przez taki serwis też nie jest specjalnie trudna. Może nie ze 100% pewnością, ale przy dobrym algorytmie kilkadziesiąt procent pewności nie powinno być trudne do uzyskania.

IMO w kwestii anonimowości nic nie przebije gotówki. Dlatego banki i państwa powoli, ale systematycznie dążą do jej marginalizacji.

Brak organów kontrolnych

Dla jednych wada, dla drugich zaleta. Pamiętam, że w podstawówce wymyśliliśmy sobie własną walutę. Produkowaliśmy banknoty z pociętych kartek. Każdy swoją. Ręcznie (tylko!). Z podpisem. Nawet jakieś kursy wymiany były. Nie dam głowy, czy nie udało się kupić np. lizaka od kumpla za to. Zaliczyliśmy i inflację (najpierw IIRC były odpowiedniki istniejących nominałów, potem i milion dolarów był, chociaż przyznam, że te miliony ratowały się wartością artystyczną) i totalną utratę wartości. Pamiętam, że znalazłem trochę tej waluty w jakimś zapomnianym pudełku sporo po podstawówce. Chyba tylko dlatego zapamiętałem, że takie coś miało miejsce.

Z Bitcoin jest podobnie. Działa, bo ludzie umówili się, że ma wartość, ale nikt tej wartości nie gwarantuje. Dziś można przy jego pomocy kupić, jutro – niekoniecznie. W przypadku zwykłych walut były gwarancje wymiany na np. złoto (OK, też umowne…). Piszę były, bo AFAIK gwaranci od tego odeszli. Niemniej państwo – jakie by nie było – jest postrzegane jako lepszy gwarant, niż grupka ludzi, którzy tak się umówili.

Brak organów kontrolujących rynek sprzyja też poruszonej na początku spekulacji. Jak pokazują ostatnie wydarzenia, które doprowadziły jeden z kantorów BTC do zawieszenia sprzedaży, brak nadzoru i audytu powoduje ryzyko błędnych implementacji. Podobnie sytuacja miała się z włamaniami do kantorów i kopalń BTC. Ogólnie sam algorytm, oprogramowanie i protokoły posiadają ryzyko błędów. Nawet jeśli sam algorytm Bitcoin jest OK, pozostaje ryzyko błędów w oprogramowaniu i protokole. Ostatnie zamieszanie związane z Mt. Gox jest takim przykładem błędów w implementacji.

Ryzyko delegalizacji

O ile państwa nie nauczą się kontrolować transakcji wykonywanych przy pomocy Bitcoin, może im wpaść do głowy pomysł delegalizacji tej kryptowaluty. Szczególnie, jeśli – mimo wyżej opisanych wad – zacznie zdobywać większą popularność. Szansa na to jest niewielka i oczywiście delegalizacja BTC nie spowoduje zupełnego zaprzestania jego używania, ale skutecznie ograniczy zakres dostępnych dóbr.

Wymaga wiedzy i technologii

Nie ma co ukrywać, że obecnie kryptowaluty to domena ludzi związanych z kryptografią i/lub komputerami. Albo osób, które z konieczności szukają środków płatniczych w cieniu (głównie nielegalna działalność). Ogólnie: wąska grupa geeków. Od pozostałych ludzi wymaga nauczenia się, jak to działa, instalacji dodatkowego oprogramowania i ogólnie przełamania nieufności. Dodatkowo, wymaga posiadania komputera (smartfona) i połączenia z siecią. Paradoksalnie, niekoniecznie jest to taki wielki problem – w końcu płatności przy pomocy telefonów są wprowadzane przez tradycyjne banki, a ludziom nie przeszkadza brak zrozumienia stojących za płatnościami tego typu zagrożeń.

Liczna konkurencja

Bitcoin, który jest obecnie najbardziej znaną kryptowalutą i o największej wartości rynku, nie jest jednak jedyny. Co chwila powstają nowe alternatywy, każda wyróżniająca się albo bardziej odpornym na wydobycie nie na CPU, czyli bardziej sprawiedliwym algorytmem (np. scrypt w przypadku Litecoin), albo – jak ostatnio powstały Riecoin – podstawami naukowymi (liczby pierwsze, szczegóły na stronie projektu). Bałkanizacja rynku kryptowalut z pewnością nie pomoże im na przebicie się do mainstreamu – obok pytania czy implementować obsługę, dochodzi pytanie, którą lub które kryptowaluty wybrać.

Podsumowując, w żadnym razie nie jest tak, że Bitcoin do niczego się nie nadaje. Nawet chyba poszukam portfeli (ciekawe, czy pustych?) i uruchomię możliwość postawienia mi piwa w ten sposób. Już znalazłem w poolu, w którym kopałem testowo (na CPU!), BTC warte obecnie jakieś 7 dolarów. Natomiast nie wierzę, że kiedykolwiek zapłacę BTC za pizzę, hotel czy w supermarkecie. Po prostu się nie przyjmie i nie będzie liczącą się alternatywą dla tradycyjnego (w tym elektronicznego) pieniądza.

Bitcoin to nie waluta

Niedawno rząd USA uznał Bitcoin nie za walutę, a za własność. Na potrzeby podatków, oczywiście. Coś jak akcje. Czyli jeśli ktoś kupuje pewną ilość BTC za jednego dolara, wartość zakupionych BTC rośnie do dwóch dolarów na skutek zmiany kursu, a następnie ktoś kupuje za tę ilość BTC kawę (wartą dwa dolary), to kupujący powinien zapłacić podatek od 1 dolara (różnica wartości kupna i sprzedaży BTC), a sklep podatek dochodowy od dwóch dolarów.

UPDATE Dodany akapit o konkurencji. Mt. Gox ostatecznie upadł i wpływ na BTC miało to niemały – spadek cen z ponad 800 dolarów do 400 dolarów (połączony ze znacznym wzrostem wolumenu wymienianych BTC, co ładnie pokazuje spekulacyjny charakter rynku).

Botnet w Torze.

Napisałem dziś na µblogu, że mam dylemat. I podałem tego linka do bloga projektu Tor. Ostatnio zajmowałem się czym innym i zupełnie przegapiłem opisywany gwałtowny wzrost użytkowników Tora. Dziś zagadka została wyjaśniona – winny jest botnet, który korzysta z Tora do zarządzania węzłami (dobre źródło, po polsku i blog ogólnie ciekawy). Mój dylemat polega na tym, że w chwili obecnej 80% węzłów Tora stanowią komputery zombie wykorzystywane do ataków DDoS, wysyłania spamu itp., a ja nie chcę pomagać spamerom/abuserom.

Jasne, wiadome było, że nie tylko do szczytnych zastosowań Tor służy, ale do tej pory nie miałem żadnych konkretnych, jednoznacznych danych. Teraz je mam.

Sytuacja jest bardzo niekorzystna dla projektu, o czym autorzy nie piszą. Botnet prosto można rozbroić np. wyłączając mu komunikację. Czyli – na poziomie operatora ISP – np. blackhole’ując wszystkie node’y Tora (pośredniczące, czyli relay nodes; lista węzłów wyjściowych i pośredniczących jest publiczna, o czym pisałem we wpisie nt. walki z Tor). Chyba, że botnet jest naprawdę sprytny i korzysta z bridge node’ów, ale coś mi mówi, że raczej nie. Poza tym, zablokowanie – albo przynajmniej drastyczne utrudnienie – dostępu do informacji o bridge nodes też nie jest specjalnie trudne dla ISP…

Twórcy Tora są więc w trudnej sytuacji. Z jednej strony projekt powstał dlatego, że chcą zapewnić swobodną komunikacją. Z drugiej – jeśli nie będą interweniować i nie wyłączą w jakiś sposób botnetu, to istnieje ryzyko, że cała sieć Tor stanie się obiektem ataku jako wspierająca botnet.

Póki co, mój dylemat rozwiązałem tak, że drastycznie zredukowałem pasmo na moim relay node. I czekam na rozwiązanie sprawy. Jeśli trend się utrzyma, nie wykluczam wyłączenia węzła w ogóle.

PS. Jest jeszcze też oczywiście spiskowa teoria. Wszystko to dzieło wspierających kontrolę użytkowników i obywateli i zemsta za dekonspirację PRISM.

Ryzyko prowadzenia węzła Tora.

Oczywiście wpis jest inspirowany tymi dwoma wpisami. Mocno rozbieżne w wymowie są. Pierwszy bardziej w tonie „jak oni mogli?!”, drugi z kolei mocno zorientowany na ryzyko. Jak dla mnie sprawa jest prosta: prowadząc wyjściowy węzeł Tora[1] należy mieć świadomość, że służby mogą wpaść z wizytą. W końcu jest prawie pewne, że prędzej czy później dojdzie do jakiegoś przestępstwa z IP przydzielonego w danym momencie do węzła wyjściowego. A policja lubi się popisywać i w prosty sposób podbijać sobie statystykę. Był powód do kipiszu? No był…

Zresztą, w Polsce też były podobne akcje, tyle, że z tego co mi wiadomo nie trafiły do mediów. Jedna z osób narzekała na wizytę policji i konfiskatę komputerów (lub dysków) w celu zabezpieczenia dowodów. Zresztą z tego co kojarzę bardzo szybko były zwrócone. No i prowadzący wyjściowy węzeł nie miał narkotyków itp.

Trochę też nie rozumiem o co ten hałas, w końcu w FAQ Tora jest napisane, czego można się spodziewać prowadząc węzeł. Co prawda dałbym głowę, że jest tam wspomniane o możliwości wizyt policji (a nie jest), więc pewnie miesza mi się z prezentacją dotyczącą Tora na MeetBSD sprzed paru lat. W każdym razie należy założyć, że takie wizyty są możliwe, chociaż widzę, że nie są częste. Pozytywne jest to co piszą, że policja zaczyna być świadoma istnienia węzłów i przed wizytą (czy to rozmową, czy wjazdem), zaczyna sprawdzać, czy faktycznie chodzi o węzeł, czy o końcowego użytkownika.

Co nie oznacza, że prowadzenie węzłów pośredniczących (relay nodes, bridge nodes) też wiąże się z ryzykiem. Tu żaden ruch nie wychodzi na zewnątrz sieci Tor. Służby nie bardzo mają powód czy pretekst do wizyty. Nawet maila nie wyślą (sprawdzone empirycznie, różne węzły, parę lat). I w sumie jeśli chcą faktycznie łapać przestępców, to mogliby współpracować z prowadzącymi węzły. Bo przy odpowiedniej wiedzy i współpracy policji na skalę międzynarodową osoby korzystające z Tora (końcowi użytkownicy) są jak najbardziej możliwe do namierzenia. Zresztą, zdaje się były publikacje naukowe na ten temat.

W każdym razie głównie trzeba czytać i rozumieć, co się robi i jak to działa. Za bardziej ryzykowne osobiście uważam posiadanie niezabezpieczonej lub słabo zabezpieczonej sieci wifi. Ktoś może jej użyć do równie nielegalnych celów, a wtedy nie ma żadnych przesłanek by uważać, że czynności dokonał ktoś inny, niż użytkownik danego adresu IP.

[1] To tylko jeden z typów węzłów, służący jako ostatni pośrednik między siecią Tor a zwykłym Internetem.

PS Nagonka na Tora ma miejsce nie po raz pierwszy a tu krótki opis jak łatwo skonfigurować bridge node.

Kolejna darmowa koszulka.

Wcześniej pisałem o tym, jak przy okazji zrobienia darmowego certyfikatu IPv6 zdobyć koszulkę. Jeśli chodzi o projekt Tor, to również rozdają koszulki. Znacznie lepsze (jakość, wygląd), niż te od HE, ale też trudniej je uzyskać.

Ogólnie, żeby dostać koszulkę, trzeba wesprzeć projekt. Najprostszy sposób to dotacja minimum 65 dolarów – trochę dużo jak za koszulkę. Kolejny prosty sposób to utrzymywanie przez minimum 2 miesiące exit node z odblokowanym portem 80 (przynajmniej) i uzyskanie średniego ruchu ponad 100 kB/s (bajtów, czyli ok. 800 kbps!). Mało wygodne, ze względu na potencjalne problemy ze służbami.

Jeszcze jeden wariant – i z niego skorzystałem – to utrzymywanie relay node o średniej przepływności 500 kB/s (czyli ok. 4 Mbps). W praktyce działał (i nadal działa) znacznie dłużej, niż wymagane 2 m-ce, a na samą koszulkę też przyszło poczekać IIRC kilkanaście tygodni. Moim zdaniem, jest to najłatwiejszy sposób.

Ostatni sposób to pomoc projektowi w inny sposób, czyli tłumaczenia, programy pomocnicze, orędownictwo na rzecz Tor, rozwiązywanie błędów. W sumie chyba najbardziej pracochłonne i kosztowne. Wszystko dokładnie w oryginale jest opisane na stronie projektu koszulka za wsparcie.

Koszulka, a w zasadzie zawartość paczki, bo i naklejki były, wygląda tak:

Tor t-shirt

Źródło: fot. własna.

Dodatkowo z tyłu, na karku jest napis (nawiązanie dla geeków oczywiste):

Tor t-shirt these aren't the nodes you're looking for

Źródło: fot. własna.

PS Tak, wiem fatalna jakość fotek, pod każdym względem. Z telefonu i na łóżku, wyjęte prosto z paczki. A druga to już w ogóle, aby tekst było widać.

Walka z Tor – blokowanie i atak.

Każdy medal ma dwie strony. To, że popieram prawo do anonimowości i wolności wypowiedzi nie znaczy, że nie rozumiem osób, które z różnych względów chciałyby ograniczyć dostępu do swojej sieci czy swojego serwisu użytkownikom sieci Tor. Poza tym, w znacznej mierze bawię się Torem, żeby lepiej poznać z czym wiążą się różne, zwłaszcza administracyjne aspekty sieci na sieci.

Sieć Tor z założenia ma sprzyjać anonimowości i omijaniu cenzury, a jak to wygląda w praktyce? Moim zdaniem, ma wiele słabości, chwilami sprawia po prostu broken by design. Ostatnio słychać było, o skompromitowaniu sieci Tor. Na blogu projektu Tor pojawiło się sprostowanie, wytykające błędy ale nie znaczy to, że różne słabości zupełnie nie istnieją.

Podstawową, znaną i opisaną w FAQ, słabością projektu, wynikającą z założeń projektowych jest, moim zdaniem, fakt, że publicznie dostępna, a przynajmniej trywialna do uzyskania jest lista wszystkich węzłów wyjściowych (exit node) i pośredniczących (relay node) Tora. Znacznie trudniej uzyskać listę bridge nodes, czyli węzłów służących wyłącznie do przyjęcia pierwszego połączenia od użytkownika, ale nie jest ona tak naprawdę potrzebna, by któryś duży gracz przeciwko Torowi mógł zaszkodzić sieci.

Niejawność bridge nodes wynikała z założeń projektu i z założenia miała służyć do tego, aby żaden ISP/kraj nie mógł w prosty sposób pozbawić swoich użytkowników możliwości połączenia z siecią Tor. I to zadanie spełnia przyzwoicie. Użytkownicy nadal mają możliwość uzyskania częściowych danych o bridge nodes z listy i podania ich ręcznie w swoim kliencie Tor, co w połączeniu ze zmiennymi IP bridge nodes bardzo utrudnia (o ile nie eliminuje) możliwości całkowitego zablokowania łączności z siecią Tor. Przynajmniej zablokowania opartego tylko o blokadę IP, nie analizę ruchu, ale to jakby zupełnie inny temat i skala trudności.

Natomiast mając listę węzłów końcowych, można je zablokować na wejściu do sieci czy dostępie do serwisu. Istnieją nawet serwisy, które zapewniają – mniej lub bardziej aktualne – gotowce. Ten serwis na przykład udostępnia aktualizowaną co godzinę blacklistę opartą na DNS z podziałem na węzły wychodzące i zwykłe.

Ale nie jest to jedyna metoda walki serwisów czy ISP z Torem. W praktyce mało kto, przynajmniej w naszym kraju, udostępnia węzeł wychodzący. Przyczyna jest prosta – dość szybko może skończyć się to (i kończy, nie mówię z własnego doświadczenia, ale słyszałem z pierwszej ręki o takich przypadkach) wizytą policji z powodu nadużyć z danego IP. Węzeł pośredniczący, o ile nie ma uruchomionej tzw. ukrytej usługi (hidden service) nie przechowuje ani nie udostępnia żadnych danych, więc jego uruchomienie w domu nie pociąga za sobą żadnych problemów (poza zużyciem części pasma).

Przynajmniej teoretycznie. W praktyce bowiem serwery serwisów nie lubiących Tora mogą sprawdzać nie tylko, czy użytkownik nie łączy się z IP na którym uruchomiony jest węzeł wychodzący, ale także czy połączenie nie jest z IP na którym uruchomiony jest węzeł pośredniczący i… także odmawiać dostępu. Przykładem jest choćby powyższy serwis z listami. Łącząc się z IP, na którym uruchomiony jest relay node zobaczymy:

Forbidden – TOR Node / Anonymous Proxy I’m sorry, but I really don’t see why anyone would need to use a TOR node or Anonymous Proxy server to look at my site. So i’m afraid you can’t look. Stop running TOR / using an anonymous proxy and you can view my site.

Przy względnie częstej aktualizacji listy węzłów (choćby wspomniana godzina), rozwiązanie takie praktycznie nie generuje skutków ubocznych dla serwisu, który ją wykorzystuje i minimalizuje ryzyko false positives, nawet przy zmiennym IP węzłów. Zakładając oczywiście, że lista jest prawidłowa i kompletna.

Zresztą, sami twórcy projektu Tor dają o to, żeby administratorzy którzy muszą blokować węzły wyjściowe Tora, mogli robić to w prosty sposób. Banowanie użytkowników sieci Tor także ma swój wpis w FAQ. Uprzykrzanie życia właścicielom relay nodes to już raczej otwarta wojna, której chcą uniknąć.

Skoro o otwartej wojnie mowa, gdyby jakieś państwo chciało unieruchomić sieć Tor, to obok blokowania bridge nodes może sięgnąć po (D)DoS (w sumie wystarczy zwykły flood) na – niekoniecznie szybkie – węzły pośredniczące. Węzły wyjściowe często są na dedykowanych maszynach i łączach, pośredniczące (tylko pośredniczące, każdy wyjściowy jest jednocześnie pośredniczącym) – niekoniecznie. Zresztą ponownie – istnieje strona podająca status sieci Tor, a na niej szczegółowe informacje o węzłach – rola, tzw. flagi, system, ilość przesyłanego ruchu… Zapewne można na jej podstawie szacować, jakie zasoby potrzebne są do przeprowadzenia ataku.

Przy okazji takie spostrzeżenie – ludzie z projektu Tor naprawdę wydają się skupieni na etyczny zastosowaniach i zapewnieniu anonimowości i wolności ludziom, którzy naprawdę tego potrzebują. I mocno liczą, że administratorzy serwisów to zrozumieją i nie będą w Torze widzieć wyłącznie narzędzia abuserów. W ciągu kilkudziesięciominutowej rozmowy, która się wywiązała na IRC przy okazji wspomnienia na temat tworzenia tego wpisu zostałem odesłany do paru prac naukowych (nie czytałem jeszcze, bo niezupełnie ten temat, podlinkowane poniżej). Atak totalny na tak szczytne przedsięwzięcie chyba nie bardzo mieści im się w głowie, natomiast zaprzątnięci są zapewnieniem anonimowości użytkownikom i pracują nad ulepszeniem możliwości łatwego i pewnego rozdzielenia węzłów wyjściowych od pośredniczących dla tych, którzy muszą blokować dostęp z sieci Tor.

Stąd moje wrażenie o broken by design może być przesadzone lub zwyczajnie mylne – zwyczajnie nie do tego i nie przy takich zastosowaniach było to projektowane… Generalnie Tor ma warstwy – z pozoru wygląda na bardzo prosty twór, ale im dalej się wgłębiać, tym ciekawsze nowe rzeczy się pojawiają. Przyznam, że sam nie grokuję Tora w pełni, stąd ten wpis, będący poniekąd próbą uporządkowania paru faktów.

Linki (które kiedyś mam nadzieję przeczytam, niekoniecznie o Torze):