Web interface - jamesmacwhite/hh70-ee GitHub Wiki

The router web interface has been rebranded by EE with various modifications and changes tailored to the EE network. The core firmware itself is from Alcatel.

4GEE Home Router

The web interface is built with JavaScript using Vue.js. The JSON-RPC API is used to retrieve and save form input data. Because of this a lot of the functionality and general construction of the web interface is available to be viewed in the build.js file included without having to reverse engineer binaries, as it is mostly client side JavaScript. CGI does not appeared to be used within the interface.

The GoAhead Web Server serves the web interface itself. You can spot this in the Server: HTTP header when viewing any responses.

curl -v http://192.168.1.1/index.html
*   Trying 192.168.1.1...
* TCP_NODELAY set
* Connected to 192.168.1.1 (192.168.1.1) port 80 (#0)
> GET /index.html HTTP/1.1
> Host: 192.168.1.1
> User-Agent: curl/7.58.0
> Accept: */*
>
* HTTP 1.0, assume close after body
< HTTP/1.0 200 OK
< Date: Mon May 25 14:41:39 2020
< Server: GoAhead-Webs/2.5.0
< X-Frame-Options: SAMEORIGIN
< x-xss-protection: 1; mode=block
< Last-modified: Tue Oct 23 07:08:21 2018
< Content-length: 789
< Content-type: text/html

The web interface itself is served by a custom binary called webs located in /usr/bin/webs. This runs as a daemon in the background.