diff --git a/package/gluon-status-page/files/lib/gluon/status-page/www/cgi-bin/status b/package/gluon-status-page/files/lib/gluon/status-page/www/cgi-bin/status index dd30ae57..01b468da 100755 --- a/package/gluon-status-page/files/lib/gluon/status-page/www/cgi-bin/status +++ b/package/gluon-status-page/files/lib/gluon/status-page/www/cgi-bin/status @@ -1,5 +1,9 @@ #!/bin/sh +escape_html() { + sed 's/&/\&/g; s/\</g; s/>/\>/g; s/"/\"/g; s/'"'"'/\'/g' +} + linknodes() { PREFIX=$(uci get network.local_node_route6.target | cut -d: -f 1-4) sed 's#\([0-9a-f]\{2\}\):\([0-9a-f]\{2\}\):\([0-9a-f]\{2\}\):\([0-9a-f]\{2\}\):\([0-9a-f]\{2\}\):\([0-9a-f]\{2\}\)#&#g' @@ -21,19 +25,19 @@ echo "
" -echo "Firmware release: $(cat /lib/gluon/release)" +echo "Firmware release: $(cat /lib/gluon/release | escape_html)" echo -uptime | sed 's/^ \+//' +uptime | sed 's/^ \+//' | escape_html echo -ip address show dev br-client +ip address show dev br-client | escape_html echo -free -m +free -m | escape_html echo -df /rom /overlay +df /rom /overlay | escape_html echo "" @@ -45,11 +49,11 @@ do echo "
" - iw dev $if link + iw dev $if link | escape_html echo - iw dev $if station dump | linknodes + iw dev $if station dump | escape_html | linknodes echo "" done