Pytanie:
jak mogę losowo zmienić adres MAC za każdym razem, gdy włączone jest WiFi?
mc0e
2013-12-08 10:52:46 UTC
view on stackexchange narkive permalink

Biorąc pod uwagę zwiększone rozpowszechnienie systemów śledzących ruchy ludzi na podstawie ich adresów Mac, chciałbym ukryć mój.

Mam zakorzenioną notatkę galaktyki 2 z zainstalowanym busyboxem. Mogę zmienić mój adres MAC w następujący sposób:

  busybox ifconfig wlan0 hw ether 11: 22: 33: 44: 55: 66  

jednak jeśli wyłącz i ponownie włącz moją sieć bezprzewodową lub ponownie uruchomię telefon, zostaje zapomniany. czy jest miejsce, w którym mogę umieścić skrypt, aby był uruchamiany za każdym razem, gdy włączy się sieć bezprzewodowa?

Wypróbuj Pry-Fi
Pięć odpowiedzi:
Peter
2014-03-08 17:24:35 UTC
view on stackexchange narkive permalink

A co z narzędziem Chainfire Pry-Fi, które zostało ogłoszone na XDA?
Działa świetnie i jest dostępne w oficjalnym sklepie Google Play pod adresem:

Oto zrzut ekranu przedstawiający narzędzie w akcji…

screenshot of Chainfire's tool Pry-Fi

Próbowałem Pry-Fi. Mimo że mój telefon został wymieniony jako testowany, spowodował, że Wi-Fi stało się całkowicie bezużyteczne. Nie widziałem nawet żadnych sieci, z którymi mógłbym się połączyć. Musiałem odinstalować, aby ponownie uzyskać dostęp do mojej sieci domowej.
Izzy
2013-12-08 18:20:57 UTC
view on stackexchange narkive permalink

Możesz to zrobić np. Tasker, potężne narzędzie do automatyzacji:

  • Warunek: Monitor Start (tj. Tasker został uruchomiony; alternatywnie : Device Boot , czyli proces rozruchu zakończony)
  • Zadanie: Uruchom powłokę , z poleceniem jako parametrem

Jeśli wolisz coś bardziej wyszukanego, możesz nawet użyć Variable Randomize , aby za każdym razem generować inny adres MAC ...

Czy to uruchomi się jako część procesu przechodzenia do trybu online, czy wkrótce potem? Jeśli to możliwe, chciałbym w ogóle nie nadawać adresu MAC sprzętu.
Spowoduje to uruchomienie go tam, gdzie go zdefiniowałeś, jak opisano: * Uruchomienie monitora * ma miejsce, gdy * Tasker * zostaje aktywowany, co zwykle następuje natychmiast po uruchomieniu (lub po uruchomieniu / ponownym uruchomieniu * Taskera * lub ręcznej aktywacji usługi monitorowania). Jeśli użyjesz * Device Boot * jako warunku, zostanie on „wyzwolony” po uruchomieniu, ale nie po ręcznym uruchomieniu / ponownym uruchomieniu monitora * Tasker *. W obu przypadkach zostanie zastosowany natychmiast po uruchomieniu. Nie mogę powiedzieć, czy inicjalizacja sieci może być szybsza.
Aktywacja musiałaby śledzić, kiedy Wi-Fi jest włączone, i zmieniać adres MAC przed wysłaniem jakichkolwiek pakietów. Nie jestem aż tak pewny, że można na tym polegać, ale może się mylę.
@mc0e Jeśli masz co do tego wątpliwości, dodaj drugi profil z innym warunkiem (coś, co uruchamia się przy zmianach w sieci) i zastosuj do niego to samo zadanie :)
franc
2016-07-30 02:44:41 UTC
view on stackexchange narkive permalink

Oprócz innej odpowiedzi z Taskerem ("Możesz to zrobić używając np. Taskera, potężnego narzędzia do automatyzacji:"), tutaj małe zadanie (eksport opisu) z randomizacją MAC:

  TestMacChanger (130) A1: Variable Set [Nazwa:% count To: 0 Do Maths: On Append: Off] <randomstart> A2: Variable Randomize [Nazwa:% random Min: 0 Max: 15] A3: Variable Convert [Nazwa: % random Funkcja: Dziesiętne na szesnastkowe Zapisz wynik w:% rhex] A4: Zmienna testowa [Typ: Długość Dane:% rhex Zapisz wynik w:% len] A5: Zestaw zmiennych [Nazwa:% rhex Do: 0% rhex Zrób matematykę: Off Append: Off] Jeśli [% len eq 1] A6: Konwersja zmiennej [Nazwa:% rhex Funkcja: Na wielkie litery Zapisz wynik w:] A7: Zestaw zmiennych [Nazwa:% mac Do:% mac:% rhex Wykonaj obliczenia: Off Append: Off] Jeśli [% mac Set] A8: Variable Set [Name:% mac To:% rhex Do Maths: Off Append: Off] Jeśli [% mac! Set] A9: Variable Add [Name:% count Value: 1 Wrap Around: 0] <randomend> A10: Idź do [Rodzaj: Action La bel Numer: 1 Etykieta: randomstart] Jeśli [% count < 6] A11: Zestaw zmiennych [Nazwa:% mac Do: 00: 11: 22: 33: 44: 55 Do: 00: 11: 22: 33: 44: 55 Do: 00: 11: 22: 33: 44: 55 Wykonaj obliczenia: wyłączone Dołącz: wyłączone] Jeśli [% mac! Ustaw] A12: Flash [Tekst:% mac Long: On] A13: Uruchom powłokę [Polecenie: subusybox ifconfig wlan0 hw ether% mac Timeout (sekundy): 0 Użyj root: On Zapisz wyjście w:% output Zapisz błędy w:% error Zapisz wynik w: Kontynuuj zadanie po błędzie: wł.] A14: Flash [Tekst:% błędu Long: wył.] Jeśli [% ustawiono błąd]  

To robi pętlę dla 6 losowych wartości szesnastkowych aby dostać losowego Maca jak np 01: 4F: 89: BA: 3F: 0Kiedy ustawia tego losowego Maca jako własnego Maca.

Widzę nowego Maca za pomocą tego polecenia:

  busybox iplink show wlan0  

Po ponownym uruchomieniu stary Mac jest resetowany.

t0mm13b
2014-03-08 22:09:25 UTC
view on stackexchange narkive permalink

Użyj aplikacji Chainfire o nazwie Pry-Wifi, która właśnie to robi.

Blank
2013-12-08 17:23:41 UTC
view on stackexchange narkive permalink

Wydaje mi się, że można to zrobić za pomocą skryptu bash lub edytować plik init, aby zawierał polecenie, które masz tutaj.

To nie jest pomocne; co OP umieściłby w scenariuszu? Gdzie by to poszło?
To naprawdę powtórzenie rzeczy, które przedstawiłem w pierwotnym pytaniu. Nie mam problemu z napisaniem scenariusza, ale nie wiem, gdzie musiałby się znaleźć, aby był uruchamiany za każdym razem, gdy mój telefon łączy się z Internetem.
Ponadto wymagałoby to zmodyfikowania obrazu rozruchowego; skrypty startowe są tego częścią. Wszelkie modyfikacje plików init w „zamontowanym systemie plików” zostaną utracone po uruchomieniu (szczegółowe informacje można znaleźć np. [Initrd @ Wikipedia] (http://en.wikipedia.org/wiki/Initrd)).
Jeśli dostanę sposób na ustawienie adresu MAC, który przetrwa działanie karty sieciowej, jest to krok naprzód, nawet jeśli muszę zmodyfikować skrypt po każdym ponownym uruchomieniu telefonu. Zwłaszcza, jeśli oznacza to, że adres MAC zostanie ustawiony przed wysłaniem jakichkolwiek pakietów za każdym razem, gdy łącze Wi-Fi zostanie uruchomione.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...