TechLife devBlog

Grudzień 2005

Firefox@Ubuntu

Linux, Ubuntu 31 grudnia 2005 15:15

A miało być tak pięknie. Każda "ważna nowość" miała być natychmiast paczkowana i puszczana w obieg fanatycznych userów. Z Gnome'm się udało, ale Firefox'a 1.5 jak nie było tak nie ma.

Powrót do przyszłości

Nauka 31 grudnia 2005 01:58

Jak podaje Wikipedia:

Déjà vu (fr. już widziane) - odczucie, że przeżywana obecnie sytuacja wydarzyła się już kiedyś, w jakieś nieokreślonej przeszłości, połączone z pewnością, że to niemożliwe.

Któż z nas nie doznał kiedyś tego uczucia. To już chyba było! Gdzieś już to widziałem! Raz już to przeżyłem! Ale jak nazwać zdarzenie, które nie mieści się w tej definicji? Co jeżeli dokładnie wiem, kiedy wydarzyło się to wcześniej, jestem tego pewien i nie mam żadnych wątpliwości co do prawdziwości tego zjawiska?

Nie pamiętam, kiedy miałem pierwsze "Déjà vu" o ile można to tak nazwać, ale pamiętam niesamowite zdziwienie jakie wywoływały we mnie te zjawiska, kiedy to jeszcze byłem dumnym uczniem szkoły podstawowej.

Zaczynało się to zawsze tak samo, ale na początku nie mogłem tego zauważyć. To był po prostu sen, ale sen inny niż pozostałe. Bardziej wyrazisty i swoją realnością odróżniający się od przedziwnej logiki snów. Był po prostu realny. Jednak jak to ze snami bywa, po jakimś czasie się je zapomina.

Naukowcy twierdzą, że sny miewamy tylko w czasie fazy snu nazywanej REM, która w cyklach snu występuje co ~1,5h i trwa średnio 10 minut. Oczywiście ilość wystąpień fazy REM zależy od długości naszego snu i co ciekawe sen pamiętamy tylko jeżeli wybudzimy się nie dłużej niż 10 minut po jej zakończeniu. Jeżeli ktoś wybudzi nas zaraz po zakończeniu tej fazy jesteśmy w stanie opowiedzieć swój sen bardzo szczegółowo natomiast im bliżej 10 minut od zakończenia tym samym pozostają w naszej pamięci tylko strzępy informacji.

W przypadku "tych snów" nie miałem problemów z ich zapamiętaniem. Można powiedzieć, że byłem tak zdziwiony ich wyrazistością iż zaraz się budziłem tym samym pamiętając cały sen. Sny te nie były długie. Czasami nawet sprowadzały się do jednego wyrazistego obrazu, a czasami była to krótka "scenka". Chociaż z początku bardzo mnie dziwiły i bez wątpliwości mogłem zakwalifikować je do "tych snów" to jednak następnego dnia już o nich nie pamiętałem, ponieważ jak wiadomo nie odświeżane informacje schodzą do naszej pamięciowej piwnicy i grozi im zapomnienie.

No i leżały w tej piwnicy czekając, ale nie na zapomnienie, a na swoją kolej. A kiedy ta nadeszła wyskakiwały tak nagle jak te różne straszydła na animacjach flash'owych. No było jak nagłe spięcie, iskra która przeskakuje pomiędzy obrazem w naszej pamięci a tym co właśnie oglądamy. Jak kalejdoskop złożony z milionów części, które właśnie ułożyły się w ten jeden niepowtarzalny wzór, który jednak jakimś cudem jest nam już dobrze znany. Jak kolorowanka, której zapamiętane przez nas kontury znowu wypełniły się tymi samymi kolorami.

Działo się to w różnych sytuacjach. Czasami była to konfiguracja miejsc, aut, ludzi i pogody, a czasami czyjaś odpowiedź przy tablicy. Jednak najbardziej zapadła mi w pamięć śmierć chomika...

Podobno w czasie snu nie potrafimy kreować marzeń a jedynie miksujemy znane nam przedmioty, miejsca, twarze i odczucia. Jest to skutkiem tego, iż nasz mózg sortuje sobie w tym czasie informacje przyswojone przez nas w ciągu dnia, i wkłada je w odpowiednie szufladki regału z napisem "Pamięć długa" (tak właśnie działa uczenie się).

Wydaje się to logiczne ale w żadne sposób nie wyjaśnia to jak mogłem wyśnić śmierć mojego chomika z tygodniowym wyprzedzeniem. Tym bardziej, iż nie był to standardowy rodzaj śmierci chomików a i chomikowi nie w głowie było wybieranie się już na tamten świat. Dokładnie było to tak, iż przyjechała do mnie kuzynka, która miała wówczas jakieś 4 latka. Uwielbiała mojego chomika, a zwłaszcza łapać do w rączkę i ściskać tak mocno, iż jego oczy bliskie były wystrzelenia w kosmos i w krótkim czasie wyprzedzenia obu są Pionier. Właśnie w obawie o jego zdrowie chomik został wyeksportowany na balkon, gdzie w cieniu stolika turystycznego cieszył się wolnością. Cały dzień mijał nam na pilnowaniu wszędobylskiej kuzynki a kiedy nastała godzina 16:00 i ktoś wspomniał coś o chomiku wybiegłem nagle na balkon. Wybiegłem, ponieważ po południu słońce przesuwało się przed balkonem likwidując tym samym każdy skrawek cienia. A był to bezchmurny lipcowy dzień...
Kiedy dobiegłem zaglądnąłem pod stolik i ujrzałem chomika leżącego na środku akwarium, a z jego pyszczka wystawał tylko mały czerwony języczek. W podstawku umieszczonym w kącie nie było ani grama wody - wszystko wyparowało. Biedny chomik usmażył się żywcem :-( . Moje pierwsze zwierzątko zmarło z powodu mojego zaniedbania. A wierzcie mi że dla kogoś w wieku 10 lat to bardzo wiele znaczy. Pamiętam, że płakałem jak bóbr przez całe dwa następne dni.

Ale jednocześnie nie mogłem się nadziwić temu ogromnemu "spięciu" jakiego doznałem zaglądając wówczas pod stolik. Przypomniałem sobie, że tydzień wcześniej widziałem w jednym z "tych snów" właśnie ten obraz. Widziałem ale oczywiście nie przejąłem się nim i kilka dni później już o nim zapomniałem. Wszystko się zgadzało: kadr, ułożenie chomika, wystający języczek, pusta miseczka z wodą, nogi od stolika, balkonowe czerwone kafelki i biała ściana w tle. Wszystko to oglądałem po raz drugi z pełną świadomością, gdzie i kiedy widziałem to wcześniej oraz bez żadnych wątpliwości co do prawdziwości powtórzonego zdarzenia.

Od czasu tego wydarzenia postanowiłem jak najdokładniej zapamiętywać te wyraziste sny. A kiedy już jakiś się pojawił starałem się zrobić wszystko aby senne zdarzenie nie powtórzyło się w rzeczywistości. Robiłem inne rzeczy niż zwykle, wracałem i chodziłem do szkoły inną drogą i ogólnie starałem się robić wszystko inaczej. Ale to przychodziło jak grom z jasnego nieba i uświadamiało mi, że właśnie, przez to iż starałem się uniknąć jakiegoś zdarzenia powodowałem jego wystąpienie. Zupełnie tak jak by przyszłość nie miała alternatyw a ludzie wolnej woli.

Pewnego razu widziałem w śnie moją mamę, idącą do pracy. Mama przechodziła przez jedyne ruchliwe skrzyżowanie na drodze do pracy i dokładnie widziałem jak wpada pod koła auta zjeżdżającego z drogi szybkiego ruchu. Obudziłem się ze łzami w oczach. Zupełnie tak, jak gdyby wyrok już zapadł. Jednak bałem się komuś o tym powiedzieć. Bałem się zobaczyć to znowu...

I wiecie co? Nie ma już tego skrzyżowania. Teraz zrobili tam rondo. A moja mama nigdy nie miała żadnego wypadku. Sam nie wiem co o tym myśleć.

Od tego czasu miałem jeden, może dwa takie sny. Ale o niczym ważnym. Po prostu zwykłe konfiguracje przedmiotów, słów, ruchów ciała. Później oczywiście wszystko się wydarzało a ja przypominałem sobie o tym śnie. Ale nie działo się to już tak często, zupełnie jakby zjawisko wygasało. Może to wiązało się z okresem dojrzewania? Niektóre dzieci w okresie dojrzewania wywołują nieświadomie demonstracje parapsychiczne (jak np Joanna Gajewska) a ja po prostu miałem "takie" sny.

Kiedyś widziałem odcinek Star-Trek, w którym Enterprise wpadał w czarną dziurę, która cofała go w czasie o kilka godzin, tak iż po ich upływie wpadał w nią znowu. Takie zdarzenia wywoływały w całej załodze duże emocje, który pozostawiali oni w mijanej czasoprzestrzeni jak gęstą chmurę gazu. A kiedy znaleźli się ponownie w tym miejscy czasoprzestrzeni odbierali echa swoich emocji które po kilku "iteracjach" były tak silne, iż wpłynęły na ich decyzje i dzięki temu uniknęli kolejnego spotkania z czarną dziurą. Może nie jest to naukowe wyjaśnienie, ale przecież często nauka nadgania dopiero za fantastyką.

A może po prostu znowu zmieniali coś w Matrix'ie ?

Hakowanie przeglądarką II - Ankiety

Design 26 grudnia 2005 15:45

Dzisiaj dowiemy się jak można łatwo manipulować źle skonstruowaną ankietę internetową. Na początek znajdźmy sobie cel. Żeby nie było za łatwo to wybierzemy sobie jakiś "szanowany" serwis, w którym teoretycznie takie błędy nie powinny mieć miejsca. Wchodzę sobie więc na gazeta.pl i przeglądam bieżące wiadomości. Ks. Jankowski zakłada instytut swojego imienia, jak miło, mamy ankietę.

Przed

W opcjach naszej jedynej słusznej przeglądarki ;) wyłączamy zapisywanie ciasteczek, ponieważ to właśnie dzięki nim skrypty gazety rozpoznają czy już oddaliśmy głos w ankiecie. Kiedy już wyłączymy ciasteczka odpalamy naszego szpiega nagłówków, którego używaliśmy w poprzedniej notce. A następnie na pytanie Inicjatywa prałata to przejaw udzielamy odpowiedzi patriotyzmu. Dlaczego tak? Bo wiadomo, że większość odpowiedziała pychy ale my ich przekonamy, że się mylą. W końcu mamy demokrację i większość (czyli my) ma zawsze rację ;).

Wyniki

No proszę! Kto by się spodziewał :D No to zaczynamy przekonywanie innych. Wracamy do okienka naszego szpiega nagłówków i począwszy od góry szukamy pierwszego nagłówka wysłanego metodą POST. Po znalezieniu takowego przyduszamy przycisk Powtórz żądanie... i oto objawia nam się okienko z wszystkimi potrzebnymi nam informacjami.

Szpieg

Możemy teraz wcisnąć Replay w ten sposób oddając kolejne głosy. Ale marny tego skutek bo do nadgonienia mamy 3000 głosów. Musimy więc uruchomić produkcję taśmową :)

Teraz potrzebny nam będzie serwer z obsługą php, może być nawet własny localhost. Z pomocą przybędzie nam zaimplementowany w php CURL czyli Client URL. Jeżeli wasz serwer odmówi wykonywania poleceń CURL'a to znaczy, że nie posiada pakietu php4-curl czy php5-curl i należy go doinstalować. Dzięki niemu zbudujemy sobie nadajnik i nim będziemy seryjnie nadawać odpowiednie dane do odbiornika, czyli skryptu ankietowego gazety, który z utęsknieniem czeka na nasze głosy.

Do dalszego działania potrzebny nam będzie ten skrypt php. A z okienka naszego szpiega nagłówków musimy wyciągnąć adres skryptu oczekującego na dane z formularza [1], oraz treść zapytania które chcemy powtarzać [2].

Potrzebne dane

Nie przejmujmy się że skrypt do którego się odwołujemy ma rozszerzenie html. To tylko dla bezpieczeństwa zamaskowane rozszerzenie php. Teraz wystarczy, że wyedytujemy nasz skrypt i pod nagłówek CURLOPT_URL podstawimy nasz adres [1] a do nagłówka CURLOPT_POSTFIELDS nasze żądanie [2]. Teraz wystarczy umieścić skrypt na serwerze i wywołać go w przeglądarce. Skrypt powtórzy nasze zapytanie 100 razy i najlepiej odpalić go w przeglądarce tekstowej lub przy wyłączonym pobieraniu grafiki tak aby wczytywał się tylko tekst i wszystko szybko śmigało. A wyniki możecie podziwiać sami.

Rezultat

To co? Przekonujemy, że to jednak patriotyzm ? ;) Ja się jeszcze trochę pobawię. Aha, to teraz już wiecie dlaczego Korwin był najpopularniejszy w internetowych ankietach ;)

Hakowanie przeglądarką I - komentarze

Design 25 grudnia 2005 17:23

Wreszcie święta i mam czas, żeby coś tu naskrobać. Wielu z was zauważyło pewnie, że od jakiegoś czasu na niektórych jogach zapanowała moda na blokowanie możliwości komentowanie wpisów. Nie będę wnikał czym to jest spowodowane bo to nas nie interesuje. Chciałem tylko pokazać jak w łatwy sposób można obejść tą niedogodność, ale nie zachęcam nikogo do łamania zasad obowiązujących na omawianych jogach. Informacje te potraktujcie jako materiał szkoleniowy.

Na początek musimy się dowiedzieć jak działa mechanizm, który pozwala nam owe komentarze dodawać. Otóż mechanizm ten składa się z dwóch modułów:

1. Formularz komentarza
2. Skrypt wykonujący

Formularz komentarza, który umieszczamy na swoich jogach należy potraktować jako nadajnik, natomiast skrypt wykonujący jako odbiornik. Schemat jest taki, iż każdy posiada na jogu nadajnik a ojciec dyrektor zamontował w systemie jeden zbiorczy odbiornik. Kiedy komentujemy jakiś wpis, wówczas formularz (nadajnik) wysyła odpowiednio sformatowany sygnał do skryptu wykonującego (odbiornika) odpowiedzialnego za dodanie naszego komentarza do bazy danych.

Kiedy ktoś usuwa ze swojego joga formularza (nadajnik) wcale nie oznacza to, iż nie możemy skomentować jego notki. Wszystko co musimy zrobić to podłączyć się do Matrix'a i za pomocą własnej anteny nadać piracki sygnał ;)

A teraz trochę jaśniej:

1. Należy zbadać jak sformatowany jest sygnał, który formularz wysyła do skryptu. W tym celu posłużymy się własnym jogiem, przeglądarką Firefox i jej rozszerzeniem Live HTTP Headers. Po zainstalowaniu rozszerzania w menu Narzędzia naszego liska pojawi się opcja Podgląd nagłówków HTTP. Dzięki temu cacku dowiemy się o czym rozmawia serwer strony www z naszą przeglądarką.

Teraz wybieramy sobie z naszego joga notkę, której nikt nie skomentował, tak abyśmy nie rozesłali innym powiadomienia o nowym komentarzu. Kiedy już znajdziemy osamotnioną notkę, odpalmy nasz podglądacz nagłówków i sprawdzamy czy opcja Przechwyć jest zaznaczona.

Puste okno podglądacza

Jeżeli tak możemy przystąpić do skomentowania naszej notki. Treść niech będzie krótka np TEST. Po skomentowaniu wracamy do okienka naszego szpiega nagłówków i począwszy od góry szukamy pierwszego nagłówka wysłanego metodą POST.

Szukamy żądania

