Hitronhub CVE-30360 (Kabel Deutschland) WLAN Hack?

roald

Stammuser
I also got now the 4.2.8.9 version of the software.

Can anybody confirm that the old hack to activate ssh does not work anymore?
 

setti

Stammuser
trying the ssh method while booting brings "Authentication failed". So i guess, they either [1] changed the password for the "app" account, [2] changed the "app" user name or [3] disabled ssh password login at all.

Hopefully it will be 1 or 2.

The firewall seems still be in deactivated state while booting, otherwise the authentication error would not raise.

So here comes the question: Anyone able to extract the new firmware?
 

pilsfreund

New member
CVE-30360_4.2.8.9-IMS-KDG-140813 Firmware Dump

Hi there,

I've dumped the new 4.2.8.9-IMS-KDG firmware from my Hitron CVE-30360 and extracted the rootfs. You can find it here for download: https://mega.co.nz/#!tYxG0JRI!6FG4_kjigHiUnKtSBGZvcJIz09bJSIJx4gr2TGGnnQk

Obviously, I also have the other partitions from the firmware dump, but I'm not comfortable sharing these as they may contain personal data that would allow KDG to identify my modem.

Unfortunately, the /lib/libhtx_db.so file flipflop used to extract the password for user app does no longer exist. Also, there's no user app in the /etc/passwd file (it used to exist in 3.1.1.31), only the user root with an empty password.

So I'm not quite sure, what to do next. Any suggestions ?


Cheers,
pilsfreund
 

setti

Stammuser
Manipulating nvram and there by executing an alternative startup script seems still possible:
Code:
if test -f /nvram/0/sys_setup.sh
then
    # Start alternative system start up
    source /nvram/0/sys_setup.sh
else
....
and
Code:
# Start up
if test -f /usr/sbin/nvread
then
    enable_startup=`nvread 0.0.2 long`
    if [ $enable_startup -ne 0 ]; then \
        startup_file=`nvread 0.0.1 str`; \
    fi
else
    startup_file=
fi

Your nvram partition would be interesting. At least the config files there. Do you see a file named authorized_keys?


PS:
Here is the DES Key for de-/encrypting the config file.
Code:
libcommon_shared_db.so:00005200  00 00 00 0d 57 8a 95 8e  3d d9 33 fc 53 68 64 62  |....W...=.3.Shdb|
 
Zuletzt bearbeitet:

pilsfreund

New member
Hi setti,

apparantly, KDG downgraded my modem to 3.1 just before I dumped it via SPI, so I don't have a 4.2 nvram partition in my dump and can't check for an authorized_keys file.

I also thought about the sys_setup.sh solution, but then again, this requires permanent access to the flash chip via SPI since KDG may delete that partition and one would have to re-write it externally. It's one thing to connect to the flash with probes and dump it, but I don't really feel comfortable soldering some wires to the flash chip and run them permanently to an microcontroller..

I would prefer some SW only solution, which made me thinking: since the Hitron also keeps the previous firmware image, is there any way to make the modem boot into that externally ? It doesn't make much sense to have a backup firmware if you must have the new firmware running in order to switch back to the backup. If there was some way to boot into the backup (i.e., the one with ssh enabled and the app user), one could use this add a sys_setup.sh to the nvram partition and reboot into the new firmware..


Cheers,
pilsfreund
 

roald

Stammuser
I also think that they downgraded everybody that is using his modem in bridged mode.

Just as I have changed everything to work with the modem in bridged mode and just as everything worked quite well (no hangs and good speed) the software is downgraded.

At the deutsche kabel forum the KD people said that to get the downgrade (as I demanded) you would have to set the modem in bridge mode and you get your downgrade automatically.

It makes me wonder if the upgrade has anything to do with the lousy performance the last month.

First they put my modem in bridged mode (without any warning),
I asked to put it back in routed mode and everything is well,
then they upgrade my software and the performance is lousy,
I asked for a downgrade (at the KD forum) and they said to use bridged mode and after a few days I get the downgrade just before everything seems to work OK.

What next?

Does anybody knows what is going on at KD?

B.T.W. the ssh login hack does not seem to work (version 3.1 .31) at least not in bridged mode (with IP 192.168.100.1)
 

1nsignia

New member
Sooo, hab seit einem Monat auch einen CVE30360 (4.2.8.9-IMS-KDG) der nur sehr begrenzt mit dem schlecht funktionierendem alten Speedport blablairgendwas zusammenarbeitet.... berechtigterweise. Allerdings finde ich sollte ich das Wlan nutzen dürfen wenn ich einen Router mit Wifi antenne kriege, und so hab ich mir das auch mal näher angeschaut... (softwaremäßig).

Auf der "Übersicht" Seite gibt es Informationen über das WLAN, per Inspector hab ich die Quelle gefunden:
http://192.168.2.1/data/getSummaryInfo.asp
Code:
[{"index":"0","band":"2.4G","wlsOnOff":"OFF","wlsMode":"5","wlsChannel":"0","id":"0","Cid":"0","band":"2.4G","ssidName":"HITRON-3BC0","securityMode":"2"}]

Soweit nichts neues, sieht man ja auch im GUI. Aber wenn ich den DHCP tab aufmache holt er sich dort ja auch ähnliche Informationen:
http://192.168.2.1/data/getLanIpv4Setting.asp
Code:
[{"dhcpOnOff":"Enabled", "leasetime":"86400", "dhcpStarIp":"192.168.2.10", "dhcpEndIp":"192.168.2.200", "privateLanIp":"192.168.2.1", "subMask":"255.255.255.0"}]

...und wenn ich was ändere und abschicke dann geht das an /goform/LocalIp:
http://192.168.2.1/goform/LocalIp
Code:
POST /goform/LocalIp HTTP/1.1
Host: 192.168.2.1
Connection: keep-alive
Content-Length: 228
Accept: application/json, text/javascript, */*; q=0.01
Origin: http://192.168.2.1
X-Requested-With: XMLHttpRequest
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36
Content-Type: application/x-www-form-urlencoded
DNT: 1
Referer: http://192.168.2.1/index.html
Accept-Encoding: gzip,deflate
Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4
Cookie: userName=admin; password=; userid=
und dazu die Daten:
Code:
model: {"dhcpOnOff":"Enabled","privateLanIp":"192.168.2.1","subMask":"255.255.255.0","dhcpv4ModeInfo":"1"}
webcheck:

Ich trau mich gerade nicht drauf zu hoffen, aber vielleicht reicht ja sein POST auf /goform/Wireless mit "wlsOnOff": "ON" ?

Edit:
es scheint die GET Parameter webcheck und _id können weggelassen werden, dann wird das bei POST vermutlich auch so sein -> nur cookie file benötigt. machts einfacher.

Edit 2:
die login prozedur hat sich auch geändert, die Felder heissen jetzt "usernamehaha" und "passwordhaha"... wer auch immer das beschlossen haben mag
Code:
#!/bin/sh
HOST=192.168.2.1
USER=admin
PASS=password
echo BEGIN
curl --cookie-jar cookies.txt http://$HOST/login.html -s
echo LOGIN 
curl --cookie cookies.txt --cookie-jar cookies.txt --data "usernamehaha=$USER&passwordhaha=$PASS" http://$HOST/goform/login -s

Allerdings setzen die ein paar cookies von hand im JS (userName & password).

EDIT 3:
Das Form für Wireless heisst definitiv "Wireless" ("http://$HOST/goform/Wireless), sonst gibts einen 404 aber da nicht.

Ich kann jetzt DHCP an und ausmachen per curl:
Code:
#!/bin/sh
HOST=192.168.0.1
USER=admin
PASS=pw

rm cookies.txt

curl --cookie-jar cookies.txt http://$HOST/login.html
curl --cookie cookies.txt --cookie-jar cookies.txt --data "usernamehaha=$USER&passwordhaha=$PASS" http://$HOST/goform/login
echo

USID=`grep -E -o "[0-9]{4,}" cookies.txt`´ # uid aus den cookies ziehen
echo USID: $USID

## ENABLE DHCP
curl "http://$HOST/goform/LocalIp" -H "Cookie: userName=$USER; password=$PASS; userid=$USID" -H "Origin: http://192.168.2.1" -H "Accept-Encoding: gzip,deflate" -H "Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded" -H "Accept: application/json, text/javascript, */*;q=0.01" -H "Referer: http://192.168.2.1/index.html" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" -H "DNT: 1" --data "model="%"7B"%"22dhcpOnOff"%"22"%"3A"%"22Enabled"%"22"%"2C"%"22privateLanIp"%"22"%"3A"%"22192.168.2.1"%"22"%"2C"%"22subMask"%"22"%"3A"%"22255.255.255.0"%"22"%"2C"%"22dhcpv4ModeInfo"%"22"%"3A"%"221"%"22"%"7D&webcheck=userName"%"3D$USER"%"3B+password"%"3D$PASS"%"3B+userid"%3D"$USID" --compressed
# echo
## ENABLE WIFI
curl "http://$HOST/goform/Wireless" -H "Cookie: userName=$USER; password=$PASS; userid=$USID" -H "Origin: http://192.168.2.1" -H "Accept-Encoding: gzip,deflate" -H "Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded" -H "Accept: application/json, text/javascript, */*;q=0.01" -H "Referer: http://192.168.2.1/index.html" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" -H "DNT: 1" --data "model=%7B%22index%22%3A%220%22%2C%22band%22%3A%222.4G%22%2CwlsOnOff%3A%22ON%22%2C%22lsMode%22%3A%225%22%2C%22wlsChannel%22%3A%220%22%2C%22id%22%3A%220%22%2C%22Cid%22%3A%220%22%2C%22ssidName%22%3A%22MEIN%20WLAN%22%2C%22securityMode%22%3A%222%22%7D&webcheck=userName"%"3D$USER"%"3B+password"%"3D$PASS"%"3B+userid"%3D"$USID" --compressed
# (geht nicht)
curl --cookie cookies.txt http://$HOST/goform/logout
echo

aber wifi geht noch nicht.
Übrigens erwartet er einen passenden JSON string, nur "dhcpOnOff": "enabled" reicht ihm nicht, da müssen alle erwarteten keys drin sein (extra-keys stören aber nicht).

Aktuelles Script mit default DHCP-Ausschalt funktion:
Code:
#!/bin/bash

HOST=${1:-192.168.2.1}
USER=${2:-admin}
PASS=${3:-password}
FORM=${4:-LocalIp}
MODEL=${5:-{"dhcpOnOff":"Disabled","privateLanIp":"192.168.2.1","subMask":"255.255.255.0","dhcpv4ModeInfo":"1"}}

urlencode () {
  string=$1; format=; set --
  while
    literal=${string%%[!-._~0-9A-Za-z]*}
    case "$literal" in
      ?*)
        format=$format%s
        set -- "$@" "$literal"
        string=${string#$literal};;
    esac
    case "$string" in
      "") false;;
    esac
  do
    tail=${string#?}
    head=${string%$tail}
    format=$format%%%02x
    set -- "$@" "'$head"
    string=$tail
  done
  printf "$format\\n" "$@"
}

rm cookies.txt 2>/dev/null

# startseite laden
curl --cookie-jar cookies.txt http://$HOST/login.html >/dev/null # ref
echo && echo "[1/4] login page"

# einloggen
curl --cookie cookies.txt --cookie-jar cookies.txt --data "usernamehaha=$USER&passwordhaha=$PASS" http://$HOST/goform/login >/dev/null # login
echo && echo "[2/4] logged in"

# uid aus den cookies ziehen
USID=`grep -E -o "[0-9]{4,}" cookies.txt`
echo "[3/4] extracted cookies"

# Beispiel: DHCP ein/ausschalten
# model=`urlencode '{"dhcpOnOff":"'"$MODE"'","privateLanIp":"192.168.2.1","subMask":"255.255.255.0","dhcpv4ModeInfo":"1"}'`
# curl "http://$HOST/goform/LocalIp" -H "Cookie: userName=$USER; password=$PASS; userid=$USID" -H "Origin: http://192.168.2.1" -H "Accept-Encoding: gzip,deflate" -H "Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded" -H "Accept: application/json, text/javascript, */*;q=0.01" -H "Referer: http://192.168.2.1/index.html" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" -H "DNT: 1" --data "model=$model&webcheck=userName"%"3D$USER"%"3B+password"%"3D$PASS"%"3B+userid"%3D"$USID" --compressed

# Versuch: WIFI ein
# model=`urlencode '{"index":"0","band":"2.4G","wlsOnOff":"ON","wlsKey":"testkeytest","wlsPass":"testkeytest","wlsPassword":"testkeytest","password":"testkeytest",wlsMode":"5","wlsChannel":"0","id":"0","Cid":"0","band":"2.4G","ssidName":"HITRON-3BC0","securityMode":"2"}'`
# curl "http://$HOST/goform/Wireless" -H "Cookie: userName=$USER; password=$PASS; userid=$USID" -H "Origin: http://192.168.2.1" -H "Accept-Encoding: gzip,deflate" -H "Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded" -H "Accept: application/json, text/javascript, */*;q=0.01" -H "Referer: http://192.168.2.1/index.html" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" -H "DNT: 1" --data "model=$model&webcheck=userName"%"3D$USER"%"3B+password"%"3D$PASS"%"3B+userid"%3D"$USID" --compressed

# model2=`urlencode '{"index":"0","band":"2.4G","wlsOnOff":"Enabled","wlsKey":"testkeytest","wlsPass":"testkeytest","wlsPassword":"testkeytest","password":"testkeytest","wlsMode":"5","wlsChannel":"0","id":"0","Cid":"0","band":"2.4G","ssidName":"HITRON-3BC0","securityMode":"2"}'`
# curl "http://$HOST/goform/Wireless" -H "Cookie: userName=$USER; password=$PASS; userid=$USID" -H "Origin: http://192.168.2.1" -H "Accept-Encoding: gzip,deflate" -H "Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded" -H "Accept: application/json, text/javascript, */*;q=0.01" -H "Referer: http://192.168.2.1/index.html" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" -H "DNT: 1" --data "model=$model&webcheck=userName"%"3D$USER"%"3B+password"%"3D$PASS"%"3B+userid"%3D"$USID" --compressed
# (geht nicht)
# echo && echo "[4/4] enabled WiFi"

model=`urlencode $MODEL`
curl "http://$HOST/goform/$FORM" -H "Cookie: userName=$USER; password=$PASS; userid=$USID" -H "Origin: http://192.168.2.1" -H "Accept-Encoding: gzip,deflate" -H "Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4" -H "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/38.0.2125.122 Safari/537.36" -H "Content-Type: application/x-www-form-urlencoded" -H "Accept: application/json, text/javascript, */*;q=0.01" -H "Referer: http://192.168.2.1/index.html" -H "X-Requested-With: XMLHttpRequest" -H "Connection: keep-alive" -H "DNT: 1" --data "model=$model&webcheck=userName"%"3D$USER"%"3B+password"%"3D$PASS"%"3B+userid"%3D"$USID" --compressed

curl --cookie cookies.txt http://$HOST/goform/logout # logout
echo
(oder auf github)


Sofern man also das WLAN so starten kann oder könnte fehlt uns aber noch der WLAN-Passwort-Key; der kommt im Wireless-Status nicht mit, wird aber vermutlich beim senden gebraucht.... Hat denn irgendwer einen WLAN-enabled CVE-30360? Dann wären wir im gleich fertig, oder zumindest wüssten wir dass es so nicht geht.

Außerdem hab ich scheinbar das backup-import ding einfach nur übersehen die ganze Zeit, mal schauen ob ich das noch decoded bekomme... Bezweifel ich ja ehrlich gesagt.
 
Zuletzt bearbeitet:

1nsignia

New member
Mehr Zeug: hab versucht docsis zu installieren um die backup datei zu entschlüsseln, allerdings kriege ich den Fehler "u_int length mismatch" beim decode Versuch.

Probiere jetzt im "komischen Setup Modus" mal mit Wireshark ein bisschen rumzuschnüffeln, wenn der wirklich ein TFTP FW-Update macht wäre das natürlich ausgezeichnet.
http://www.hackerboard.de/353162-post44.html

Edit: Okay, also in dem Modus macht der CVE fast nichts; er schickt nur zwei Arten von Paketen; am anfang ein paar Router Advertisements, und danach nur noch fast leere Pakete.

Die sind jeweils 50 bytes lang und sehen immer so aus:
Code:
0000   80 28 14 18 01 00 01 00 00 00 [u][b]b9[/b][/u] 00 57 77 73 77  .(..........Wwsw
0010   57 11 2b f3 5b 75 f3 33 57 7e 77 75 1b 73 34 d1  W.+.[u.3W~wu.s4.
0020   00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................
0030   00 00                                            ..
dabei wird das fett-markierte Byte immer zwischen 02 und b9 hochgezählt (jew. einschließlich).

Die Pakete werden von ff:ff:ff:ff:ff:ff nach ff:ff:ff:ff:ff:ff (broadcast) geschickt. Angehängt ist das pcap das ich gemacht habe.

Übrigens wird die Konfiguration durch das Starten in diesem Modus nicht gelöscht, es kann also mehr oder weniger hemmungslos experimentiert werden.
 
Zuletzt bearbeitet:

setti

Stammuser
Hi, deine dekodier Versuche der config datei wurden doch bereits hier gelöst.
Ich weiß nicht von wem das Programm stammt aber die Tribute gehören ihm/ihr:
Code:
/*
        $ gcc -o hc -s -O3 hc.c -lcrypto
        $ hc cmconfig.cfg cmconfig_plain.txt d # decrypting
        $ hc cmconfig_plain.txt cmconfig.cfg e # encrypting
*/
#include <stdlib.h>
#include <stdio.h>
#include <openssl/des.h>

#define BUFFER_SIZE (8 * 1024)
#define RET_GOTO(code, marker) \
        ret = code; \
        goto marker;

// libhtx_db.so:00059B14
static DES_cblock hitron_key = {
        0x57, 0x8A, 0x95, 0x8E, 0x3D, 0xD9, 0x33, 0xFC
};

void hitron_crypt(FILE *out, FILE *in, int enc)
{
        size_t i, n = -1;
        DES_cblock buffer[BUFFER_SIZE];
        DES_key_schedule schedule;
        DES_set_key_unchecked(&hitron_key, &schedule);
        while((n = fread((void *)&buffer, sizeof(DES_cblock), BUFFER_SIZE, in)) > 0) {
                for(i = 0; i < n; i++) {
                        DES_ecb_encrypt(&buffer[i], &buffer[i], &schedule, enc);
                }
                fwrite((void *)&buffer, sizeof(DES_cblock), n, out);
        }
}

int main(int argc, char **argv)
{
        int ret = EXIT_SUCCESS;
        FILE *in = NULL, *out = NULL;

        if(argc != 4) {
                printf("Usage: hc in out d|e");
                return EXIT_FAILURE;
        }

        in = fopen(argv[1], "rb");
        if(in == NULL) {
                printf("could not open file\n");
                return EXIT_FAILURE;
        }

        out = fopen(argv[2], "wb");
        if(out == NULL) {
                printf("could not open file\n");
                RET_GOTO(EXIT_FAILURE, close_in);
        }
        hitron_crypt(out, in, argv[3][0] == 'e');

        fclose(out);
close_in:
        fclose(in);
end:
        return ret;
}

Das benutze ich um mein (bereits konfiguriertes WLAN aus alten Zeiten) regelmäßig per curl zu aktivieren:
Code:
#!/bin/bash
DIR="/opt/hitron"
CFG="config"
HOST=192.168.0.1
LOGIN=admin
PASS=password

LOGIN_FORM=$(curl --cookie-jar $DIR/cookies.txt http://$HOST/login.html -s)

USER_FIELD=$(echo $LOGIN_FORM | perl -n -e '/\"(\w+)\":\$\(.#user_login.\)\.val\(\).*/ && print $1')
PASS_FIELD=$(echo $LOGIN_FORM | perl -n -e '/\"(\w+)\":\$\(.#user_password.\)\.val\(\).*/ && print $1')

LOGIN_STATUS=$(curl --cookie $DIR/cookies.txt --cookie-jar $DIR/cookies.txt --data "$USER_FIELD=$LOGIN&$PASS_FIELD=$PASS" http://$HOST/goform/login -s)

if [ "$LOGIN_STATUS" == "success" ]; then
        curl --cookie $DIR/cookies.txt --cookie-jar $DIR/cookies.txt "http://$HOST/goform/Backup" -s -o $DIR/$CFG.enc
        $DIR/hc $DIR/$CFG.enc $DIR/$CFG.cfg d
        perl -p -i -e "s/wireless false/wireless true/g" $DIR/$CFG.cfg
        $DIR/hc $DIR/$CFG.cfg $DIR/$CFG.enc e
        curl --cookie $DIR/cookies.txt --cookie-jar $DIR/cookies.txt -F "filename=restore" -F "name=filename" -F "filename=@$DIR/$CFG.enc" "http://$HOST/goform/Restore" -s -o /dev/null
fi

Die anderen Parameter sollten sich aber auch in der entschlüsselten Config einstellen lassen.
 

1nsignia

New member
Hi, deine dekodier Versuche der config datei wurden doch bereits hier gelöst.
Ich weiß nicht von wem das Programm stammt aber die Tribute gehören ihm/ihr:
Code:
/*

Die anderen Parameter sollten sich aber auch in der entschlüsselten Config einstellen lassen.


huh, wie hab ich es geschafft das zu übersehen? Jedenfalls danke ich probiers. Und das geht mit 4.2.8.9 bei dir?

EDIT: yes!! Danke danke danke!
Es gibt aber noch andere interessante Zeilen:


Code:
remote_management_https false
remote_management_https_port 8181
remote_management_telnet false
remote_management_telnet_port 2323
remote_management_ssh false
remote_management_ssh_port 2222
remote_management_snmp false
remote_management_snmp_port 161
[B]wan1_remote_management_acl 0.0.0.0 255.255.255.255 00 true
fw_remote_management_allow_all true[/B]
fw_local_management_enable true
fw_local_management_rule http true
fw_local_management_rule https true
fw_local_management_rule telnet false
fw_local_management_rule ssh false
snmp_enable_lan false[B]
snmp_enable_wan true[/B]
webs_enable true

evtl kann man damit dass an- und ausschalten ders WLANs durch KD deaktivieren?


Und warum ist hc.c nicht in der habohitron repo?
 
Zuletzt bearbeitet:

setti

Stammuser
ich glaube, manche einstellungen werden aber gar nicht vom hitron ausgewertet. sonst könnte man z.b. ssh erlauben mittels "fw_local_management_rule ssh true".
Das bringt aber keinen Erfolg.
Du kannst die hc.c ja in deinen github fork adden.
 

setti

Stammuser
Ich überprüfe minütlich per Script, ob wlan noch aktiv ist. dabei ist mir aufgefallen, dass nach einigen Tagen der Webserver vom Hitron nicht mehr reagiert. es scheint also meiner Meinung nach irgendwo ein speicherleck zu geben. Nur so eine Idee.
 

Besamung

New member
hallo

wie ich eurem Gespräch entnehmen kann habt ihr es wohl geschafft das wlan zu aktivieren, wenn dem so ist könnt ihr kurz erklären wie man vorgehen muss um das nachzustellen?

curl hab ich schon zum laufen gebracht mit Cygwin

der code von setti klappt bei mir nicht, bricht ab mit der Meldung unerwartetes dateiende.

ich bin kein programmierer oder sowas und mit linux kenne ich mich auch nur minimal aus
 

setti

Stammuser
Wie gesagt, mein NAS (was sowieso 24/7) läuft, prüft minütlich ob WLAN aktiv ist (script siehe oben). Ist dies nicht der Fall, wird die (verschlüsselte) config geladen, entschlüsselt (code siehe hc.c), der wlan parameter angepasst, die config wieder verschlüsselt und abschließend die config wieder hochgeladen.
Alles keine Magie, Skripte sind ja hier bereits und laufen auf nem Linux NAS (ARM Architektur, spielt aber bei den Bash Scripten ja keine Rolle).

So wenig Ahnung, wie du von Linux hast, hab ich übrigens von Windows ;)
 

Mazel

Stammuser
Nun lasst uns doch nicht einfach unwissend ohne Wlan sterben.

Ich sehe ja das ich ohne Hilfe eines zusatztools nicht weiter komme.
Ich bin ja ein Fan von Ausführbaren Dateien aber ich würde es auch
manuell machen.
Ich hab schon versucht irgendetwas mit curl und github auf winxp anzufangen, tappe aber weiter im dunkeln. Es ist aber auch überhaupt nicht ersichtlich, was genau ihr da macht.

Vielleicht könnte jemand eine Anleitung geben? Was brauche ich, wie nutze ich das und wo kommen die codes rein.
Zur verfügung hab ich im Moment eine virtuelle version von
Knoppix auf Suse.

Wäre echt Dankbar.
 

N2k1

Stammuser
Nimm den Quelltext aus Post #151 und compiliere ihn wie in der ersten Zeile angegeben.
Nun kopiere den 2. Quelltext in eine beliebige Datei (z.B. hitron.sh)
Editiere (wenn notwendig) den Wert der IP (HOST) und des Passwortes, sowie den Wert der Variablen DIR.
Nun kopiere die hc.exe in das Verzeichnis des Shell-Scriptes und führe es unter Cygwin aus.
Läuft perfekt!
 
Oben