11:05
10/10/2017

Jeśli chcecie “zamazać” jakiś fragment grafiki, nie używajcie rozmazywania. Jest to proces, który w pewnych sytuacjach można “odwrócić”, a dodatkowo odczytanie choćby kawałka oryginalnie zamazanej treści pozwala domyślić się innych fragmentów, których być może nie dało się “odmazać”. Proces odmazywania zamazywanych treści przedstawimy na przykładzie błędu, jakie popełnił nasz redaktor, Marcin. Ten tekst jest jedną z wymierzonych mu kar :)

Nie do końca zamazany dowód osobisty

28 września w Niebezpieczniku pojawił się mój tekst o tym, że zgłoszenie utraty dowodu wyświetla niepotrzebnie zbyt wiele danych. Ten tekst opisywał nadmierne ujawnianie danych osobowych przez nową usługę Ministerstwa Cyfryzacji, ale jednocześnie sam — choć nie wprost — ujawniał zbyt wiele…

W tekście znalazł się zrzut z zamazanymi (moimi) danymi osobowymi:

To jest druga wersja obrazka, gdzie zamazanie jest skuteczne. W pierwszej wersji obrazka rozmazanie było prostsze i przez to możliwe było odwrócenie procesu zamazania i ustalenie pewnych moich danych.

O sprawie 29 września powiadomił nas Czytelnik, Damian, który poprawnie ustalił pewne moje dane (nie wszystkie, ale wystarczająco dużo by się zmartwić). W korespondencji, Damian wspomniał iż skorzystał z narzędzia Smart Deblur.

Jest to narzędzie dostępne w wersji darmowej i choć jest przeznaczone na Windowsa to działa także na Linuksie pod Wine. Nie jest trudne w użyciu, a nasz Czytelnik słusznie zgadł, że do rozmazania danych na obrazku użyto prostego rozmycia Gaussa (i to właśnie był błąd!!!). Ktoś, kto posłużył się tym programem, mógł odczytać przynajmniej część moich danych: imię, nazwisko, część numeru PESEL, część numeru dowodu. Wbudowane w te numery sumy kontrolne pozwoliły ustalić brakujące elementy z dużą dozą prawdopodobieństwa.

Ustalenia Damiana, choć nie były w 100% poprawne, były wystarczająco poprawne abym się zmartwił. Poza tym nie po to rozmazuje się dane, aby ktoś ustalał choćby ich część. W ramach pokuty przeprowadziłem samodzielnie pewne eksperymenty i potwierdziłem jedno — nawet darmowy Smart Deblur pozwalał coś ustalić.

Przyczyny wpadki

Choć już wcześniej widziałem przypadki odmazywania danych i wiedziałem, że jest to proces odwracalny, ten konkretny zrzut przygotowywałem najpierw do pewnej prezentacji i w pośpiechu. Dodatkowo moją czujność uśpił fakt, że pracowałem na… swoich danych.

W Niebezpieczniku przywiązujemy dużą wagę do ochrony źródeł i zwykle nie korzystamy z tego rodzaju cenzurowania obrazków. Preferujemy stałe bloki lub mozaikę. Dodam też, że w Niebezpieczniku prace redakcji są niezależne od usług szkoleniowych i pentestów. Wpadka miała charakter w 100% redakcyjny. Ale już od tygodnia, zgodnie z maksymą “ucz się na błędach”, ten przypadek wszedł na stałe do naszego szkolenia z tzw. Security Awareness i zdążyliśmy go już zaprezentować pracownikom jednego z banków. Wśród innych pokazywanych technik “odcenzurowania dokumentów” wzbudził niemałe zainteresowanie.

Anonimizuję dane — co robić, jak żyć?

Jeśli przygotowujecie grafikę z danymi, które mają zostać ocenzurowane, używajcie wyłącznie czarnych bloków lub czegokolwiek elementu graficznego, który skutecznie przykryje pierwotny fragment.

Pamiętajcie też, że nawet lekka modyfikacja obrazu, jeśli jego oryginał już znalazł się w internecie, może być zupełnie nieskuteczne — algorytmy analizy obrazków, np. te z wyszukiwarki TinEye, potrafią znaleźć obrazki zbliżone do zadanego, a zatem i oryginalny plik, o ile jest publicznie dostępny.

Co więcej, obrazki zawierają metadane — a jedną z nich może być miniaturka oryginalnego kadru. Nawet po edycji obrazka w Photoshopie (zamazaniu blokiem jednolitego koloru!) ktoś może zobaczyć co pod nim było. Bardzo widowiskowy przykład znajdziecie w przekrojowym tekście na temat analizy metadanych w zdjęciach, który publikowaliśmy na naszych łamach parę lat temu, por. Zanim wgrasz wakacyjne zdjęcia do sieci…

Uwaga, czasem skuteczne techniki cenzurowania w przypadku obrazków, wcale nie muszą takimi być w przypadku PDF-ów… por. wpadki instytucji państwowych podczas anonimizacji dokumentów!

Zadośćuczynienie i wnioski

Wielokrotnie w Niebezpieczniku pisaliśmy, że błędy zdarzają się każdemu, ale trzeba z nich wyciągać wnioski. Od tej pory redakcja Niebezpiecznika nie będzie stosować żadnych zabiegów “upiększających” przy zamazywaniu. Będziemy stosować wyłącznie bloki jednolitego koloru do zakrywania wrażliwych informacji na obrazkach.

Poza tym ponieważ dałem plamy, za ujawnienie moich danych, zdecydowałem się przekazać 300 zł na organizację pozarządową wskazaną przez Czytelnika, który wytknął mi błąd. Czytelnik poprosił o wpłatę na rzecz Centrum Praw Kobiet.

PS. Wczoraj, już po złożeniu tego tekstu, który czekał na dzisiejszą publikację, w tej samej sprawie odezwał się do nas inny Czytelnik, Tomek. Tomek za odczytanie moich danych zabrał się inną metodą. Niebawem opublikuje on artykuł, w którym opisuje ten proces na łamach bloga jego pracodawcy, PGS Software. EDIT: Artykuł jest już dostępny.

Przeczytaj także:

62 komentarzy

