O IFRAME, domenach i serwisach urzędów

"Jeśli umieszcza się taką stronę pod adresem, który powszechnie uważany jest za obraźliwy, niewątpliwie może dojść do zniesławienia"

- prof. Ewa Nowińska, Uniwersytet Jagielloński w tekście TVN24.pl, pt. Strona internetowa Sejmu jak "wirtualnyburdel", w którym opisano zaobserwowane zjawisko, tj. wykorzystanie w serwisie, który dostępny jest (był) pod domeną wirtualnyburdel.pl tagu IFRAME, w wyniku czego odwiedzający serwis pod tym adresem widzieli przywołaną przez "ramkę" zawartość witryny Sejmu. Przy okazji w artykule wskazano jeszcze, że tego typu mechanizm zastosowano wobec strony internetowej Prezydenta RP, a to w ten sposób, że do "ramki" kieruje się zawartość tej strony pod domeną brzdac.net. Jest jeszcze ZUS i wirtualnyburdel.com (w przypadku witryny Sejmu RP IFRAME był wykorzystany pod nazwą domenową w domenie ".pl", w przypadku ZUS - ".com").

Prof. Nowińska mówi oczywiście o art. 212 kodeksu karnego. Można się zastanawiać, ponieważ w tych przypadkach domena nie była w sposób bezpośredni związana z treścią. To było tak, jak w sporze ówczesnej posłanki Beger i p. Lecha Kaczyńskiego (por. Postanowienie sądu okręgowego w sprawie domeny beger.pl). Tam również był IFRAME. Od tamtego sporu jednak mamy sprawę wpływania na wyniki wyszukiwania (por. Znieważenie Prezydenta RP, "oficjalna" witryna Prezydenta i proces karny za SEO, Za SEO i znieważenie Prezydenta RP akt oskarżenia oraz Sprawa SEO i zniewagi Prezydenta: oskarżony wycofał się z dobrowolnego poddania się karze, którą również na początku tego roku relacjonował TVN24 w tekście Obraza przez pozycjonowanie - sąd żąda analiz). Wreszcie mamy też inne tego typu sytuacje, a mianowicie posła Palikota i pytania w jego blogu (por. O zniewadze i pytaniach opublikowanych w blogu). W przypadku, który komentowała prof. Nowińska, jednak nie było "umieszczeia strony pod adresem". Owszem, tak to może wyglądać z pozoru, ale mechanizm IFRAME, to coś podobnego do linku, ale linkuje się niejako do wnętrza innej, dostępnej w danym serwisie strony. Innymi słowy: na "stronie" napisanej w języku HTML, np. w pliku index.html, który znajdował się na serwerze, w katalogu, na który wskazują wpisy DNS (Domain Name Server, serwer nazw domenowych), był kawałek kodu, który odpowiedzialny jest za to, że treść wskazanej, innej strony internetowej zostanie załadowana i wyświetlona w treści odwołującej się do takiego zasobu strony. Jeśli w następnym akapicie umieszczę znacznik IFRAME i wskaże - jako parametr - adres witryny Prezydenta, począwszy od następnego akapitu widać będzie zawartość strony Prezydenta. Tak to działa.

I co? Tu powinienem umieścić taki kod:

<iframe src="http://prezydent.pl/" height="200" width="510" > Tekst alternatywny, gdyby się nie udało wyświetlić strony Prezydenta </iframe>

Dokładnie tak samo działa to w przypadku serwisu wykop.pl, gdy linkowana witryna ma w sobie "ramkę" Wykopu. Dokładnie tak samo to działa w przypadku witryny Ośrodka Szkolenia Policji w Łodzi z s. w Sieradzu, która to strona, na zasadzie IFRAME właśnie, linkuje do tego serwisu, tj. do prawo.vagla.pl (tylko, że ja sprawdzam logi i wiem kto i kiedy linkuje do serwisu, a - najwyraźniej - webmaster Sejmu, ZUS, albo Pana Prezydenta nie sprawdza; ale nie czepiam się, bo mniej więcej wiem, jak to tam, przynajmniej z tym prezydenckim webmasteringiem, jest; por. Uwagi do serwisu prezydent.pl albo Co zobaczy obywatel?).

Kto nie chce być w takich ramkach, ten może tak przygotować swój własny serwis, by z takich ramek "wyskakiwać". Serwis internetowy Prezydenta, serwis Sejmu RP, czy strony ZUS nie są zbudowane w ten sposób, by automatycznie wyskakiwać z takich ramek. Prawo.vagla.pl jest tak zrobione, by wyskakiwać, i dlatego wyskakuje z ramek Wykopu i z ramek podlinkowanego wyżej serwisu policyjnego. Serwis wyskoczyłby również z ramki, gdyby w IFREME umieszczono link do tego serwisu na stronie umieszczonej pod domeną wirtualnyburdel.pl

