Dreambox control panel

Както знаете от доста време едни dreambox-ове ми вгорчават живота 🙂 Понякога забива CAM модула без видима причина и се налага рестарта му или понякога дори на целия приемник. Общо взето приемниците имат добър уеб интерфеис за оправление и всичко се прави лесно през него, НО (голямо но) е възможно да го позлвам само когато съм в офиса защото съм ги скрил зад рутера там. Като цяло единствения вариант за контрол оставаше да се ssh-на към рутиращата машина и след това към приемниците с telnet. Обаче наскоро разбрах че приемниците могат да приемат команди от външни скриптове рефлектиращи върху cgi-bin директорията. Примерно/cgi-bin/admin?command=reboot ще рестартира приемника. Супер нали 😉 Като цяло надращих набързо едно php с което да изпълнявам команди по приемниците, НО имах още един приблем – автентификацията. През уеб иска потребителско име и парола – нормално нещо но щеше да отнеме доста писане ако не ми бяха дали идеята да пробвам по стария начин за оторизация с подаване на информация в url http://root:dreambox@dreambox/cgi-bin/admin?command=reboot и сработи 🙂 от тук нататък нещата са ясни 🙂

function exe_command($dreambox,$command){
 $result = @fsockopen("$dreambox", 80 , $errno, $errstr, 4); //check if dreambox is accessble ovear lan
 if($result) {
 echo "Command executed for $dreambox";
 @fopen("http://root:dreambox@$dreambox$command","r");
 do_form($dreambox);
 }else{
 echo "Bad no access to $dreambox";
 do_form($dreambox);
 }
 }

Това ми е основната фукнция в контрол панела другото са валидизациия на променливи и хтмл генератори.

ps Ето го и почти пълен списък с командите които подържа приемника 🙂 Също така може да се имитират и натискания на бутони пак с подобни команди 🙂 ако някои е заинтересован да свирка

Вашият коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *