@PierpiPic05 ciao! Grazie per la tua risposta! Ora capisco perché non riuscivo! Provo a fare come mi hai consigliato sperando di riuscire. Ti aggiorno su come procedere
[edit]
Ci sono riuscito!!Ho letto centinaia di volte il forum? SI! ho fatto come c'è scritto? NO!
In realtà non so di preciso perchè ci sono riuscito, ma vi spiego come ho fatto.
ultima versione di ubuntu live.
modem resettato e con versione firmware 1.1.1 ancora spento.
scarico
https://github.com/BoLaMN/tch-exploit/releases/tag/2.0.2 ma non la versione già compilata, ma il source code.
lo scompatto e nella cartella dist/dhcp ho modificato il file option.
ho installato nodejs e npm,
##option.js
ho modificato il punto 6 con i dns e il punto 42 per il server ntp
6: {
name: 'Domain Name Server',
type: 'IPs',
config: 'dns',
"default": ['10.42.1.1']
},
42: {
name: 'Network Time Protocol Servers',
type: 'IPs',
config: 'ntpServer',
"default": ['10.42.1.1'] // IP fake NTP (lo stesso server Python che scriverò dopo come fare)
},
vado nella cartella principale di tch-exploit e do il comando npm install
io ho un dominio comprato ad 1 euro su namecheap, e all'interno della dashboard del dominio, in advanced DNS ho inserito il mio indirizzo IP pubblico e A record:
Type Host Value TTL
A Record @ 'public IP' Automatic
ho generato i certificati:
sudo certbot certonly --standalone \
-d dominio.xyz \
--agree-tos \
--no-eff-email \
-m [email protected]
ho creato un fake server ntp in python:
import socket
import struct
import time
NTP_PORT = 123
NTP_PACKET_FORMAT = "!BbBb11I"
NTP_DELTA = 2208988800 # NTP timestamp delta to UNIX epoch
# Timestamp for 3 July 2025 00:00:00 UTC
fixed_time = int(time.mktime((2025,7,3,0,0,0,0,0,0)))
def create_ntp_response():
# Reference, originate, receive, transmit timestamps are set to fixed_time + delta
transmit_timestamp = fixed_time + NTP_DELTA
# Construct NTP packet with mode 4 (server), stratum 1, transmit timestamp set
packet = struct.pack(
"!B B b b 11I",
0b00100100, # LI=0, VN=4, Mode=4 (server)
1, # Stratum
0, # Poll
0, # Precision
0, 0, 0, 0, # Root Delay, Root Dispersion, Reference ID
transmit_timestamp, 0, # Reference Timestamp (64-bit)
transmit_timestamp, 0, # Originate Timestamp (64-bit)
transmit_timestamp, 0, # Receive Timestamp (64-bit)
transmit_timestamp, 0 # Transmit Timestamp (64-bit)
)
return packet
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind(('', NTP_PORT))
print(f"Fake NTP server running on UDP port {NTP_PORT}")
while True:
data, addr = sock.recvfrom(48)
if len(data) >= 48:
response = create_ntp_response()
sock.sendto(response, addr)
l'ho lanciato in un terminale e l'ho lasciato li a girare.
ho modificato le schede di rete creando una vlan 83 e la condivisione della rete come descritto nei post precedenti.
scarico la versione di
ngnix di
@imdadadani https://drive.google.com/file/d/1CNx8ze2GuM8vBDfbwrD9HwHkjKgxIqsw/viewho modificato il file ngnix.conf inserendo i certifcati:
ssl_certificate /etc/letsencrypt/live/dominio.xyz/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/dominio.xyz/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
all'inizio del file ho messo come user user www-data;
lancio ngnix con sudo ./nginx
volevo fare anche un fake dns ma non sono riuscito perchè mi dava sempre la porta 53 occupata, così ho fatto sudo systemctl stop systemd-resolved
dando questo comando per controllare:
sudo ss -ulpn | grep :53
UNCONN 0 0 10.42.1.1:53 0.0.0.0:* users:(("dnsmasq",pid=59538,fd=6))
UNCONN 0 0 10.42.0.1:53 0.0.0.0:* users:(("dnsmasq",pid=58923,fd=6))
UNCONN 0 0 0.0.0.0:5353 0.0.0.0:* users:(("avahi-daemon",pid=1916,fd=12))
UNCONN 0 0 [::]:5353 [::]:* users:(("avahi-daemon",pid=1916,fd=13))
ho lasciato dnsmasq attivo a girare.
avvio il primo terminale e avvio il modem, dovrebbe compareire una cosa del genere:
node ./dist/index.js --acsurl="https://dominio.xyz/" --ip="10.42.1.1" --dhcponly
Technicolor OpenWRT Shell Unlocker v2.0.1-rc8 By BoLaMN
* Connect network cable from your computer to the WAN (red) port of the modem
* Change your computers network card to be a static ip address
IPv4 Address: 10.42.1.1
Subnet Mask: 255.255.255.0
Default Gateway\Router: 10.42.1.1
mentre il modem si sta ancora avviando lancio anche un secondo terminale con:
sudo node ./dist/index.js --port=4346 --ip="10.42.1.1"
bene! non trova l'interfaccia corretta, il modem si sta ancora avviando e comunque lo lascio perdere così com'è.
sudo node ./dist/index.js --port=4346 --ip="10.42.1.1"
Technicolor OpenWRT Shell Unlocker v2.0.1-rc8 By BoLaMN
* Connect network cable from your computer to the WAN (red) port of the modem
* Change your computers network card to be a static ip address
IPv4 Address: 10.42.1.1
Subnet Mask: 255.255.255.0
Default Gateway\Router: 10.42.1.1
Could not find interface with ip: 10.42.1.1
┌─────────┬────────────────┬─────────────────────────────┬────────┐
│ (index) │ name │ address │ family │
├─────────┼────────────────┼─────────────────────────────┼────────┤
│ 0 │ 'wlp0s20f3' │ '192.168.1.216' │ 'IPv4' │
│ 1 │ 'wlp0s20f3' │ 'fe80::a268:8b43:3586:a100' │ 'IPv6' │
│ 2 │ 'wlp0s20f3.83' │ '10.42.0.1' │ 'IPv4' │
│ 3 │ 'wlp0s20f3.83' │ 'fe80::2490:a103:f4c3:3f0' │ 'IPv6' │
└─────────┴────────────────┴─────────────────────────────┴────────┘
Poi noto che la luce web diventa verde, e nel primo terminale non compare nessuna scritta in più, ma ne compaiono di diverse nel secondo terminale, e dopo qualche istante anche quelle famose scritte verdi, finchè non mi chiede di premere il tasto WPS!
spero di essere stato utile a qulcuno che voglia provarci, io ho combattuto 3 giorni ma alla fine la procedura si completa in una mezz'ora