Jak to ocenią organy ścigania? Wypada poczekać i dowiemy się więcej, ponieważ - jak czytam w kolejnym tekście TVN24, pt. Wirtualnyburdel.pl trafi do prokuratury:

Do warszawskiej prokuratury trafi doniesienie w sprawie umieszczenia strony internetowej Sejmu pod adresem wirtualnyburdel.pl. - Sprawa jest oczywista i wymaga naszej interwencji. Odpowiednie dokumenty są już przygotowywane - zapowiedział szef Biura Prasowego Sejmu Krzysztof Luft. - Zainspirowałem się słowami Janusza Palikota, który nazwał posłankę prostytutką, stąd ten burdel - powiedział portalowi tvn24.pl właściciel kontrowersyjnej domeny.

Hmm...

Opcje przeglądania komentarzy

Wybierz sposób przeglądania komentarzy oraz kliknij "Zachowaj ustawienia", by aktywować zmiany.

Ramkowa amatorszczyzna

Już kiedy przeczytałem te wiadomość na stronach idg.pl który chyba napisał o tym jako pierwszy (tam niestety nie udało mi się zamieścić komentarza, coś mnie ich serwer nie lubi...) zastanawiałem się, dlaczego ten ktoś, kto to zrobił, skoro dysponował już domeną np. wirtualnyburdel.pl, zamiast po prostu w DNS-ie dla tej domeny wpisac rekord A www.wirtualnyburdel.pl wskazujący na 195.187.136.11 zastosował taka amatorską kombinację z ramkami? Widać, że ktoś chyba nie bardzo wiedział co robi...
Ale tutaj warto jeszcze zapytać o to, jaka byłaby różnica w ewentualnej kwalifikacji czynu pod względem prawnym w jednym i w drugim przypadku? Na mojego naiwnego nosa do kombinacji z ramkami bardziej można się przyczepić - IFRAME bowiem to "w efekcie końcowym" osadzenie czyjejś treści na swojej stronie, bez zgody właściciela tej treści, czyli bliżej temu jednak do kopiowania niż linkowania - tak więc prawo autorskie się kłania... Natomiast utworzenie rekordu A to faktycznie w sensie dosłownym "umieszczenie strony pod adresem", ale moim zdaniem nie bardzo jest tu za co karać... Adres domenowy - ściśle rzecz biorąc i zgodnie z RFC - to tylko techniczny identyfikator ułatwiający dotarcie do danej maszyny bez potrzeby wpisywania jej adresu IP. Czy coś znajduje sie pod adresem www.sejm.gov.pl, www.wirtualnyburdel.pl, czy np. xyzzyx.yxhduiritrtidsss.net to wszystko jedno o ile tylko dla docelowych użytkowników tego adresu jest to jasne i łatwe do zapamietania. I teraz pytanie, kto miał być docelowym użytkownikiem tego adresu? Czy właściciel domeny gdzieś reklamował adres www.wirtualnyburdel.pl, informował o nim powszechnie? Jeżeli nie, to równie dobrze może twierdzić że ten adres utworzył tylko na swój prywatny użytek, żeby się samemu dla siebie pośmiać, że pod takim adresem zgłasza mu się serwer sejmowy... A to mu chyba wolno??? Ja też mam - dla czystej wygody - w obrębie swoich domen sporo adresów prowadzących do zewnętrznych serwerów i są one przeznaczone tylko i wyłącznie dla wygody moich użytkowników, czasami taki adres zrobiony jest dla pojedynczej osoby i tylko ona z niego korzysta - nie są one utworzone z zamiarem wykorzystywania ich przez kogokolwiek "z zewnątrz", choć oczywiście jest to technicznie możliwe, jeżeli ktoś zrobi sobie listing strefy (bo nie jest zablokowany) i je znajdzie...

Re: Ramkowa amatorszczyzna

zastanawiałem się, dlaczego ten ktoś, kto to zrobił, skoro dysponował już domeną np. wirtualnyburdel.pl, zamiast po prostu w DNS-ie dla tej domeny wpisac rekord A www.wirtualnyburdel.pl wskazujący na 195.187.136.11 zastosował taka amatorską kombinację z ramkami? Widać, że ktoś chyba nie bardzo wiedział co robi…

