Replies: 12 comments 15 replies
-
|
Bezüglich Juis habe ich noch eine andere Endeckung gemacht. Bin mir nicht sicher ob bei den FritzBoxen (warscheinlich alle mit Firmware ab 8.00) per HTTPs etwas übermittelt oder erkannt wird was per HTTP (über Reverse Proxy) oder auch per juis_check Tool nicht funktioniert. Dazu ist mir auch aufgefallen das wenn ich für die besagte 7530 AX (v1) mit den juis_check Tool mit der angegebene Version bis maximal 7.50 nach Updates suche, auch damit ein Update erkannt wird, aber sobald man als Version 8.00 mindestens angibt, wird wiederum kein Update angezeigt. juis_check benutzt zwar auch https aber ich vermute das mit den "Vermutlich hat AVM etwas an der Abfrage verändert" könnte auf alle Boxen ab FW Version 8.00 zutreffen. |
Beta Was this translation helpful? Give feedback.
-
|
Soweit mit bekannt ist nutzt avm immer HTTP, wobei das script hier per default HTTPS nutzt - das ging aber. Wobei bei HTTP als Hostname .jws.avm.de genutzt wird, HTTPS kann diese nicht nutzen da es kein korrekter Zertifikat das zum Hostnamen passt gibt. Daher wird für HTTPS "jws.avm.de" verwendet. Welchen Hostnamen hast du denn im Mittschnitt gesehen? Laut https://freetz-ng.github.io/freetz-ng/juis/ gibt es aber keine Änderung bezüglich FOS 8, sogar die aktuellen inhaus+labor werden von alten Geräten gefunden Ich tipper daher auf Änderungen am body den man damit sieht: EDIT: Wobei diese Abfrage 07.12 ergibt: |
Beta Was this translation helpful? Give feedback.
-
|
Ohne Version wird genommen: Wenn man einen Parameter weglässt versucht das Script diesen evtl zu erraten. Von den min 5 Juis-Servern die es gibt, geben diese auch noch verschiedene Antworten |
Beta Was this translation helpful? Give feedback.
-
|
Juis sagt dir auch manchmal was nicht passt: |
Beta Was this translation helpful? Give feedback.
-
|
juis_check kann man mit freetz auch ins image packen, auf der box wird dann "juis_boxinfo.xml or older jason_boxinfo.xml" verwendet. |
Beta Was this translation helpful? Give feedback.
-
|
Ich hab es probiert mit Was in dieser Abfrage resultierte: <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soap-enc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:e="http://juis.avm.de/updateinfo" xmlns:q="http://juis.avm.de/request">
<soap:Header/>
<soap:Body>
<e:BoxFirmwareUpdateCheck>
<e:RequestHeader>
<q:Nonce>QU0z18PEJNOpHzsmbL04Xg==</q:Nonce>
<q:UserAgent>TestClient</q:UserAgent>
<q:ManualRequest>false</q:ManualRequest></e:RequestHeader>
<e:BoxInfo>
<q:Name>FRITZ!Box 7530 AX</q:Name>
<q:HW>256</q:HW>
<q:Major>256</q:Major>
<q:Minor>8</q:Minor>
<q:Patch>00</q:Patch>
<q:Buildnumber>116010</q:Buildnumber>
<q:Buildtype>1</q:Buildtype>
<q:Serial>AC6CBABEED2C</q:Serial>
<q:OEM>1und1</q:OEM>
<q:Lang>de</q:Lang>
<q:Country>049</q:Country>
<q:Annex>B</q:Annex>
<q:Flag>mesh_master_no_trusted</q:Flag>
<q:UpdateConfig>3</q:UpdateConfig>
<q:Provider>oma_ipclient</q:Provider></e:BoxInfo></e:BoxFirmwareUpdateCheck></soap:Body></soap:Envelope>
was keine neue Version bekam. Damit müsste eher am Header was geändert sein <e:BoxFirmwareUpdateCheck>
<e:RequestHeader>
<q:Nonce>QU0z18PEJNOpHzsmbL04Xg==</q:Nonce>
<q:UserAgent>TestClient</q:UserAgent>
<q:ManualRequest>false</q:ManualRequest></e:RequestHeader>Dafür braucht man dann eine capture, da tcpdump nicht geht halt mit strace oder einer proxy bin/lib |
Beta Was this translation helpful? Give feedback.
-
|
Ich habe nochmal versucht wege zu finden wie man diesen Capture in "Sichtbar" hinbekommt. Nun habe ich das gleiche probiert aber mit den ReverseProxy mit HTTPs und einen eigenen Cert was ich auch auf die Box kopiert habe. Deutlich einfacher ist es gewesen bei der Freetzfirmware nur das
Einziges was mir mit den was ich bisher versucht habe herauszufinden ist: <e:BoxFirmwareUpdateCheck>
<e:RequestHeader>
<q:Nonce>LMkr671Ey2xgw4rFPSTBSw==</q:Nonce>
<q:UserAgent>Box</q:UserAgent>
<q:ManualRequest>true</q:ManualRequest>Inhalte:Wireshark Output
nginx config
nginx:
image: nginx:latest
restart: always
ports:
- "80:80"
- "443:443"
volumes:
# nginx conf
- ./nginx.conf:/etc/nginx/nginx.conf:ro
# nginx certs: key = "nginx.key"; cert = "nginx.crt"
- ./certs:/etc/nginx/ssl:ro
# logs
- ./logs:/var/log/nginx
events { }
http {
log_format postdata $request_body;
server {
listen 80;
server_name jws.avm.de;
location / {
proxy_pass https://jws.avm.de:443;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
access_log /var/log/nginx/postdata.log postdata;
}
}
server {
listen 443 ssl;
server_name jws.avm.de;
ssl_certificate /etc/nginx/ssl/nginx.crt;
ssl_certificate_key /etc/nginx/ssl/nginx.key;
ssl_protocols TLSv1.2;
ssl_ciphers 'RSA+AES256:GCM+RSA:RSA+AES128:!ECDHE:!DHE:!aNULL:!MD5:!3DES';
ssl_prefer_server_ciphers on;
location / {
proxy_pass https://jws.avm.de:443;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
access_log /var/log/nginx/postdata.log postdata;
}
}
} |
Beta Was this translation helpful? Give feedback.
-
|
Ich hab juis_check etwas erweitert 9b0b6bf, damit kann man die Anfrage wie deine oben erzeugen: geht aber noch immer nicht. Da du das root-ca austauschen kannst, erstell dir doch eine eigen root-ca. Dann noch Zertifikat auf jws.avm.de das damit signiert ist. Alternativ könnte man auch mit zb strace den Prozess der die Anfrage stellt anschauen (mit "-p" für PID, evtl noch ein "-f" dazu) |
Beta Was this translation helpful? Give feedback.
-
Das "irgend ein anderes " klang nicht unbedingt nach dem selbst erzeugten |
Beta Was this translation helpful? Give feedback.
-
|
Sieht nach ctlmgr aus: Der legt auch eine Und eine /var/tmp/updatecheck |
Beta Was this translation helpful? Give feedback.
-
|
@LizenzFass78851 Ich weiss nicht ob da private Daten drin sind, hab es mal gelöscht, serial auf jeden fall. Da fehlen aber noch andere Dringe (ausser "write"), da muss man einfach suchen. Zb der "Envelope " Kopf Es scheint jedenfalls eine neue Version der Anfrage zu sein
zuerst sind die Tags (oder wie das heisst) nicht mehr Q sondern nun J, und hinter BoxInfo war kein xmlns früher. "<j:Lab>" könnte auch neu sein |
Beta Was this translation helpful? Give feedback.
-
|
Das mit einem Proxy und untergeschobenem Zertifikat hab ich auch mal ausprobiert, geht. Allerdings nur mit meiner antiken 7490. Das Port :443 in deinem log kommt vermutlich aus nginx, ich nehm es aus juis_check wieder raus |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Das aktuelle Juis-Script findest ab HWR277 keine Firmware mehr, etwa diese Geräte:
Vermutlich hat AVM etwas an der Abfrage verändert, es fehlt vielleicht eine Variable, etc.
Dazu müsste jemand der so eine neue Fritzbox hat diese Abfrage mit tcpdump mitschneiden.
Man kann die Fritzbox dazu auch als Client im LAN konfigurieren ("Internet mitbenutzen").
So ein Mitschnitt solle schon ausreichen
Beta Was this translation helpful? Give feedback.
All reactions