Jump to content

Empfohlene Beiträge

  • Antworten 91
  • Created
  • Letzte Antwort

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Da ich es satt hatte, zum Abfragen der Anruferliste von der FritzBox jedes Mal den PC anschmeißen und mich auf der Box einloggen zu müssen, anhängend mal eine erste Quick'n-Dirty-Variante der Anzeige

Da ich keine Datei anhängen kann hier meine Version zum testen:    

@all   Ich habe das Script erweitert, so dass es zusammen mit dem Root_Update V1.3 für die dbox2 genutzt werden kann.

Moin ..... 

 

das Gleiche bitte noch mal mit diesem Script.

fritzlogin2.txt hat den gleichen Inhalt ..... ;(

 

Ansonsten siehts so aus:

/var/plugins # anrufer
+ Passwd=123456
+ TAB1=0200
+ TAB2=0400
+ TAB3=0800
+ TAB4=1000
+ awk {match($0,/>[^<>]+</); print substr($0,RSTART+4,5)}
+ grep Version
+ wget -O- http://fritz.box/jason_boxinfo.xml
Connecting to fritz.box (192.168.1.1:80)
-                    100% |*****************************************************************************************************************************************************|   364   0:00:00 ETA
+ Version=06.01
+ [ 06.01 < 05.50 ]
+ wget -O- http://fritz.box/login_sid.lua
+ awk {match($0,/Challenge>[^<>]+</); print substr($0,RSTART+10,RLENGTH-11)}
Connecting to fritz.box (192.168.1.1:80)
-                    100% |*****************************************************************************************************************************************************|   165   0:00:00 ETA
+ Challenge=c4e6e495
+ CPSTR=c4e6e495-123456
+ echo -n c4e6e495-123456
+ iconv -f ISO8859-1 -t UTF-16LE
+ sed -e s/ .*$//
+ md5sum /tmp/anrufer.md5
+ MD5=67c4367a4f8cefc3847ab782ee3cc538
+ RESPONSE=c4e6e495-67c4367a4f8cefc3847ab782ee3cc538
+ POSTDATA=response=c4e6e495-67c4367a4f8cefc3847ab782ee3cc538&page=/login_sid.lua
+ wget -O /tmp/fritzlogin2.txt --post-data=response=c4e6e495-67c4367a4f8cefc3847ab782ee3cc538&page=/login_sid.lua http://fritz.box/cgi-bin/webcm
Connecting to fritz.box (192.168.1.1:80)
fritzlogin2.txt      100% |*****************************************************************************************************************************************************|    87   0:00:00 ETA
+ wget -O- --post-data=response=c4e6e495-67c4367a4f8cefc3847ab782ee3cc538&page=/login_sid.lua http://fritz.box/cgi-bin/webcm
+ grep name="sid"
+ awk {match($0,/value="[^"]+"/); print substr($0,RSTART+7,RLENGTH-8)}
+ head -1
+ SID=
+ wget -O /tmp/fb_anrufliste.csv http://fritz.box//fon_num/foncalls_list.lua?sid=&csv=
+ echo ~Y~T0200Datum/Zeit~T0400Name~T0800Nummer~T1000Dauer
+ echo
+ read line
+ sed -e s/^1;/~S/ -e s/^2;/~R/ -e s/^3;/~G/
+ head -n 16
+ sed -n /^[123];/p /tmp/fb_anrufliste.csv
+ msgbox title=Anruferliste msg=/tmp/anrufer.mnu

Link zum Beitrag
Auf anderen Seiten teilen
  • Admin

@colt

 

Irgendwie bin ich wohl doch zu blöd, das hinzubekommen. Auf 5 verschiedenen Webseiten habe ich

5 verschiedene Aussagen zum richtigen Login gefunden. Das kann man ferngesteuert nicht alles

durchprobieren. Ich möchte Dich bitten, ein letztes Mal den angehängten Versuch, eine fritzlogin2.txt

mit gültiger SID zu erzeugen zu starten und mir zuzusenden (wenn was Vernünftiges drinsteht).

Ansonsten muß ich das Handtuch werfen und darauf hoffen, daß ein Scripter mit einem OS > 05.50

sich dieses Dramas annimmt.

Ach Mann, hätte ich das Teil bloß für mich behalten!

bearbeitet von SnowHead
Anhang entfernt
Link zum Beitrag
Auf anderen Seiten teilen

den angehängten Versuch, eine fritzlogin2.txt

mit gültiger SID zu erzeugen

Mail ist unterwegs ......

Aber ich will dir nicht zu viel Hoffnung machen ......, 

Link zum Beitrag
Auf anderen Seiten teilen
  • Admin

@colt

 

Danke für den Test. Das war auch nicht der richtige Weg. Ich mach' erst mal Schluß

für heute. Danke noch mal für's Mitspielen.

Wenn es mich morgen noch mal rappelt, werde ich weiter googlen. Muß jetzt erst mal

in die Falle. Halb sechs ist die Nacht alle.

Gute Nacht!

Link zum Beitrag
Auf anderen Seiten teilen

Ich wollte das script jetzt auch mal testen habe aber ein Problem dabei:

 

Meine Voraussetzungen: FRITZ!Box 7270 v3 mit FRITZ!OS 05.53

 

In den von mir verwendeten Images (~reloaded~ bzw. NG 2.50) fehlt iconv.

Ist das eine Keywelt-Besonderheit oder muss ich auf ein aktuelles Image wechseln.

Link zum Beitrag
Auf anderen Seiten teilen
  • Admin

@theobald123

Danke, daß Du mitmachen willst.
iconv ist ein normales Binary. Keine Ahnung, warum es in anderen Images nicht mit drin
ist. Für das KW-Image laß ich es immer mitbauen.
Es hängt unten an und kommt mit den Rechten 755 in ein Verzeichnis des Suchpfades.

Allerdings weiß ich nicht, ob die dafür benötigten glibc-locale im jeweiligen System mit

installiert wurden. Das muß ausprobiert werden.
Ich glaube, das hier ist eine brauchbare Vorlage, um das Login mit dem neuen OS
hinzubekommen.

iconv.tar.gz

Link zum Beitrag
Auf anderen Seiten teilen

Moin ..... 

 

hier auf der 7390 leider weiterhin nicht ...... 

/var/plugins # anrufer
+ Passwd=123456
+ TAB1=0200
+ TAB2=0400
+ TAB3=0800
+ TAB4=1000
+ wget -O- http://fritz.box/jason_boxinfo.xml
+ awk {match($0,/>[^<>]+</); print substr($0,RSTART+4,5)}
+ grep Version
Connecting to fritz.box (192.168.1.1:80)
-                    100% |*******************************|   364   0:00:00 ETA
+ Version=06.01
+ [ 06.01 < 05.50 ]
+ wget -O /tmp/anrufer.tmp http://fritz.box/login_sid.lua
Connecting to fritz.box (192.168.1.1:80)
anrufer.tmp          100% |*******************************|   165   0:00:00 ETA
+ awk {match($0,/SID>[^<>]+</); print substr($0,RSTART+4,RLENGTH-5)}
+ cat /tmp/anrufer.tmp
+ SID=0000000000000000
+ [ 0000000000000000 = 0000000000000000 ]
+ awk {match($0,/Challenge>[^<>]+</); print substr($0,RSTART+10,RLENGTH-11)}
+ cat /tmp/anrufer.tmp
+ Challenge=81b93822
+ CPSTR=81b93822-123456
+ echo -n 81b93822-123456
+ iconv -f ISO8859-1 -t UTF-16LE
+ sed -e s/ .*$//
+ md5sum /tmp/anrufer.md5
+ MD5=2bc04c0a6d3cbc2cfbd21e33cc71e5d8
+ RESPONSE=81b93822-2bc04c0a6d3cbc2cfbd21e33cc71e5d8
+ POSTDATA=response=81b93822-2bc04c0a6d3cbc2cfbd21e33cc71e5d8&page=/login_sid.lu                                                               a
+ + grep name="sid"
+ awk {match($0,/value="[^"]+"/); print substr($0,RSTART+7,RLENGTH-8)}
+ head -1
wget -O- --post-data=response=81b93822-2bc04c0a6d3cbc2cfbd21e33cc71e5d8&page=/lo                                                               gin_sid.lua http://fritz.box/cgi-bin/webcm
+ SID=
+ wget -O /tmp/fb_anrufliste.csv http://fritz.box//fon_num/foncalls_list.lua?sid                                                               =&csv=
+ echo ~Y~T0200Datum/Zeit~T0400Name~T0800Nummer~T1000Dauer
+ echo
+ read line
+ head -n 16
+ sed -n /^[123];/p /tmp/fb_anrufliste.csv
+ sed -e s/^1;/~S/ -e s/^2;/~R/ -e s/^3;/~G/
+ msgbox title=Anruferliste msg=/tmp/anrufer.mnu

Link zum Beitrag
Auf anderen Seiten teilen

Da ich keine Datei anhängen kann hier meine Version zum testen:

 

 

#!/bin/sh

set -x

# Hier Passwort fuer das Webinterface der Fritzbox eintragen
Passwd="hier muss das Passwort rein"
Username=""

TAB1=0200
TAB2=0400
TAB3=0800
TAB4=1000

# OS-Version ermitteln
Version=`wget -O- http://fritz.box/jason_boxinfo.xml | grep Version | awk '{match($0,/>[^<>]+</); print substr($0,RSTART+4,5)}'`

if [ "$Version" \< "05.50" ]
then
	# Challenge abholen
	ChallengeXML=`wget -O - "http://fritz.box/cgi-bin/webcm?getpage=../html/login_sid.xml" 2>/dev/null| grep Challenge`
	Challenge=`echo $ChallengeXML | awk '{match($0,/>[^<>]+</); print substr($0,RSTART+1,RLENGTH-2)}'`

	# login aufbauen und hashen
	CPSTR="$Challenge-$Passwd"
	echo -n $CPSTR | iconv -f ISO8859-1 -t UTF-16LE > /tmp/anrufer.md5
	MD5=`md5sum /tmp/anrufer.md5 | sed -e s/' '.*$//`
	RESPONSE="$Challenge-$MD5"
	POSTDATA="login:command/response=$RESPONSE&getpage=../html/de/menus/menu2.html"

	# login senden und SID herausfischen
	SID=`wget -O - --post-data="$POSTDATA" "http://fritz.box/cgi-bin/webcm" 2>/dev/null| grep "name=\"sid\"" | head -1 | awk '{match($0,/value="[^"]+"/); print substr($0,RSTART+7,RLENGTH-8)}'`

	# refresh der daten auslösen
	wget -O /dev/null "http://fritz.box//cgi-bin/webcm?sid=$SID&getpage=..%2Fhtml%2Fde%2Fmenus%2Fmenu2.html&errorpage=..%2Fhtml%2Fde%2Fmenus%2Fmenu2.html&var%3Apagename=foncalls&var%3Aerrorpagename=foncalls&var%3Amenu=home&var%3Apagemaster=&var%3Aactivtype=pppoe&var%3AtabInetstat=0&var%3Aweckernr=&logger%3Asettings%2Ffilter=2"

	# CSV runterladen
	wget -O /tmp/fb_anrufliste.csv "http://fritz.box/cgi-bin/webcm?sid=$SID&getpage=..%2Fhtml%2Fde%2FFRITZ%21Box_Anrufliste.csv" 2>/dev/null
else
	wget -O /tmp/anrufer.tmp http://fritz.box/login_sid.lua
	# SID testen
	SID=`cat /tmp/anrufer.tmp | awk '{match($0,/SID>[^<>]+</); print substr($0,RSTART+4,RLENGTH-5)}'`
	if [ "$SID" = "0000000000000000" ]
	then
		# Challenge abholen
		Challenge=`cat /tmp/anrufer.tmp | awk '{match($0,/Challenge>[^<>]+</); print substr($0,RSTART+10,RLENGTH-11)}'`
		# login aufbauen und hashen
		CPSTR="$Challenge-$Passwd"
		echo -n $CPSTR | iconv -f ISO8859-1 -t UTF-16LE > /tmp/anrufer.md5
		MD5=`md5sum /tmp/anrufer.md5 | sed -e s/' '.*$//`
		RESPONSE="$Challenge-$MD5"
		GETDATA="?username=$Username&response=$RESPONSE"
		wget -O /tmp/anrufer.sid http://fritz.box/login_sid.lua$GETDATA 
		SID=$(sed -n '/.*<SID>\([^<]*\)<.*/s//\1/p' /tmp/anrufer.sid)
	fi
	# CSV runterladen
	wget -O /tmp/fb_anrufliste.csv "http://fritz.box//fon_num/foncalls_list.lua?sid=$SID&csv=" 2>/dev/null
fi
	
echo ~Y~T"$TAB1"Datum/Zeit~T"$TAB2"Name~T"$TAB3"Nummer~T"$TAB4"Dauer > /tmp/anrufer.mnu
echo >> /tmp/anrufer.mnu
sed -n '/^[123];/p' /tmp/fb_anrufliste.csv | head -n 16 | sed -e s/'^1;'/'~S'/ -e s/'^2;'/'~R'/ -e s/'^3;'/'~G'/ | while read line; do
	dtm=`echo $line | cut -d';' -f1`
	name=`echo $line | cut -d';' -f2`
	number=`echo $line | cut -d';' -f3`
	duration=`echo $line | cut -d';' -f6`
	echo ~T"$TAB1"$dtm~T$TAB2$name~T$TAB3$number~T$TAB4$duration >> /tmp/anrufer.mnu
done

msgbox title=Anruferliste msg=/tmp/anrufer.mnu
rm /tmp/*anruf*

exit 1

 

 

  • Like 1
Link zum Beitrag
Auf anderen Seiten teilen

Da ich keine Datei anhängen kann hier meine Version zum testen:

Lüppt auf der 7390 ....... :thumbsu:

 

Umlaute werden nicht angezeigt ..... 

..... es gibt aber Schlimmeres :D

Link zum Beitrag
Auf anderen Seiten teilen
  • Admin

@theobald123

 

Danke für die Unterstützung. Hast was gut.

 

 

@colt

 

Schau bitte die CSV-Datei mit einem Hex-Editor an, in welchem Format die Umlaute

bei Dir codiert sind. Bei mir werden sie nämlich ohne Probleme dargestellt.

Link zum Beitrag
Auf anderen Seiten teilen

Noch eine kleine Ergänzung:

 

Der Parameter Username ist nicht notwendig.

 

Somit kann die Zeile

Username=""

entfallen, und aus

GETDATA="?username=$Username&response=$RESPONSE"

wird

GETDATA="?response=$RESPONSE"
bearbeitet von theobald123
Link zum Beitrag
Auf anderen Seiten teilen

Moin ..... 

 

Schau bitte die CSV-Datei mit einem Hex-Editor an, in welchem Format die Umlaute

bei Dir codiert sind. Bei mir werden sie nämlich ohne Probleme dargestellt.

Das `ü` z.B. hat `c3 bc` ....

.... sollte also UTF8 sein ....  :sleep:  ??

Link zum Beitrag
Auf anderen Seiten teilen
  • Admin

@theobald123

Danke, ich habe die Änderung eingebaut und das Script erst mal so vorn angehängt.

 

 

@colt

 

Danke für den Test. Probier bitte mal die hier angehängte Datei. Die konvertiert UTF8

vor der Ausgabe zu ISO.

bearbeitet von SnowHead
Anhang entfernt
Link zum Beitrag
Auf anderen Seiten teilen

Moin .....
 

Probier bitte mal die hier angehängte Datei. Die konvertiert UTF8
vor der Ausgabe zu ISO.

Fehler in Zeile 60 .....

/var/plugins/anrufer: line 60: syntax error: unexpected "|"

 

Edit:  Fehler gefunden ..... ein `|` war doppelt .......

 

aber leider keine Ausgabe ..... 

Edit2.  Auf dieser Box ist scheinbar kein iconv ......

Melde mich dann mal von der Trinity ....

Link zum Beitrag
Auf anderen Seiten teilen

Moin ..... 

@colt

 

Sorry, das war die falsche Datei. Bitte diese hier verwenden.

ähhhhmmmm .... jain 

Auf der Trinity lüppts nach dem Entfernen des doppelten `|` 

 

Edit:  und die letzte angehängte funzt ebenfalls ......  :thumbsu:

Vielen Dank!

Link zum Beitrag
Auf anderen Seiten teilen
  • Admin

@colt

 

Danke, der zweite Test war wichtig. Neben den doppelten || hat die falsche Datei die

Konvertierung nämlich auch für OS

tioniert, da dort die Daten schon in ISO ankommen.

Ich hänge die letzte Version dann mal vorn an.

Link zum Beitrag
Auf anderen Seiten teilen
  • Wer ist Online   0 Benutzer

    Keine registrierten Benutzer online.


×
×
  • Neu erstellen...