A może właśnie wiedział, i chciał być pewien, że zgłosi się właściwy serwis? Kto powiedział, że pod tym adresem IP serwowana jest jedynie strona sejmu? Obecnie rzadko się takie coś zdarza, zwykle pod jednym adresem IP jest wiele serwisów WWW, a właściwy jest wybierany na podstawie nazwy przekazanej w żądaniu HTTP. Zastosowanie ramki zapewnia użycie właściwej nazwy w żądaniu HTTP, użycie rekordu A w DNS spowoduje, że serwer obsługujący Sejm zostanie poproszony o stronę 'wirtualnyburdel.pl', do obsługi której niekoniecznie jest skonfigurowany.

No i znacznie prościej poprawić konfigurację serwera, żeby nie obsługiwała odwołań do innej nazwy DNS niż, żeby serwis „wyskakiwał z ramek”.

Re: Ramkowa amatorszczyzna

xpert17's picture

Kto powiedział, że pod tym adresem IP serwowana jest jedynie strona sejmu?

Akurat pod adresem http://195.187.136.11/ JEST strona Sejmu.

W obydwu jednak przypadkach,

W obydwu jednak przypadkach, moim zdaniem odpowiedzialność ciąży _TYLKO_ na webmasterach linkowanych/iframeowanych serwisów.

Mają oni dostępne narzędzia skutecznie chroniące przed takim wyciąganiem ich treści. Jeśli iframe to było już to poruszane przez Vaglę, jeśli dns'em to zawsze mogą wygenerować 302 do poprawnego adresu, lub też w ogóle nie obsługiwać żądań wirtualnyburdel.pl.

Ciekawe, że w niektórych stanach np. jeśli posiadasz otwartą/niezabezpieczoną sieć wifi to jesteś winny jej nie zabezpieczenia, jeśli ktoś włamie się do whitehouse.gov przez nią. W pl natomiast odwraca się uwagę od własnego/nieudolnego podwórka, wieszając biednego kowalskiego.

Drugą kwestią jest copyright treści sejmowych, czyż nie powinny one być własnością publiczną? O jakim więc łamaniu praw autorskich mówimy?

Rozwiązanie techniczne

mtrojnar's picture

zastanawiałem się, dlaczego ten ktoś, kto to zrobił, skoro dysponował już domeną np. wirtualnyburdel.pl, zamiast po prostu w DNS-ie dla tej domeny wpisac rekord A www.wirtualnyburdel.pl wskazujący na 195.187.136.11 zastosował taka amatorską kombinację z ramkami

Mnie przychodzą do głowy przynajmniej dwie odpowiedzi:

  1. Jeżeli pod docelowym adresem jest serwer wirtualny oparty na nazwach, to po prostu nie zwróciłby spodziewanej strony, o ile nie jest skonfigurowany do udzielenia odpowiedzi na nagłówek "Host: www.wirtualnyburdel.pl".
  2. Przekierowanie całej domeny nie dałoby możliwości zbierania statystyk i potencjalnie dodania do niej innych IFRAMEów.

Jest i w RBL ;)

To ja tylko dodam, że 195.187.136.11 jest listowany w 1 rbl-u: dnsbl.jammconsulting.com [206.123.70.50] ;)

Taką samą amatorską

Taką samą amatorską kombinacją jest użycie rekordu A zamiast CNAME ;) Trochę pokory.

Niestety prawo.vagla.pl nie

Niestety prawo.vagla.pl nie wyskakuje z ramek w Operze (9.64), ale poza tym w FireFoxie, Safari, IE7, IE6, IE8 już tak:)

Odnośnie tematu tak jak kolega @raj napisał, ramki to najłatwiejsza, ale też najmniej zaawansowana technika.
Można poza DNS'em użyć biblioteki cURL w PHP i tak przygotować stronę, która będzie pobierała treść innej i wyświetlała ją w kodzie własnej. Jednak w tym przypadku mamy już do czynienia z użyciem treści a nie podlinkowaniem do niej.

Pozdrawiam

"użycie" vs. "podlinkowanie"

VaGla's picture

W sprawie Opery - dziękuje za zdarcie mi łusek z oczu. Odnośnie kolejnych spraw - nawet jeśli skorzystam z tych bibliotek i będę przywoływał skryptami inne zasoby, to nie kopiuje ich i nie korzystam sam z treści zebranej na zdalnym serwerze osoby trzeciej, a jedynie daję możliwość użytkownikowi, by jego przeglądarka "zmiksowała" treści w ramach jego procesu oglądania strony dostarczającej meta informacje o elementach do miksowania. A to dlatego, że tu media są kompozytowe. Istnieje też różnica między sytuacają, w której ja teraz tutaj wpisze kod

<img src="http://adres.serwera/obrazek.jpg" height="200" width="510" alt="tekst alternatywny" />

A więc - posługując się nomenklaturą dyskusji internetowych - "zhotlinkuję" grafikę, a sytuacją, w której skopiuje obrazek.jpg na dysk serwera i zaczne go prezentować "u siebie":


<img src="http://prawo.vagla.pl/obrazek.jpg" height="200" width="510" alt="tekst alternatywny" />

Dla użytkownika pewnie będzie to miało niewielkie znaczenie, bo w większości przypadków nawet nie zauważy różnicy, jednak tak właśnie działa internet - pozwala odwoływać się do zasobów zdalnych. I o ile w przypadku hotlinkowania ktoś, kto dysponuje zdalną infrastrukturą zyskuje nagle wpływ na to, co zobaczy użytkownik serwisu "miksującego" (może się też temu przeciwstawić, wystarczy - jeśli np. korzystając z serwera Apache umieści formułkę w plikach konfiguracyjnych, albo chociażby i w .htaccess), to w przypadku przekopiowania i prezentowania "od siebie" już takiej kontroli "dysponent" obrazka.jpg nie ma...

--
[VaGla] Vigilant Android Generated for Logical Assassination

Nie do końca Vaglo masz

LukasS's picture

Nie do końca Vaglo masz rację. A to dlatego:

cURL pobiera zawartość z danej strony/pliku do akurat wywołanego skryptu (php dajmy na to), a więc jest przetwarzany przez serwer (apache dajmy na to), który następnie wypluwa te dane do przeglądarki pod domeną wirtualnyburdel.pl.

Są dwie opcje: te dane mogą zostać zapisane w cache (/tmp/ w apache) tak aby przy ponownym wywołaniu skryptu niepotrzebnie nie pobierać danych, tylko korzystać z tego co już jest; lub za każdym razem pobierać (wywoływać stronę prezydenta) i pobierać wygenerowany plik html. Kwestią dyskusyjną pozostaje sposób wyświetlania się elementów graficznych i styli, które nie muszą być podlinkowane bezwzględnie, jeśli więc nie są, nie pokażą się pod nowym adresem.

Ramki za to ułatwiają sprawę, ponieważ nie ważne czy elementy na stronie mają adresy bezwzględne i tak będą wyświetlane poprawnie, a do tego nie zachodzi przechowywanie (cache) czy kopiowanie jakichkolwiek materiałów po stronie serwera wirtualnyburdel.pl

Zgoda.

VaGla's picture

Zgadzam się, że wszystko zależy od konkretnego rozwiązania. Nie będę się spierał, że programista potrafi z wykorzystaniem bibliotek pójść również drogą przez pobieganie treści ze zdalnego serwera i prezentowanie jej "od siebie". Są różne możliwości - wszystko zależy od konkretnej inwencji programisty. Nie ma - jak przypuszczam między nami sporu, a ja w poprzednim komentarzu wskazałem jedną z możliwych, nieco upraszczając problem (wskazując alternatywy nie uwzględniając jeszcze innych możliwości), do czego niniejszym się przyznaję.
--
[VaGla] Vigilant Android Generated for Logical Assassination

Framekiller w IE

Taka ciekawostka - dowolny javascriptowy framekiller można też zablokować w IE:

<iframe src="http://prawo.vagla.pl" security="restricted"></iframe>

Piotr VaGla Waglowski

VaGla
Piotr VaGla Waglowski - prawnik, publicysta i webmaster, autor serwisu VaGla.pl Prawo i Internet. Członek Rady ds Cyfryzacji przy Ministrze Cyfryzacji, ekspert w Departamencie Oceny Ryzyka Regulacyjnego Ministerstwa Rozwoju, felietonista miesięcznika "IT w Administracji" (wcześniej również felietonista miesięcznika "Gazeta Bankowa" i tygodnika "Wprost"). Uczestniczył w pracach Obywatelskiego Forum Legislacji, działającego przy Fundacji im. Stefana Batorego w ramach programu Odpowiedzialne Państwo. W 1995 założył pierwszą w internecie listę dyskusyjną na temat prawa w języku polskim, Członek Założyciel Internet Society Poland, pełnił funkcję Członka Zarządu ISOC Polska i Członka Rady Polskiej Izby Informatyki i Telekomunikacji. Był również Członkiem Rady Informatyzacji przy MSWiA, członkiem Zespołu ds. otwartych danych i zasobów przy Komitecie Rady Ministrów do spraw Cyfryzacji oraz Doradcą społecznym Prezesa Urzędu Komunikacji Elektronicznej ds. funkcjonowania rynku mediów w szczególności w zakresie neutralności sieci. W latach 2009-2014 Zastępca Przewodniczącego Rady Fundacji Nowoczesna Polska, w tym czasie był również Członkiem Rady Programowej Fundacji Panoptykon. Więcej >>