Kiedy już go odnajdziemy, a szukania nie powinno być za wiele, wciskamy przycisk Powtórz żądanie... I oto otwiera nam się okienka, z danymi gotowymi do powtórnego wysłania.

Szukamy żądania

2. Teraz czas na utworzenia własnego pirackiego sygnału. Będziemy do tego potrzebowali specyficznych danych tj zmienna eid która mówi systemowi jaki wpis będziemy komentować. No więc wystarczy, że wejdziemy na jog osoby która nie pozwala nam komentować jej notek i klikniemy na tytuł danej notki, czy też na link komentuj. W adresie strony powinniśmy zobaczyć zmienną eid którą potrzebujemy. Jeżeli nasza "ofiara" jest aż tak podstępna iż nie udostępniła nam takich danych to zawsze możemy odszukać jej wpis na stronie głównej i tam już naszą zmienną znajdziemy w linku prowadzącym do tej notki.

No więc mamy już nasze informacje wywiadowcze i teraz wystarczy podmienić odpowiednie dane w naszym okienku powtórzonego żądania. Jadąc od góry zmieniamy własną nazwę joga na nazwę joga który jest w centrum naszych zainteresowań ;) To samo czynimy w nagłówku Host: oraz w nagłówku Referer:. W nagłówku Referer: podmieniamy również zmienną eid, na tą którą zdobyliśmy na zwiadzie.

Teraz zajmijmy się dolną częścią naszego okienka. Tu też podmieniamy wartość zmiennej eid. Na końcu podmieniamy zmienną commbody która w naszym przypadku wynosi TEST. To oczywiście jest treść naszego komentarza. Jeżeli będziemy chcieli napisać więcej niż jedno słowo, wówczas należy zamiast spacji stosować znak "+" np:

commbody=Ala+ma+kota.

No i nie stosujcie polskich krzaków, bo znaki wpisane przez nas mogą być nie zgodne z kodowaniem użytym na "atakowanym" jogu.

Kiedy jednak powiększamy nasz tekst, wówczas wydłuża się również wielkość naszego żądania. Określa ją zmienna Content-Length - ostatnia w polu powyżej. Musimy więc zbadać długość naszego ciągu np poprzez wklejenie do jakiegoś edytora tekstu i sprawdzenia statystyki tekstu. Wówczas dowiemy się ile znaków ma nasze żądanie i tą liczbą uaktualniamy wartość zmiennej Content-Length. Można też na oko wstawić jakąś większą liczbę. Jeżeli jednak tego nie zrobimy nasze żądania zostanie obcięte, co będzie wiązało się ze skróceniem tekstu naszego komentarza.

3. Piracki sygnał mamy gotowy. Teraz tylko przydusimy przycisk Replay i nadajemy go do Matrix'a :)

Przypominam, że wpis ten nie jest żadnym odwetem na osobach blokujących komentarze i zachęcam do uszanowania ich decyzji. Materiały te mają służyć jedynie powiększeniu Waszej wiedzy o formularzach.

A w następnym odcinku będziemy masowo wypełniali ankiety ;P

Cała prawda o: maluch.

Funny 12 grudnia 2005 18:10

Jedzie facet BMW - najnowszy model i nagle dogania go Maluch.
Kierowca Maluch otwiera szybę i krzyczy:
- Znasz sie pan na Maluchach.
Facet w BMW dodaje gazu. Patrzy na licznik - 150 km/h. I znów dogania go Maluch. I znów kierowca Malucha krzyczy:
- Znasz sie pan na Maluchach.
Facet w BMW wrzuca kolejny bieg i przyspiesza. 200 km/h. I znów dogania go Maluch. Facet z Malucha krzyczy:
- Znasz sie pan na Maluchach.
Facet z BMW taki zdziwiony otwiera szybę i krzyczy:
- Znam sie na Maluchach.
- To niech mi pan powie, jak sie w tym złomie dwójkę wrzuca.

No i mają rację ci, którzy mówią, że w każdej historii jest ziarenko prawdy.

Strona 1 z 2 | Starsze »