Optymalne metody kompresji archiwów

Notatka opisuje kilka optymalnych algorytmów kompresji stosowanych do tworzenia archiwów. W szczególności pełniących rolę kopii zapasowej lub nośnika danych przekazywanych innym.

Aktualną wersję w formacie PDF możesz pobrać tu: [PDF]

Motywacja

Najczęściej stosowane algorytmy kompresji danych w systemach z rodziny UN*X takie jak bzip2 i gzip ze względu na swój wiek stały się nieefektywnym narzędziem archiwizacyjnym. Wprowadzenie na początku lat 2000 nowocześniejszych metod kompresji opartych o algorytm LZMA umożliwiło drastyczne (nawet do 70%) zmniejszenie przestrzeni dyskowej koniecznej do przechowywania tej samej ilości danych. Niesie to ze sobą możliwości obniżenia zarówno kosztów przechowywania danych, jak i obniżenia wagi szkodliwych substancji, które emitowane są do środowiska podczas ich transferu. Według uśrednionych szacunków pochodzących z badań[1] [2] przesłanie 1MB danych generuje około 10g CO2.

Proponowane metody kompresji

LZIP

Lzip jest algorytmem dostępnym na zasadach Powszechnej Licencji Wolnego Oprogramowania GNU (GPL). Został wdrożony do powszechnego użytku przez dystrybucje systemu GNU/Linux takie jak GNU Guix i Dragora; organizację IANA, która wykorzystuje go do dystrybucji bazy informacji o strefach czasowych oraz Parlament Europejski, który z jego wykorzystaniem publikuje zrzuty swojej bazy danych w formacie JSON.

Podstawowa implementacja lzip nie posiada obsługi wielu wątków procesora, wydłużając tym samym czas kompresji i dekompresji przetwarzanych danych. W repozytoriach wielu dystrybucji udostępniono pakiet plzip, który pozwala na równoległą kompresję archiwów z wykorzystaniem wielu wątków procesora.

Wśród narzędzi konsumenckich algorytm ten jest obsługiwany przez narzędzie kompresji środowiska graficznego GNOME, Midnight Commander oraz zmodyfikowaną wersję archiwizatora 7-zip dostępną również na platformę MS Windows.

Przykłady zastosowania

By skompresować dane za pomocą lzip stosujemy komendę:

tar cv katalog_z_danymi | lzip -c -f - > archiwum.tar.lz

Archiwum to możemy rozpakować za pomocą komendy:

tar xf archiwum.tar.lz

Stosując kompresję wielowątkową z plzip dobrze jest unikać mieszania z jednowątkowym tar, dlatego też kompresję wykonamy za pomocą komend:

tar cv katalog_z_danymi > archiwum.tar
plzip -c -f archiwum.tar > archiwum.tar.lz

a dekompresję wykonując:

plzip -d archiwum.tar.lz
tar xf archiwum.tar

Zstandard

Jest to algorytm opracowany przez pracowników Facebooka i opublikowany na zasadach licencji Otwartego Oprogramowania BSD. Wśród wdrażających go organizacji znajdziemy dystrybucję systemu GNU/Linux Archlinux. Jest on również rozważany jako domyślny format kompresji archiwów *.deb dystrybucji GNU/Debian i Ubuntu.

W repozytoriach dystrybucyjnych obecny jest jako pakiet zstd.

Przykład zastosowania

W celu utworzenia archiwum z wykorzystaniem zstd wykonujemy komendę:

tar cv katalog_z_danymi | zstd -c -z -q - > archiwum.tar.zst

Skompresowane pakiety rozpakowujemy za pomocą:

tar -I zstd -xvf archiwum.tar.zst

Podobnie jak algorytm Lzip, obsługiwany jest przez narzędzie archiwizacyjne środowiska GNOME, zmodyfikowaną wersję 7-zip oraz bazy danych AWS Redshift i RocksDB.

7-zip

Narzędzie wprowadzone na początku lat 2000, które jako jedno z pierwszych stosowało algorytm LZMA. Jest ono powszechnie dostępne na platformach MS Windows (na zasadach licencji LGPL/BSD/unRAR), macos (od wersji 1.0 jest to oprogramowanie własnościowe) oraz GNU/Linux (LGPLv2). Stanowi to ogromną zaletę jeśli kompresujemy nasze dane, by przekazać je współpracownikom i podwykonawcom.

Przykład zastosowania

By uzyskać siłę kompresji archiwum porównywalną z zaprezentowanymi wcześniej algorytmami, kompresję z wykorzystaniem 7zip przeprowadzimy za pomocą komendy:

tar cv katalog_z_danymi | 7z a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on -si archiwum.tar.7z

Archiwum dekompresujemy wywołując:

7z x archiwum.tar.7z
tar xf archiwum.tar

Porównanie skuteczności kompresji

Dla paczki logów osiągi wymienionych wcześniej komend prezentują się następująco:

473M    archiwum.tar
26M     archiwum.tar.gz
11M     archiwum.tar.lz
14M     archiwum.tar.zst
11M     archiwum.tar.7z

Dla zróżnicowanych plików użytkowników jednego z serwisów, zawierających dużo danych w postaci binarnej (pliki obrazów/PDF):

19G     files/
18G     files.tar
16G     files.tar.gz
12G     files.tar.lz
13G     files.tar.zst (najkrótszy czas kompresji)
11G     files.tar.7z

Kompresji do archiwum gzip dokonano z wykorzystaniem komendy:

tar cv katalog | gzip --best > archiwum.tar.gz

Pozostałe uwagi

Należy zauważyć, że ewentualne wdrożenie opisywanych algorytmów do kompresji logów odkładanych na serwerach może skutkować utratą kompatybilności z narzędziami takimi jak zcat, bzcat oraz fgrep, służącymi do szybkiego ich przeglądania i przeszukiwania z uwzględnieniem paczek po rotacji.