Dodaj komentarz
  1. Najpewniejszym sposobem (może trochę dłuższym i bardziej uciążliwym, ale w 100% pewnym), jest zamazanie danych w byle jaki sposób, a następnie zrobienie zrzutu ekranu. Od tej pory zamazania/zamalowania/wycięcia są już obrazem :-)

    • nawet nie wiesz jak bardzo sie mylisz

    • a jak zapiszesz jako jpg w photoshopie to czym będzie? orłem?

    • Nie wiem jak wpadłeś na ten w “100% pewny” sposób, ale jest on kompletnie bez sensu. Słabe rozmycie da się “odwrócić” i nie ważne czy to będzie zrzut ekranu, kopia kopii obrazka czy cokolwiek innego. Może podam przykład: wyobraź sobie jeszcze słabiej rozmyte dane, do tego stopnia, że gołym okiem można rozszyfrować informacje. Co Ci wtedy da zrobienie zrzutu ekranu?

    • No to proszę o wyjaśnienie jak bardzo się mylę? Przez zamazanie danych w byle jaki sposób chodziło mi np. o użycie funkcji ołówka czy nawet wklejenie naklejki. W momencie zrobienia zrzutu ekranu, nie ma możliwości usunięcia naklejki tak by odsłonić to co jest pod nią.

      Może faktycznie nie doprecyzowałem, że byle jak nie oznacza np. użycia rozmycia gausa czy wir, ale po robieniu zrzutu tego co nałożymy na obraz nie da się znać. Jeżeli się mylę to proszę o wyjaśnienie, bo takie pisanie “nawet nie wiesz jak bardzo się mylisz” brzmi śmiesznie bez konkretnych argumentów. Mylę się to się pokłonię i przeproszę, że palnąłem bzdurę, nie mylę się to piszcie do rzeczy.

    • Zrobienie zrzutu ekranu jest dobrym sposobem na wymazanie EXIF lub innych metadanych, ale to wszystko. Oczywistym jest, że w JPG nie zapisuje się historia np. Photoshopa. To nie są pliki projektów PSD, tylko goła grafika rastrowa. Odblurowanie robi się bez wykorzystania wyżej wymienionych.

  2. Pamiętam historię zatrzymania pewnego pedofila, który postanowił pochwalić się swoją gębą zniekształcajac ją w podobny sposób.
    https://thelede.blogs.nytimes.com/2007/10/08/interpol-untwirls-a-suspected-pedophile/

  3. A czy nie lepiej i szybciej użyć do anonimizacji prostego narzędzia jakim jest np. MS Paint, a w nim po prostu zaznaczyć prostokątem fragment zawierający dane i nacisnąć DELETE ? Efekt podobny, ale po zapisie mamy spłaszczony obraz z białym pustym polem. A może MS Paint to nie najlepszy pomysł ?

    • MSPaint mnie zaskoczył, nie zgubił EXIF…

  4. nie jestem ekspertem, więc mogę strzelić gafę…a co ze zwykłym zaznaczeniem i wycięciem zaznaczonego fragmentu ze skanu/obrazka?? oczywiście nie ma to wpływu na odczyt danych z metadanych, ale czy nie jest tak samo skuteczne jak jednolity kolor?

    • Nie ma znaczenia, czy użyjesz jednolitego koloru, czy wytniesz fragment. Wycięcie fragmentu to po prostu ustawienie danego obszaru wartościami 0, czyli w zależności od formatu może to być albo całe czarne tło albo tło przezroczyste. Niektóre programy być może mogą obsługiwać to w inny sposób, ale ja się jeszcze z takimi sytuacjami nie spotkałem.

  5. Właśnie ujawniłeś w jakim banku masz konto.
    Ps. zadzwonię do Ciebie z metodą na pentestera i wyłudzę bitcoiny na horom curkę :)

  6. bo trzeba stosować pikselizację albo czarne paski

    • Pikselizacja może być podatna na atak bruteforce, co zaprezentowano tutaj: https://dheera.net/projects/blur

    • Na podstawie czcionki i w miarę ograniczonego alfabetu (wyrazów, pesel: cyfry) można wytworzyć kombinacje i je pixelizować (robić hashe) celem odgadnięcia pierwotnego tekstu.

    • A ja serdecznie zalecam stosowanie karnych kutasów aby skutecznie zamazać tekst.
      Tylko należy pamiętać o spłaszczeniu obrazu przed wysłaniem w sieć!

    • Nieodpowiednia grubość pikseli przy pikselizacji pozwala też odczytać litery i cyfry.

    • Pikselizacja jest także odwracalna – te same grupy znaków zawsze tworzą tę samą mozaikę pikseli. Skuteczny jest jedynie jednolity kolor

  7. Czy nie było tu już kiedyś artykułu o jednym pedofilu, który zamazywał swój paskudny ryj wtyczką “swirl” (czy jakoś tak) i potem się okazało, że algorytm można odwrócić i jego kolekcja zdjęć stała się dowodem w sprawie?

  8. Artykuł spoko jak zwykle, tylko nie rozumiem po co ten przelew? Zastraszał was? I do tego na jakąś idiotyczną feministyczną fundację która wmawia kobietom że jest im źle ;)

    • Tyle razy w życiu mi grożono, że trudno mnie zastraszyć :). Zapewniam Cię, że ten przelew to był mój pomysł. Pomyślałem sobie, że:

      1. jak za coś zapłacę, to lepiej zapamiętam błąd;
      2. myślę, że generalnie fajny jest zwyczaj opłacania w ten sposób swoich wpadek (zob. https://niebezpiecznik.pl/post/unizeto-przekaze-3-000-pln-na-hospicjum/);
      3. czuje się z tym lepiej. Dałem dupy, ale przynajmniej ktoś inny będzie miał lepszy dzień bo zobaczy ruch na koncie. Ktoś inny będzie się cieszył, że znajdując moją wpadkę przyczynił się dla jakiejś sprawy. Dla mnie to OK :)

      Wyboru NGO dokonał ten, kto znalazł wpadkę. To jest uczciwe podejście do sprawy.

    • Jaki piękny przykład hmmm… Za granicą mówią “durnych Polaczków”, którzy w pracach biją się i poniżają za najniższą krajową, jak by walczyli o stołek za 15tyś.
      A jak tylko ktoś odda pieniądze to tak go w gardło dusi, że to nie on dostał….

      PS. Wracając do tematu, po co nakładać fioletowy czy biały kawałek bloku, jak można się zabezpieczyć “Używając Gumki ;D”

  9. Plusik za przyznanie do błędu. Mam już powyżej dziurek w nosie nieomylnych ekspierdów, którzy nakryci na wtopie zaczynają lecieć w członka. A przy okazji: “ten się nie myli, co nic nie robi”.

  10. Sądząc po pochodzeniu narzędzia SmartDeblur – (Rosja) bardziej obawiałbym się trojanów i backdoor’ow w nim zawartych niż samych skutków odblurowania swoich danych osobowych.

    • “Jest to narzędzie dostępne w wersji darmowej i choć jest przeznaczone na Windowsa to działa także na Linuksie pod Wine.”

      Dlatego podają w artykule jak należy go uruchamiać. :D

  11. “Darowizna, do której skłonił mnie pewien pan Damian” brzmi jak “pobił mnie/haracz” ;)

  12. Oto artykuł Tomka z PGS Software na ten sam temat (tylko ze znacznie większą skutecznością odczytu danych): https://www.pgs-soft.com/pl/co-niebezpiecznik-zrobil-zle/

    • Dziwię się, że wolisz publikować na blogu firmy (w której kiedyś nie będziesz pracować) niż na swoim osobistym nawet Medium ;)

    • Słów “swoim osobistym” i “Medium” nie stawiałbym obok siebie. Oprócz tego mam znacznie większy interes w promocji marki swojego pracodawcy niż amerykańskiej firmy, w której (niezbyt prawdopodobnym) sukcesie nie będę miał żadnego udziału.

  13. “Używajcie czarnych bloków” – a co, im ciemniejszy kolor, tym lepiej “zamaluje” dane? :-)

    Dowolny kolor zrobi to tak samo skutecznie, to nie ściana tylko grafika cyfrowa. Wycięcie fragmentu (i pozostawienie przezroczystości) też nie będzie bardziej skuteczne niż zamalowywanie – nikt się nie “doskrobie” do spodniej warstwy “farby” :-)

  14. Każdemu się zdarzają błędy :)
    Przynajmniej dzięki temu artykułowi wiemy gdzie masz założone konto w banku :D

  15. A nie można po prostu otworzyć dokument w Paincie i wyciąć treści, które chcemy poddać anonimizacji, po czym zapisać nowy plik?

    • i kasujemy problem w exif pilot memory siara i wszystko jasne

  16. Mnie z kolei zastanawia jedno..po co wlasciwie w pierwotnym artykule w ogole zamieszczono obrazek z dowodem osobistym? to juz samo w sobie jest kuszeniem nazbyt ciekawskich

  17. Brawo, za przyznanie się do błedu i naukę dla czytelników Niebezpiecznika

  18. A ja polecam IrfanView, zaznaczenie fragmentu a następnie wybór w menu -> fitry -> explosion. Pozamiatane i ładniej wygląda niż czarny pasek niczym zasłanianie przestępcom oczu.

    • Czyściłbym tekst, wstawiał fake’owy i lekko rozmazywał. #trololo

  19. Ja stosuje metodę, że mam gotowe szablony z mozaiką, i wklejam gdzie trzeba. Po odszyfrowaniu, dane nie są związane z treścią do ukrycia.

  20. Marcin, jak już wcześniej wspominałem, głębokie ukrywanie poprzednich wersji załączników do artykułów nie jest najlepszym rozwiązaniem. :P Wystarczy lekko zmodyfikować link i mamy stare obrazki z gaussem.

  21. A czy ktoś wie czy efekt dyfuzja z IrfanView jest wystarczający do skutecznego zamazania danych? Często go stosuję do takich celów…

  22. A gdy użyjemy rozmycia gaussa 2 razy? Raz na oryginale, drugi na już rozmazanym? U mnie powstaje wówczas jednolita zamglona plama.

  23. A czy kobiety nie mają praw?

    • “The best right a woman has is the right to a husband.” – Anthony Trollope

  24. @Rycho kobietom przysluguje napewno wiecej praw niz merzczyznom, pewnie sa jakies specjalne programy stworzone do nieodwracalnej (bezpiecznej) edycji obrazu, moze jakies dodatki do photoshopa itp.

    • śmierć wrogom polszczyzny

  25. Teraz już wiemy, że konto w PKO BP. Możesz się spodziewać uprzejmego maila od “swojego banku”, że konto zostało zablokowane i trzeba pilnie “kliknąć tutaj” albo inne takie historie ;)

  26. https://www.pgs-soft.com/pl/co-niebezpiecznik-zrobil-zle/

    “Dziś opisany atak może zostać przeprowadzony jedynie przez te osoby, które znajdą poprzednią wersję ilustracji w cache przeglądarki. Jeśli na początku lektury zrealizowałeś/aś polecenie otworzenia obrazka w osobnej zakładce, raczej nie znajdziesz już na swoim dysku owej poprzedniej wersji. Dziękuję za współpracę”

    Dobre :-)

  27. @nIebezpieczniku, skąd pomysł na rozmycie?

    Ja od kiedy tylko pamiętam stosowałem jednolity kolor zamiast rozmycia (może dlatego że nie miałem pod ręką żądnego narzędzie w którym byłoby rozmycie).
    Jak się okazuje od nastu lat stosuje bezpieczną metodę ukrywania wrażliwych informacji ;)

  28. est to narzędzie dostępne w wersji darmowej i choć jest przeznaczone na Windowsa to działa także na Linuksie pod Wine
    Pod WINE?
    Po co… jak można pobrać kod źródłowy z githuba i sobie zbudować.
    https://www.dropbox.com/s/ngza6wnejvsl6ri/Zrzut%20ekranu%20z%202017-10-11%2011-06-13.png?dl=0

    Tadam… native 64bit :> bez wine

    • Te źródła są do starszej wersji 1.27, ostatni commit 5 lat temu.
      Aktualna ma numer 2.3 i jest płatna.

  29. Odsłoniłeś jeszcze jedną informację na swój temat. Masz lewicowe poglądy :)

  30. Interesuje mnie, czemu na potwierdzeniu przelewu zasłaniasz numer swojego rachunku? Czy ma to jakieś racjonalne wytłumaczenie? Czy po prostu boisz się, że ktoś ci zrobi przelew na konto? ;)

    • No wiesz, był/jest już taki jeden, który się bał że ktoś mu zrobi przelew, więc… nie ma konta – a przelewy idą na konto mamusi :D :D

    • Przypuszczam, że warto unikać takich historii choćby ze względu na ograniczanie możliwości ataków typu socjotechnicznego.

      jasc: słabo wyszło, bo ta kobieta aktualnie nie żyje

  31. “wyłącznie czarnych bloków lub czegokolwiek elementu graficznego, który skutecznie przykryje pierwotny fragment.”

    Za składnie tez należy Ci się pokuta.

  32. Propsy dla Damiana za wybór organizacji.

  33. A gdyby tak trollować osobę, która chce odczytać zblurowane dane?
    Na przykładzie PESELu:

    1 Generujesz ciąg znaków, który mógłby być Twoim peselem
    2 Podmieniasz na zdjęciu np dowodu
    3 blurr
    4 ktoś robi “deblurr” i dostaje fake’owe dane

  34. Warto zapoznać się z tym co jest zabawne lub nawet nieprzewidywalne a wręcz skuteczną anonimizacją tekstu:
    http://nicdoukrycia.strikingly.com/blog/co-robia-gorzowscy-urzednicy-wyklejanki
    Pozdrawiam wszystkich

  35. Podobna aplikacja na Windows tylko ze darmowa i raczej pewna to: http://logicnet.dk/meesoft/Analyzer/
    Czarny pasek to najpewniejszy sposob usuwania informacji z dokumentow.
    Pikselizacja _point resampling) moze nie wystarczyc jesli uzywa sie takich narzedzi jak np:
    http://mmlab.ie.cuhk.edu.hk/projects/SRCNN.html

  36. Wszystek jasne – niezle kwiatki!!! ;)

    https://www.money.pl/rejestr-firm/nip/717-16-36-783/kod-pocztowy/24-300/

  37. Trochę to dla mnie dziwne, że autor przyznaje się do ujawnienia części swoich danych, po czym w ramach przeprosin ujawnia komuś jeszcze więcej swoich danych (przelew). Ot taka logika.

  38. Słabe to. Specjalnie przygotowałem zdjęcie rozmyte Gausem. Program nie dał sobie rady. Może to działa przy słabych rozmyciach, kiedy można się samemu domyśleć co było na zdjęciu przed rozmyciem.

Twój komentarz

Zamieszczając komentarz akceptujesz regulamin dodawania komentarzy. Przez moderację nie przejdą: wycieczki osobiste, komentarze nie na temat, wulgaryzmy.

RSS dla komentarzy: