Blokada kryptokoparki coin-hive.com i jej serwerów proxy


(Domker) #1

EDIT: poprawione pliki z listą IP (dodana pusta linia, aby pętla poprawnie dodała wszystkie wartości)

EDIT2: dodane nowe serwery proxy w plikach z IP.

EDIT3: zaktualizowana lista adresów IP

Ta webkoparka kryptowalut jest coraz częściej wykorzystywana, a ostatnio także w rozszerzeniach do przeglądarek.

(https://www.dobreprogramy.pl/Rozszerzenie-Chrome-kopie-kryptowaluty-jak-The-Pirate-Bay.-Czy-to-juz-nowa-moda,News,83220.html)

Cały problem w tym, że w przypadku strony możemy zablokować np. uBlockiem całą domenę, a w przypadku rozszerzenia już nie. Na dodatek coin-hive ma swoje własne serwery proxy.
Najsensowniejszy sposób to dodanie adresów IP do firewalla, czyli zablokowanie coin-hive i jego serwerów proxy globalnie.

Link do pliku z listą IP coin-hive/coin-hive proxy “ip_list1.txt”
(dla użytkowników Linux) :
ip_list1.txt (593 bajty)
(data aktualizacji: 27-09-2017r.)

#polecenie dla firewalla UFW

while read line; do ((x++)); sudo ufw deny out from any to $line comment "Block coin-hive.com #$x"; done < ip_list1.txt && sudo ufw reload

lub

#polecenie dla IPTABLES

while read line; do ((x++)); sudo iptables -A OUTPUT -d $line -j DROP -m comment --comment "Block coin-hive.com #$x"; done < ip_list1.txt

#polecenie dla Windows Firewall

Link do pliku z listą IP coin-hive/coin-hive proxy “ip_list1_win.txt”
(dla użytkowników Windows) :
ip_list1_win.txt (635 bajtów)
(data aktualizacji: 27-09-2017r.)

for /f %i in (ip_list1_win.txt) do netsh advfirewall firewall add rule name="Block coin-hive.com (%i)" dir=out protocol=any action=block remoteip=%i

(otwórz cmd.exe jako administrator, przejdź na C: poleceniem “cd C:\” , wklej plik z IP bezpośrednio na C: i wykonaj powyższe polecenie)

Polecam również listę pod uBlock plik hosts, ponieważ podobnych serwisów do coin-hive jest więcej i pewnie będzie jeszcze więcej:

Tym skryptem bash (Linux) możecie sami zaktualizować pliki z listą IP do blokowania koparki:

#!/bin/bash
clear
echo "Proszę czekać, trwa rozwiązywanie adresów IP!"
for i in {001..999}
do
resolveip ws$i.coin-hive.com 2>/dev/null | awk '{print $6}' >> new-ip.txt
done
resolveip coin-hive.com 2>/dev/null | awk '{print $6}' >> new-ip.txt

#usuwanie duplikatów
sort -u new-ip.txt > ip_list1.txt && rm new-ip.txt

echo "Gotowe! Wygenerowana lista zawiera $(wc -l < ip_list1.txt) adresy IP!"

Komunikat od AdBlocka w FF (koparka bitcoin)
(D35CART35) #3

@Domker Pytanie jest retoryczne, czemu większość tych adresów IP prowadzi do Niemiec,
jeden był z Ukrainy. Ale admin i grupa techniczna są te same.


(krystian3w) #4

IP-coin-hive-block.zip (929 bajtów)

  • Wersja przerobiona by nie trzeba było przenosić pliku txt na dysk C:\ w Windows / podawać ścieżki do katalogu ostatniej lokalizacji pobrania (czy też pobranych)

  • Jest komunikat o błędnym uruchomieniu bez wystarczających uprawnień - jakby ktoś pośpiechu dwuklikiem uruchomił

  • Działa gdy spacja pojawi się w adresie do pliku (np. użytkownicy z dwuczłonową nazwą profilu w systemie)

  • Dodano czyszczenie wpisów na wypadek ich powielania w Windows.


@echo off
color 0F
title IP coin-hive-block

fsutil dirty query %SYSTEMDRIVE% >nul
If %errorLevel% NEQ 0 goto :noUAC



pushd %~dp0
for /f %%i in (ip_list1_win.txt) do (
netsh advfirewall firewall delete rule name="Block coin-hive.com (%%i)" > nul
)
echo:
echo Usunięto stare / powielone wpisy. 
echo:

for /f %%i in (ip_list1_win.txt) do (
 echo %%i
 netsh advfirewall firewall add rule name="Block coin-hive.com (%%i)" dir=out protocol=any action=block remoteip=%%i
)
echo:
echo Zablokowano powyższe adresy IP.
echo:
goto :exit


:noUAC
color 0C
echo Plik uruchomiony bez uprawnień administratora,
echo uruchom ponownie jako administrator.
echo:

:exit
echo Możesz zamknąć to okno...
pause > nul

(Domker) #5

@krystian3w Nie ma błędu jeżeli cmd.exe uruchomisz jako administrator - przecież napisałem wyraźnie.
Pliku nie trzeba koniecznie przenosić na C: - napisałem tak tylko, żeby mniej doświadczonym użytkownikom nie zaprzątać głowy przechodzeniem do lokalizacji do której pobrali plik.

@D35CART35 To już pytanie raczej do adminów coin-hive - podejrzewam, że chodzi rozproszenie, aby trudniej było je zablokować.
Ja tylko wyłuskałem adresy, które wykorzystywał złośliwy dodatek do Chrome i ponieważ mają indywidualne stałe IP to URL zamieniłem na IP, aby wygodniej można było je zablokować przy pomocy firewalla.
W każdym razie wszystkie znane mi aplikacje/dodatki, które używają coin-hive po zablokowaniu tych IP zwyczajnie przestają “kopać”, a więc obciążać CPU użytkownika.
Dodatek Safebrowse wczoraj przestał być dostępny w Google Store, a wystarczyło zaraportować. W każdym razie prewencja w takiej postaci nie zaszkodzi.
Wszystkie IP są blokowane tylko w ruchu wychodzącym, więc na stronę coin-hive.com możesz nadal wejść i demo “kopania” będzie działać w adblokerze musisz dodać regułkę ||coin-hive.com/*, aby było inaczej.
Po update listy IP już nie działa demo.

Dodanie tych IP chroni przed aplikacjami/rozszerzeniami działającymi na zasadzie klient-server z coin-hive.
Sniffowałem ruch sieciowy i każde połączenie uzłośliwionego dodatku jest inicjowane pakietem z zawartością “Hello!” i odpowiedzią serwera “Hello!”.


(krystian3w) #6

Nie o to mi chodzi, wolałem zrobić coś lepszego niż informacja z 8 razy “brak uprawnień” z polecenia do dodawania wpisu do firewall.

Co do błędu to coś głupiało jak zrobiłem folder IP block-coin-hive, a działało w IP-block-coin-hive, pushd chyba było najszybszym rozwiązaniem, bo te z apostrofami wymagały jakiegoś przemyślenia by działały w pętli z %~dp0.
Poprawka tego była jak dla mnie w skrypcie konieczna bo czasem są osoby co mają profil użytkowania z spacją w nazwie.


(Domker) #7

Sprawdzałem domenę jeszcze przez nslookup i trzeba dodać jeszcze

94.130.128.243 <- zapobiegnie rozwiązaniu nazwy DNS koparki
a, także:

94.130.128.80

94.130.103.71

Dwa powyższe proxy przeoczyłem, ponieważ nie były w złośliwym rozszerzeniu, a w skrypcie na stronie owszem. Teraz to nawet bez uBlocka nie będzie “kopać”.

Z po blokadzie z wyłączonym uBlock:


(krystian3w) #8

Muszę pomyśleć jak też zrobić by wykrywało czy wpis istnieje i pomijało dodanie :wink:


(Domker) #9

Pod Linux pomija z automatu (tzn. iptables i ufw porównuje wpisy)
Posznifowałem go jeszcze z 40 min i jeszcze trzeba dodać:
94.130.129.247

W sumie 15 adresów IP.
Uaktualnie pliki w pierwszym wątku.
Osobne txt dla obu systemów są ze względu na kodowanie końca nowej linii (windows i unix ma inne)


(filozof) #10

Dzięki za tę listę, dodałem do swojego firewalla :slight_smile:


(krystian3w) #11

Wypadł tylko jeden?


(pocolog) #12

To powinno być w dziale


Zamiast na luzie :stuck_out_tongue:


(krystian3w) #13

Niestety dział jest wyłączony.


(pocolog) #14

Chyba zablokowany :wink: Moderacja może tam przenieść.


(krystian3w) #15

A potem nagle już brak edycji - to by było najgorsze.