Więcej

Mozilla Firefox: Problemy z dodatkami chroniącymi naszą prywatność i nie tylko

W związku z problemami z certyfikatem służącym do podpisywania wtyczek dla przeglądarki Firefox w dniu dzisiejszym, są one stopniowo wyłączane przez przeglądarkę (wyświetla się powiadomienie informujące o wyłączeniu jednego bądź większej ilości dodatków w związku z problemami z ich weryfikacją).

Jest to zmiana zależna od czasu synchronizacji przeglądarki z serwerami Mozilli, w związku z tym może ona następować z opóźnieniem, bądź nie nastapić wcale jeśli sprawdzenie nastąpi po rozwiązaniu problemu przez Mozillę. Z dotychczasowych obserwacji wynika, że dotyczy ona użytkowników Mozilla Firefox oraz Tor Browser.

Wtyczki wyłączane to między innymi:

  • uBlock (blokowanie reklam);
  • NoScript (blokowanie wykonywania skryptów javascript na stronach);
  • Decentraleyes (ochrona przed śledzeniem przez serwery udostępniające biblioteki CSS i javascript);
  • AdBlock (podobnie jak uBlock, jednak jego używanie jest obecnie odradzane);
  • PrivacyBadger (blokowanie połączeń odwiedzanych stron z serwerami śledzącymi naszą aktywność).

Jeśli nasze korzystanie z internetu za pomocą przeglądarki Firefox jest chronione, którymś z wyłączonych dodatków rekomenduję tymczasowo wstrzymać się z wykonywaniem wrażliwych działań w internecie (facebook, odwiedzanie bankowości elektronicznej bez ręcznego wpisywania jej adresu, zakupy w internecie, logowanie się do odwiedzanych serwisów) oraz nie klikać w nie odwiedzane do tej pory adresy. Wszystkie dotychczasowo blokowane szkodliwe skrypty są uruchamiane w naszych przeglądarkach).

Jeśli musimy, któreś z tych działań wykonać, to wspomniane dodatki wciąż działają w przeglądarkach Google Chrome oraz Chromium.

Tymczasowe rozwiązanie problemu polega na ręcznym wyłączeniu sprawdzania wadliwego certyfikatu. W tym celu wpisujemy w pasku adresu about:config, potwierdzamy, że wiemy co robimy. Następnie wyszukujemy klucz „xpinstall.signatures.required” i zmieniamy jego wartość na false za pomocą dwukrotnego kliknięcia lewym przyciskiem myszy. Zmiana zachodzi od razu i nie wymaga restartu przeglądarki.

Należy jednak pamiętać, by wykonać ją ponownie, gdy problemy z dodatkami ustąpią. Pozostawienie jej na stałe skutkować będzie obniżeniem bezpieczeństwa naszego użytkowania w przyszłości.

Opisywane problemy powinny zostać rozwiązane w najbliższym czasie (dzień, góra dwa ze względu na różny czas synchronizacji wspomnianego wcześniej certyfikatu)

Więcej

Bitcoinowy szantaż, czy ktoś włamał się na moją skrzynkę?

Popularną formą spamu i próby wyłudzenia pieniędzy stają się wiadomości, których odczyt potrafi nam na chwilę zmrozić krew w żyłach. Mimo tego, że przywykliśmy do rozpoznawania oznak fałszywych wiadomości, ta może w pierwszej chwili wydawać się prawdziwa. Dzięki uzupełnieniu naszego „arsenału weryfikacyjnego” o sprawdzenie nagłówków wiadomości nauczymy się w sposób decydujący potwierdzać autentyczność otrzymanego maila.

Jak wygląda taka wiadomość? Pierwszy email, z którym się zderzyłem przyszedł w języku angielskim:

Cechy charakterystyczne takiej wiadomości to:

  • adres, z którego przyszła jest naszym adresem email. Spokojnie – to tylko pozory;
  • tytuł zawiera nasze imię bądź nazwisko, tu tez możemy być spokojni, w dobie mediów społecznościowych, dzięki którym można o nas dowiedzieć się naprawdę wiele, nie powinno nas to już zaskakiwać. W wersjach polskich częściej znajdziemy coś o tym, że nasze konto zostało zhakowane;
  • w treści wiadomości znajdziemy informację o tym, że nasze urządzenia zostały zainfekowane i przejęte, a my zostaliśmy nagrani podczas oglądania treści pornograficznych (zarówno ekran, jak i kamerka);
  • wiadomość zawiera identyfikator portfela Bitcoin, na które musimy przelać wskazaną kwotę w ciągu 48 godzin. W przeciwnym wypadku nagrania zostaną rozesłane do naszych kontaktów;
  • przechwałki autora dotyczące jego umiejętności śledzenia losów wiadomości i naszych działań.

Wersja polska wiadomości, która pojawia się dość często jest dodatkowo uwiarygadniana całkiem poprawną polszczyzną:

Cześć,

Gdybyś był bardziej czujny podczas zabaw ze sobą, nie napisałbym wiadomości do Ciebie. Nie sądzę, że zabawy ze sobą są niezwykle straszne, ale kiedy wszyscy koledzy, krewni i przyjaciele otrzymają nagranie wideo, jest to oczywiście dla ciebie co będzie. Umieściłem wirusa na odwiedzonej stronie porno. Gdy obiekt naciśnie przycisk odtwarzania, urządzenie rozpocznie nagrywanie ekranu i wszystkie kamery w urządzeniu zaczną działać.

Co więcej, mój wirus tworzy zdalny pulpit z funkcją keyloggera z twoim urządzeniem, więc mogłem zebrać wszystkie kontakty z twojego e-maila, komunikatorów i innych sieci społecznościowych. Piszę na adres e-mail, ponieważ jest to twój roboczy adres, więc powinieneś to sprawdzić.

Jeśli chcesz usunąć wszystkie zebrane dane, wyślij mi 1000$ w BTC (kryptowaluta).

To jest mój portfel Bitcoin: 17e3RHmohKBvkbrTN9QTeuXdnkDnk6Eriu

Masz 48 godzin po przeczytaniu tego listu. Zegar tyka od momentu otwarcia wiadomości.

Nie wiesz, jak uzupełnić portfel Bitcoin? W dowolnej wyszukiwarce napisz “jak przesłać pieniądze do portfela btc”. To łatwiejsze niż wysłanie pieniędzy na kartę kredytową!

Po twojej transakcji usuwam wszystkie twoje dane. W przeciwnym razie wyślę wideo z twoimi figlami do wszystkich twoich kolegów i przyjaciół chyba wiesz jak łatwo Ciebie znaleźć w sieci!!!

Od teraz bądź ostrożny! Odwiedź tylko bezpieczne strony!

Pierwsza z wiadomości przyszła na skrzynkę prywatną. W takim wypadku czytając ją, by nie dać nadto ponieść się emocjom, możemy zrobić sobie krótki „rachunek sumienia” – czy rzeczywiście oglądaliśmy porno lub wykonywaliśmy inne opisane w treści czynności, czy mamy zaklejoną kamerkę? Najczęściej strach związany z autentycznością włamania kończył się na zaklejonej kamerce. Co raz więcej z nas to robi.

Drugi mail trafił na skrzynkę firmową, z której może korzystać więcej niż jeden pracownik. Tu dodatkowym czynnikiem podnoszącym nam ciśnienie może być fakt, że nie wiemy co robili pozostali pracownicy, bądź wiemy, że ich praktyki dotyczące bezpiecznego posługiwania się technologiami nie są najlepsze. Publikacja nagrań kogoś kojarzonego z naszą firmą może mieć wpływ nie tylko na jego prywatny wizerunek, może też zrujnować to jak postrzegane jest nasze przedsiębiorstwo.

W obu przypadkach czytając wiadomość powinniśmy zachować zimną krew i nie panikować. Jeśli masz wśród znajomych jakiegoś rodzaju informatyka albo kogoś trochę rozeznanego w tej dziedzinie skonsultuj się z nim. W firmie dobrym powiernikiem tego problemu będzie dział IT. Tu nie musisz się przejmować, wstydzić czy z czegokolwiek tłumaczyć w związku z opisanymi w wiadomości prywatnymi poczynaniami. Widzieliśmy już wiele takich wiadomości – dobrze, że zachowujesz czujność i pytasz.

Sprawdzanie nagłówków wiadomości

Możemy też samodzielnie sprawdzić i upewnić się, że taka wiadomość jest jedynie kolejnym spamem. Do tego celu musimy posłużyć się funkcją obecną w większości klientów poczty elektronicznej: pokaż nagłówki. Jest to funkcja, którą znajdziemy nie tylko w Outlooku czy Thunderbirdzie, ale również klientach przeglądarkowych, takich jak GMail czy RoundCube, którego często spotykamy korzystając ze służbowej skrzynki. To właśnie w nagłówkach, które nie są domyślnie wyświetlane ukryta jest wiadomość o prawdziwym źródle wiadomości.

Return-Path: <cudzy.adres@email.com>
Delivered-To: nasz.adres@email.pl
Received: from adres.naszego.serwerapocztowego.pl ([fd4d:6169:6c63:6f77::7])
        by adres.naszego.serwerapocztowego.pl with LMTP
        id fY/tBlVshFxdFgAAlwj3nw
        (envelope-from <cudzy.adres@email.com>)
        for <nasz.adres@email.pl>; Sun, 10 Mar 2019 02:45:57 +0100
Received: from oogw1232.ocn.ad.jp (oogw1232.ocn.ad.jp [153.149.141.162])
        by adres.naszego.serwerapocztowego.pl (Postcow) with ESMTP id A3CD240B83
        for <nasz.adres@email.pl>; Sun, 10 Mar 2019 02:45:50 +0100 (CET)
Received: from cmn-spm-mts-006c1.ocn.ad.jp (cmn-spm-mts-006c1.ocn.ad.jp
        [153.153.67.160])
        by oogw1232.ocn.ad.jp (Postfix) with ESMTP id DC43C406C3
        for <nasz.adres@email.pl>; Sun, 10 Mar 2019 10:36:25 +0900 (JST)
Received: from mwb-vc-mts-004c1.ocn.ad.jp ([153.153.67.75])
        by cmn-spm-mts-006c1.ocn.ad.jp with ESMTP
        id 2nLShdl4O07dL2nO5hnm1n; Sun, 10 Mar 2019 10:36:25 +0900
Received: from sgs-vcgw116.ocn.ad.jp ([153.149.141.198])
        by mwb-vc-mts-004c1.ocn.ad.jp with ESMTP
        id 2nO5hluIDnqfd2nO5hzhw0; Sun, 10 Mar 2019 10:36:25 +0900
Received: from miobs.com (miobs.com [61.126.14.136])
        by sgs-vcgw116.ocn.ad.jp (Postfix) with ESMTP id 7C1CF98026E
        for <nasz.adres@email.pl>; Sun, 10 Mar 2019 10:36:25 +0900 (JST)
Received: from [189-44-178-170.customer.tdatabrasil.net.br] (unknown
        [189.44.178.170])
        (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
        (Client did not present a certificate)
        by miobs.com (Postfix) with ESMTPSA id E7D7DCF8006C
        for <nasz.adres@email.pl>; Sun, 10 Mar 2019 10:36:06 +0900 (JST)
To: nasz.adres@email.pl

To są przykładowe nagłówki każdej wiadomości, którą dostajemy na naszą skrzynkę pocztową. Co oznaczają?

  • Return-Path: tu znajdziemy informację o adresie zwrotnym, na który ma trafić nasza ewentualna odpowiedź, bądź gdzie ma zostać wysłane powiadomienie o tym, że wiadomość nie mogła zostać dostarczona;
  • Delivered-To: nasz adres email skrzynki, do której wiadomość została dostarczona;
  • To: często tu również zobaczymy nasz adres, może się on jednak różnić jeśli korzystamy z aliasów;
  • Received bądź Received-From: tych nagłówków będziemy często widzieć więcej niż jeden. Zawierają one zapis drogi pomiędzy serwerami jaką pokonała wiadomość od momentu wysłania do trafienia na naszą skrzynkę.

To właśnie Return-Path oraz Recieved zdradzają, że nasza skrzynka poczty elektronicznej nie została zaatakowana, jesteśmy bezpieczni (przynajmniej w tym wypadku). Gdyby wiadomość została rzeczywiście wysłana z naszej skrzynki pocztowej jedyne adresy jakie powinniśmy widzieć w nagłówkach to nasze własne: naszej skrzynki oraz naszego serwera pocztowego. Jeśli obecność więcej niż jednego nagłówka Recieved oznacza, że wiadomość przyszła do nas z zewnątrz.

Czemu ktoś może wysłać wiadomość z moim adresem email?

Tu niestety zderzamy się, z ograniczeniem protokołu SMTP, który obsługuje wysyłanie naszych wiadomości. Nie zawiera on żadnych mechanizmów ograniczających to co możemy wpisać zarówno w pola To jak i From. W przypadku omawianego maila spamer w to drugie pole wpisał nasz adres email. Oznacza to, że możemy podjąć próbę wysłania wiadomości na dowolny adres swoim formatem przypominający adres skrzynki pocztowej i możemy próbować podać się za każdego.

Nie jesteśmy jednak w tej sytuacji całkiem bezbronni, choć kolejna metoda przydatna jest głównie dla osób i organizacji hostujących pocztę we własnej domenie. Poza sprawdzaniem nagłówków możemy w konfiguracji naszej domeny ustawić rekord SPF. Jest to dodatkowa informacja, którą serwery pocztowe sprawdzają przy ocenianiu wiadomości pod kątem spamu. W poprawnie skonfigurowanym rekordzie SPF będziemy informować pozostałych, że prawdziwe wiadomości w naszym imieniu (by pozostać precyzyjnym: imieniu naszej domeny) może wysyłać jedynie wskazany przez nas serwer bądź serwery. Rekord ten zawierać może zarówno adres domenowy poczta.serwer.pl jak i jeden bądź kilka adresów IP, pod którymi operują nasze serwery pocztowe. Nie jest to rozwiązanie gwarantujące stuprocentową skuteczność. Traktujmy je jako coś, co wspomaga bezpieczeństwo naszej komunikacji elektronicznej.

Dodatkowe sprawdzenie wiadomości, czy tylko mnie autor próbuje naciągnąć?

W sieci znajdziemy usługi, które wspomagają tworzenie tak zwanej sieci zaufania (ang. Web of Trust). Przydatną w tym wypadku jest Bitcoin Abuse Database, która pozwala na sprawdzenie zawartego w wiadomości adresu portfela Bitcoin i upewnienie sie, że nie jesteśmy jedynymi, którzy taką wiadomość otrzymali. Listy zgłoszeń dotyczących portfeli wymienionych w omawianych przykładach:

Jeśli i Tobie zdayło się otrzymać taką wiadomość, gorąco zachęcam Cię do dodania kolejnego zgłoszenia informującego o naciągaczu. Dzięki temu może i ktoś inny nie straci głowy po odczytaniu podobnej wiadomości i nie ulegnie fałszywemu szantażowi. Dodanie takiego zgłoszenia nie wymaga zakładania żadnego konta.

W zderzeniu z fałszywą wiadomością, która wygląda na wysłaną z naszego adresu email nie pozostajemy bezbronni. Pierwszym narzędziem, do którego możemy się odwoływać jest sprawdzenie nagłówków wiadomości dostępne w większości klientów poczty (stacjonarnych i przeglądarkowych). Jeśli mamy do czynienia z próbą wyłudzenia od nas pieniędzy na portfel Bitcoin sprawdźmy podany w wiadomości adres portfela i zgłośmy go. Z kolei posiadając pocztę we własnej domenie możemy samodzielnie bądź z pomocą administratora dodać właściwy rekord SPF do jej konfiguracji, który pomoże innym serwerom pocztowym weryfikować autentyczność wysyłanych przez nas wiadomości.

Więcej

BleachBit, bezpieczne usuwanie danych

Poniższy wpis przedstawia na razie najbardziej przydatną funkcję programu, która pozwoli na usunięcie plików w sposób niemożliwy do odzyskania. Z czasem będę go uzupełniał o opisy kolejnych funkcji.

Aktualną wersję poradnika w formacie PDF możesz pobrać tu: [PDF]

Opis programu

logo BleachBit to program oferujący przede wszystkim możliwość wyczyszczenia systemów
operacyjnych (MS Windows/macOS/Linux) ze zbędnych plików pozostających na dysku podczas normalnego użytkowania komputera. Dodatkową, ważną funkcją programu jest bezpieczne usuwanie plików i katalogów w sposób, który zaciera po nich wszystkie ślady i czyni je niemożliwymi do odzyskania.

Witryna oprogramowania: https://www.bleachbit.org/

Proces instalacji w systemie Windows

By pobrać pakiet instalacyjny BleachBit należy odwiedzić witrynę programu i pobrać archiwum w formacie .exe (pierwsza opcja na liście). Przeprowadzając normalny proces instalacji należy upewnić się, czy w dostępnych komponentach programu pozostała zaznaczona opcja „integrate shred”. Po zakończeniu instalacji zostanie uruchomiony program BleachBit.

Dla pozostałych systemów operacyjnych proces instalacji jest również standardowy, w przypadku macOS pobieramy właściwy pakiet instalacyjny i postępujemy z nim jak z każdym innym nowym programem. W przypadku systemów
GNU/Linux dokonujemy instalacji z repozytoriów naszej dystrybucji.

Bezpieczne usuwanie katalogów z dysku

Po uruchomieniu programu BleachBit z menu Plik wybieramy opcję Potnij katalogi:
Okno programu

Wybór katalogów do usunięcia

Zostanie nam wyświetlone okno, w którym wskazujemy katalog z danymi do usunięcia:
Wybór katalogu do bezpiecznego usunięcia

Potwierdzenie wyboru – decyzja, której nie możemy cofnąć

Przed rozpoczęciem usuwania zostaniemy poproszeni o potwierdzenie naszego wyboru. W tle wyświetli się lista katalogów i plików do usunięcia, która pozwoli nam na upewnienie się, że chcemy usunąć właściwe dane.

UWAGA: Po potwierdzeniu tej operacji usunięte dane stają się niemożliwe do odzyskania. Upewnij się, że ich usunięcie jest niezbędne, bądź posiadasz kopię zapasową.
Potwierdzenie wyboru

Proces usuwania i jego zakończenie

W trakcie usuwania BleachBit będzie nas informował o postępie usuwania danych. W zależności od ilości plików oraz struktury katalogów proces może potrwać od kilkunastu sekund do kilku godzin. Po jego wykonaniu na pasku postępu wyświetli się właściwy komunikat.
Zakończenie procesu

Więcej

Samsung Galaxy S (GT-I9000) aktualizacja do KitKat

Poniżej przedstawione działania na pewno skasują wszelkie dane z Twojego telefonu. Mogą też spowodować, że nie będzie on działał i znajdzie się w stanie znanym jako brick.

Root i CWM Recovery

Dla powodzenia całego procesu nasz system powinien działać pod kontrolą systemu Android Gingerbread 2.3.5. Dodatkowo w trakcie należy dostosowywać wszelkie buildy w związku z tym polecam flashowanie takiego, do którego mamy komplet paczek. Propozycję można znaleźć pod adresem: https://archive.org/details/i9000_galaxysmtd.7z. Zawiera ona:

  • sterowniki dla telefonów Samsung;
  • właściwą wersję programu Odin, która działa z naszym tlefonem;
  • kompletny obraz systemu, root, oraz jądro systemu z CWM recovery;
  • ostatnie wydanie cyanogenmoda 11 dla telefonu galaxysmtd;
  • działające z nim google apps.

Dodatkowa uwaga: dobrze jest wykonywać działania na systemie Windows, który gotowi jesteśmy potem reinstalować, bo może w wyniku tych działań zostać zawirusowany. Maszyna wirtualna nas nie urządza.

Pierwszym krokiem jest instalacja sterowników Samsung dla naszego telefonu i ponowne uruchomienie systemu. Kolejny to uruchomienie Odina w wersji 1.83, która jako ostatnia właściwie obsługuje model I9000.

Teraz zajmujemy się telefonem i uruchamiamy go w trybie Download trzymając jednocześnie przyciski VOL DOWN + POWER + HOME. Trzymamy je do momentu, w którym na ekranie pojawi się żółta grafika i napisy. Po podłączeniu telefonu Odin powinien zareagować i wyświetlić komunikat zawierający Added.

Ubuntu i Bash, od czego zacząć?

Piszę z zawodową sprawą, pytaniem do eksperta Linuxa. Kiedyś przez krótki czas korzystałem z Minta, ale postanowiłem się poznać go na porządnie korzystając z najpowszechniejszej wersji – Ubuntu.
Czy możesz mi polecić co powinienem poznać by poruszać się po nim sprawnie oraz gdzie/jak mogę tego dokonać (szkolenia, tutoriale)?
Dodatkowo możesz mi wytłumaczyć popularność Basha, dlaczego jest tak ważny? Jego też bym chciał poznać więc wszelkie wskazówki do nauki mile widziane.

Ubuntu będzie całkowicie w porządku do nauki systemów GNU/Linux. Obecnie obok Centos zdaje się być standardem zarówno na desktopach jak i na serwerach. Włącznie z tym, że bez składania specjalnego zamówienia, mój służbowy komputer przyszedł właśnie z Ubuntu na pokładzie. Obecnie korzystam z Ubuntu Studio, które ułatwia mi konfigurację i pracę z multimediami, którą dość często wykonuję.

W sprawie porządnej nauki Ubuntu gorąco polecam Ci książkę Ubuntu. Oficjalny podręcznik. Wydanie VIII. Nie jest droga, a zawiera całkiem fajnie przedstawione rozmaite aspekty systemu nie tylko dla początkujących, ale również dla zaawansowanych. Poza książką najprostszą metodą uczenia się systemu jest wyszukiwanie rozwiązań swoich problemów w sieci i wprowadzanie ich w życie oraz samodzielne kombinowanie bez obawy o zepsucie systemu. Zakładając, że będziesz robił kopię zapasową ważnych dla siebie danych ponowna instalacja systemu zajmie zaledwie kilkadziesiąt minut.

Dobrymi serwisami zawierającymi informacje, poradniki oraz artykuły o ciekawych programach są WebUpd8 oraz OMG! Ubuntu!.

Bash wywodzi się z czasów, kiedy interfejsy graficzne jeszcze nie istniały, a potem przez długi czas nie były zbyt powszechne. W tamtym okresie do wykonywania akcji takich jak obliczenia na podstawie danych z otrzymanego dokumentu i tworzenie grafów oraz innych form przetwarzania wymagało łączenia ze sobą wielu małych programów (takich jak AWK/SED – przetwarzanie dokumentu czy bc – wykonywanie obliczeń). Tworząc taki zbiór komend połączonych ze sobą znakami | (przekaż wyjście do następnej komendy) lub && (po zakończeniu wykonaj następującą komendę) za pomocą jednej linijki jesteśmy w stanie na przykład pobrać wszystkie wystąpienia danego słowa w plikach i policzyć je wykonując następnie na podstawie tej informacji wprowadzenie nowego rekordu do bazy danych. Takie linijki nazywamy one-linerami.

Stopniowo łączone ze sobą programy stawały się co raz bardziej skomplikowane i dalsze trzymanie ich w jednej linijce nie miało sensu. Powodowało, że były one kompletnie nieczytelne i niemożliwe do dalszego rozwijania, nie mówiąc już o ponownym wprowadzaniu. Zaczęto zapisywać je w skryptach (plikach tekstowych z rozszerzeniem *.sh zawierających listę instrukcji do wykonania). Bash jest jednym ze środowisk, w których możemy wykonywać nasze komendy. Dostarcza do tego celu mechanizmy pętli oraz instrukcji warunkowych, które ułatwiają tworzenie programów (puryści lubią trzymać się nazywania ich skryptami) wykonujących za nas skomplikowane zadania bez potrzeby naszego czuwania nad ich wykonaniem i podejmowania kolejnych decyzji. Jest to zatem świetne narzędzie do automatyzacji zadań wykonywanych w systemach z rodziny Uniksa (od niedawna również MS Windows). Warto jednak pamiętać, że bash to jedynie środowisko i zestaw podstawowych funkcji. Zaawansowane zadania możemy realizować dzięki zestawom aplikacji dostarczanych w pakietach takich jak coreutils. To dzięki nim w systemie pojawiają się aplikacje awk/sed/cron (planowanie automatycznego wykonania zadania)/bc i wiele innych. Tworzone przez nas linijki czy skrypty są w rzeczywistości kompilowaniem ich funkcji ze sobą, tak byśmy nie musieli żmudnych zadań wykonywać samodzielnie.

Do nauki basha i pozostałych narzędzi linii komend polecam: nixCraft (publikują świetne poradniki), Serię Bash by example” od IBM, SED i AWK” na stronie Grzegorza Nalepy, kiedyś O’Reilly wydało świetną książkę „sed & awk, która została nawet wydana u nas przez Helion, ale niestety ciężko jest nasze rodzime wydanie gdziekolwiek jeszcze dostać. Tu podobnie jak w przypadku systemu Ubuntu, dobrze jest uczyć się kombinując i starając się zrozumieć rozwiązania przedstawiane online dla problemów, które mamy do rozwiązania.

Grafika Ubuntu dzięki uprzejmości Canonical Ltd. udostępniona na licencji CC BY-SA 3.0.

Więcej

Czy Twój sklep sprzedaje Ci malware?

W ostatnich dniach w sieci pojawiła się bardzo interesująca lista zawierająca adresy sklepów internetowych zainfekowanych malware. Co to oznacza dla ich klientów? Odwiedziny takiej strony mogą zakończyć się infekcją ich przeglądarki, a w konsekwencji kradzieżą tożsamości lub danych dostępowych do banku itp.

Piszę o tym, bo wśród 5484 [dostęp 2016-10-15] znalazło się aż 48 sklepów z końcówką .PL. Poniżej zamieszczam ich listę:

360-vr.pl
4online.pl
adbutter.pl
alarmprojekt.com.pl
alezabawki.pl
arcteryx.pl
art-pak.pl
bluetek.pl
camery.pl
crwstar.pl
dabrowazkrakowa.pl
desideri.pl
didax.pl
drgiorgini.pl
drzewamodelarstwo.pl
e-klosz.pl
ekademiainwestora.pl
hellyhansen.trekkersport.com.pl
holystuff.pl
icyfra.pl
ideotech.pl
izisfashion.pl
jedzenieturystyczne.pl
kamera-360.pl
kamerynakask.pl
latienne.pl
lazieneczka.pl
llorens.pl
luxbaby.pl
mrrobot.pl
multihurtonline.pl
mysfashion.pl
primamoda.com.pl
radicalwear.pl
reig.pl
sani-tryb.pl
sherpa.pl
sielskibox.pl
sklep.dussi.pl
sklepfc.pl
sportimus.pl
szynaka.pl
techsport.pl
thenorthface.pl
tpzz.pl
trekkersport.com.pl
vr-360.pl
zettaprint.pl

Co zrobić z taką listą?

Jeśli jesteś klientem, któregoś ze sklepów wstrzymaj się z zakupami i odwiedzaniem tej strony, powiadom o sprawie jego właścicieli i przeskanuj swój komputer na przykład za pomocą narzędzia ADWcleaner. Ja ze swojej strony w wolnych chwilach porozsyłam powiadomienia do wymienionych wyżej sklepów.

Jeśli jesteś właścicielem sklepu natychmiast skontaktuj się ze swoim administratorem i usuń malware ze swojej strony. Jeśli po potwierdzeniu usunięcia wyrazisz wolę usunięcia Twojego sklepu z listy proszę o kontakt, w najbliższej wolnej chwili to zrobię.

Czemu publikuję tę listę zanim poinformowałem właścicieli?

Jest to zadanie dość czasochłonne, a dobro i bezpieczeństwo użytkowników jest zdecydowanie najważniejsze. Do podobnego wniosku doszli prowadzący usługę GitLab. To tam znajduje się obecnie aktualizowana lista zainfekowanych sklepów. Początkowo została usunięta z serwisu GitHub oraz GitLab, jednak Ci drudzy po konsultacji telefonicznej z autorem wklejki postanowili ją przywrócić.

Obraz wykorzystany w tekście to Malware Infection autorstwa Blogtrepreneur (CC BY)

Więcej

Jak nie dać się okraść w sieci (3 kroki)

Ostatnio wyciekły dane klientów firmy Netia S.A., udostępniono ich adresy email, numery telefonów, często również adresy zamieszkania. Wcześniej, na gwiazdkę 2011 roku wyciekły dane klientów prywatnej agencji wywiadu Stratfor. Wówczas udostępniono dane kart kredytowych i wszystko co potrzebne by zrobić ostatnie przedświąteczne zakupy na czyjś koszt. Niezależnie od tego czy chcemy chronić nasze pieniądze czy prywatność zasady postępowania w sieci są prawie takie same.

('126420946', 'home', '2016-07-02 12:58:19', '2016-07-02 13:26:02', '1', '0', '1', '201', 'Internet 1 Mb/s', 'Internet', 'Nie zweryfikowano', '0', '0', '0', '', '', '', '', '', '0', '', '', '', '0', '', '', '', '0', '', '', '', '', '', '', '0', '0', '', '', '', '', '', '0', '', '', '', '', '0', '', '', '', '', '', '0', '', '', '', '', '0', '', '', '', '', '', '', '0', '', '', '', '', 'ahewka@plon.pl', '797720764', '1', '0', '0', '0', '1', '', '', '', '', '0', '', '', '', '', '', '0', '', '', '', '', '', '', '0', '', '0', '0', '0', '', '', '0', '0', '0', '0', '', '', '0', '', '', '0000-00-00 00:00:00', '0', 'krótki', '7FF10N70AMS4', '', '', 'zamowienie', '', '', '', '', '0', '', '', '0', '', '0', '', '', '0000-00-00 00:00:00', '0000-00-00 00:00:00', '', '0', '0', '0000-00-00 00:00:00', '', '0', '0.00', '0.00', '', '', '', '', '', '', '0', ''),
('763456785', 'home', '2015-10-18 11:31:08', '2015-10-18 12:01:01', '1', '0', '1', '210', 'Szybki Internet Max + Telefon Wieczory i Weekendy VAS - Rezygnacja', 'Promocje', 'Nie zweryfikowano', '0', '0', '0', '', 'henryk', 'Okonor', '', '', '0', '', '', '', '0', 'Warszawa', '', 'Klasyczna', '0', '5/42a', '', '01-524', 'Warszawa', '22', '212421122', '0', '0', '', '', '', '', '', '0', '', '', '', '', '0', '', '', '', '', '', '0', '', '', '', '', '0', '', '', '', '', '', '', '0', '', '', '', '', '7ywoda@klip.pl', '652331128', '0', '0', '0', '1', '0', '', '', '', '', '0', '', '', '', '', '', '0', '', '', '', '', '', '', '0', '', '0', '0', '0', '', '', '0', '0', '0', '0', '', 'a:6:{i:375;s:3:\"389\";i:305;s:3:\"306\";i:46;s:2:\"46\";i:232;i:-1;i:249;s:3:\"249\";i:254;s:3:\"254\";}', '0', '', '', '0000-00-00 00:00:00', '0', 'krótki', '7YUE19EDNA40', '', '', 'zamowienie', '', '', '', '', '0', '', '', '0', '', '0', '', '', '0000-00-00 00:00:00', '0000-00-00 00:00:00', '', '0', '0', '0000-00-00 00:00:00', '', '0', '0.00', '0.00', '', '', '', '', '', '', '0', ''),
('642071494', 'home', '2011-09-10 12:30:04', '2011-09-10 13:30:52', '1', '0', '0', '208', 'Internet do 100 Mb/s', 'Internet', 'Nie zweryfikowano', '0', '133', '0', '', ' - bez szczegółów', 'Poczekam', '', '', '0', '', '', '', '0', '', '', '', '0', '', '', '', '', '', '', '0', '0', '', '', '', '', '', '0', '', '', '', '', '0', '', '', '', '', '', '0', '', '', '', '', '0', '', '', '', '', '', '', '0', '', '', '', '', 'olenia@o2.pl', '6772231126', '1', '0', '0', '0', '0', '', '', '', '', '0', '', '', '', '', '', '0', '', '', '', '', '', '', '0', '', '0', '0', '0', '', '', '0', '0', '0', '0', '', 'a:5:{i:305;s:3:\"306\";i:46;s:2:\"46\";i:48;s:2:\"48\";i:232;s:3:\"232\";i:249;s:3:\"249\";}', '0', '', '', '0000-00-00 00:00:00', '0', 'krótki Twoje zapytanie', 'L993999C0999', '', '', 'zamowienie', '', '', '', '', '0', '', '', '0', '', '0', '', '', '0000-00-00 00:00:00', '0000-00-00 00:00:00', '', '0', '0', '0000-00-00 00:00:00', '', '0',

To tylko przykład ogromnej ilości prywatnych informacji jakie udostępniono w ramach ataku na Netię (dane zostały oczywiście zmienione).

1. Nie podawaj swoich danych byle gdzie

Adres zamieszkania, numer telefonu podajemy tylko wtedy kiedy naprawdę musimy i ufamy danej firmie. Podobnie z adresem email, zgodnie z ustawą o ochronie danych osobowych powinniśmy chronić go tak samo jak nasz adres zamieszkania. NIGDY NIE PODAJEMY ŻADNYCH HASEŁ, pod żadnym pozorem.

2. Zachowaj zimną krew i czujność czytając pocztę

Niezależnie od tego jak nagląca i pilna może wydawać się wiadomość, którą właśnie otrzymaliśmy. Czy jest to informacja o zablokowaniu dostępu do naszego konta w BZ WBK, czy wezwanie do aktualizacji danych osobowych. Podobnie z super ofertami przygotowanymi specjalnie dla nas w formie plików PDF i DOC. Warto zadać sobie kilka pytań sprawdzających:

  • Czy jestem klientem tej firmy?
  • Czy podawałem im właśnie ten numer telefonu albo adres email do kontaktu?
  • Czy jestem zainteresowany jakąkolwiek ofertą od tej firmy?
  • Czy adres email, z którego przyszła wiadomość rzeczywiście należy do firmy za którą się podaje?

W razie jakichkolwiek wątpliwości zawsze kontaktujemy się z infolinią firmy.

3. Nie otwieramy plików pochodzących z nieznanego źródła

Jeden spreparowany dokument PDF lub DOC, albo dobrze przygotowany „skrócony odnośnik” (na przykład https://tinyurl.com/ydtcvhp) może doprowadzić do infekcji naszego komputera lub konta na facebooku (por. Nie buty, tylko wirusy. Roz­dają wirusy na fej­sie.). Według dotychczasowych informacji dokładnie w taki sposób padła Netia S.A., spreparowany załącznik DOC został otwarty na komputerze pracownika z odpowiednimi dostępami.

4. Do każdej usługi stosuj inne hasło

To jest krok, który jest znacznie cięższy do wprowadzenia w naszym codziennym korzystaniu z sieci. Nie jest jednak tak źle jak mogłoby się wydawać, jeśli skorzystamy z jednej z tych dwóch metod:

  • KeePassX to oprogramowanie, które pozwala nie tylko na generowanie bezpiecznych haseł, ale również na przechowywanie ich w doskonale zaszyfrowanej bazie, do której możemy uzyskać dostęp nie tylko z komputera ale również z naszego smartfona.
  • Niepełnym zastępstwem, ale świetnym uzupełnieniem dla usług, do których hasła po prostu musimy pamiętać jest stworzenie kilku stref bezpieczeństwa i przypisanie dla nich bezpiecznych, haseł, które zapamiętujemy i odpowiednio stosujemy. W razie wycieku podobnego, do tego który przydarzył się Google z usługą Gmail możemy być pewni, że najważniejsze usługi, z których korzystamy pozostaną zabezpieczone, bo dla zachowania bezpieczeństwa wystarczy nam zmiana hasła w garstce usług. Pierwszym krokiem jest przygotowanie kilku bezpiecznych haseł, następnie przydzielamy je do grup usług takich jak „bankowość elektroniczna”, „poczta”, „media społecznościowe” i tym podobne.

5. Używaj bezpiecznych haseł

Spokojnie. Bezpieczne hasła to nie tylko niemożliwe do zapamiętania ciągi znaków i cyfr pokroju:

 ^/mY;sCC+q&D-:9}B4G7AJV56kUt,@?[d+u

Znacznie bezpieczniejsze przykłady to:

  • SledzWBitejSmietanie
  • TruskawkaOkraszonaSluchawkami15
  • MojMonitorToLG543!@

Podane przykłady są znacznie łatwiejsze do zapamiętania. Jakie są główne zasady przygotowania takiego hasła? Staramy się by nie były to hasła słownikowe, to znaczy takie, które występują po sobie na przykład w przysłowiach. Zlepienie ze sobą kilku słów z naszego otoczenia pozwoli nam nie tylko na stworzenie bezpiecznego hasła, ale też ułatwi przypomnienie go sobie, gdy ponowie się w nim znajdziemy.

Wyszło aż 5, ale już pierwsze 3 kroki wprowadzone w życie bardzo poprawią nasze bezpieczeństwo. Niestety musimy być przygotowani na to, że to socjotechnika, a nie pojawiające się co raz to nowe zagrożenia stanowią największe niebezpieczeństwo. Jakkolwiek wymyślne nie byłyby wirusy, to najczęściej wpuszczamy je do naszych urządzeń sami. Tylko i wyłącznie wyszkolenie w sobie takiego filtra przychodzących do nas informacji możne nas obronić przed tragicznymi w skutkach wyciekami prywatnych informacji, a w najgorszym przypadku kradzieży gotówki.

Więcej

Nie buty, tylko wirusy. Rozdają wirusy na fejsie.

Jeśli widzicie jakiś link w serwisie facebook, ale nie znacie domeny najlepiej nie klikajcie na niego wcale. Jeśli jednak chcecie zobaczyć co się pod nim kryje, korzystamy z opcji „otwórz w trybie incognito”. Mają go Firefox i Chrome.
W przeciwnym wypadku narażacie się na kilka przekierowań i przejęcie konta na facebooku. W Waszym imieniu będą rozsyłane zaproszenia do grupy z fałszywym linkiem oraz zamieszczane komentarze.

Jeśli już to masz:
– w ustawieniach swojego profilu cofnij autoryzację wszelkich aplikacji,
– wyloguj wszelkie aktywne sesje,
– zmień hasło,
– zbadaj swój system oprogramowaniem adwcleaner.
Powinno pomóc.

PS Jak wspomniał Aleksander dobrym rozwiązaniem jest też stosowanie wtyczek takich jak NoScript, PrivacyBadger albo zwykły Adblock (lub przyjemniejszy uBlock).

Więcej

Migracja z ZSH do BASH

Ostatnio postanowiłem wrócić do basha, w związku z tym stanąłem przed problem migracji historii. Okazał się on trochę cięższy ze względu na dokładane przez zsh prefiksy do komend, np.:

: 2145123543:0;git push origin master

Ciąg cyfr przypadkowy, chodzi o pokazanie wzorca. Nie wiem do końca czy robi tak każda konfiguracja zsh. Ja akurat korzystałem z oh-my-zsh. By się go pozbyć i mieć swoją historię w bashu polecam następującą komendę:

cat ~/.zsh_history | sed 's/\:...........\:.\;//g' > ~/.bash_history

Usuwa ona prefix i po przeładowaniu basha mamy dostęp do naszej historii. Dodatkowym ułatwieniem, które lubię stosować w swoim korzystaniu z konsoli jest dopełnianie komendy na podstawie historii, na dowolnym etapie jej budowania za pomocą klawiszy strzałek „↑” i „↓”. Rozwiązanie to znajdziecie w moim repozytorium z plikami konfiguracyjnymi, w pliku .initrc, który należy umieścić w katalogu domowym.

Więcej