- Mitglied seit
- 10 Mai 2006
- Beiträge
- 15,156
- Punkte für Reaktionen
- 1,707
- Punkte
- 113
Weil es m.W. noch niemand im IPPF schriftlich festgehalten hat, hier noch eine "nachgelieferte" Feststellung bzgl. der "featovl.cfg" seit der Version 07.0x (bzw. seit Labor 06.98).
Während man bis zu dieser Version in der erwähnten Datei noch alle möglichen Variablen überschreiben konnte, solange sie nur auf die Maske
Da dieser Aufruf dann jeden Eintrag in dieser Datei killt, der nicht zu den von AVM genehmigten Variablen gehört:
, funktioniert also für viele Features das versuchsweise Abschalten über diese Datei (z.B. für POTS bei FPGA-Problemen) nicht mehr.
Wer das ansonsten noch benutzt, um z.B. bei einer installierten Firmware mal schnell den "Typ" zwischen "öffentlich" und "privat" umzuschalten (das sind dann
Zumindest kann damit auch kein Angreifer mehr durch ein TFFS-Image mit einer entsprechenden
Das zweite Problem bzw. den zweiten Angriffsvektor aus diesem älteren Beitrag (von AVM höchstselbst signierte Firmware-Images mit Shell-Zugängen, die eine reguläre Firmware ersetzen konnten) hatte AVM ja bereits zwischendrin dadurch gelöst, daß diese "Inhouse-Versionen" mit einem eigenen Key signiert wurden und sich daher nicht mehr ohne weiteres über eine andere Firmware installieren ließen.
Während man bis zu dieser Version in der erwähnten Datei noch alle möglichen Variablen überschreiben konnte, solange sie nur auf die Maske
^CONFIG_[a-zA-Z0-9_]*=[a-zA-Z0-9]\+$
paßten (also auch "CONFIG_RELEASE" usw.), hat AVM die boxfeaturedisabled
seitdem um eine "check"-Option erweitert und so wird nunmehr - sofern die /bin/boxfeaturedisable
existiert in der Firmware - beim Start erst einmal diese Datei mit der passenden Option aufgerufen:
Code:
##########################################################################################
## ovl
##########################################################################################
if ! checkempty /var/flash/featovl.cfg 2>/dev/null ; then
if [ -x /bin/boxfeaturedisable ] ; then
/bin/boxfeaturedisable --check "`cat /var/flash/featovl.cfg`" &>/dev/null
for featovl in `cat /var/flash/featovl.cfg | grep "^CONFIG_[a-zA-Z0-9_]*=[a-zA-Z0-9]\+$"`; do
export ${featovl}
done
fi
fi
Code:
case $i in
CONFIG_WLAN=[yn]) ## wlan
echo "[$0]: accept cmd ${i}"
echo ${i} >> ${featovl_tmpfile}
;;
CONFIG_DECT=[yn]) ## dect
echo "[$0]: accept cmd ${i}"
echo ${i} >> ${featovl_tmpfile}
;;
CONFIG_CAPI_NT=[yn]) ## S0-NT / Isdn
echo "[$0]: accept cmd ${i}"
echo ${i} >> ${featovl_tmpfile}
;;
CONFIG_USB=[yn]|CONFIG_USB_HOST=[yn]|CONFIG_AURA=[yn]|CONFIG_NAS=[yn]|CONFIG_USB_GSM=[yn]|CONFIG_USB_STORAGE=[yn]|CONFIG_MEDIASRV=[yn]) ## Massenspeicher
echo "[$0]: accept cmd ${i}"
echo ${i} >> ${featovl_tmpfile}
;;
CONFIG_LINEARTV=[yn]) ## lineartv
echo "[$0]: accept cmd ${i}"
echo ${i} >> ${featovl_tmpfile}
;;
*)
echo "[$0]: unknown or unsupported cmd ${i}"
;;
esac
Wer das ansonsten noch benutzt, um z.B. bei einer installierten Firmware mal schnell den "Typ" zwischen "öffentlich" und "privat" umzuschalten (das sind dann
CONFIG_RELEASE
bzw. CONFIG_BETA_RELEASE
) oder irgendeine Feature-Variable für Tests zu verändern (ohne das gleich in eine neue Firmware einzubauen, die dann erst mal installiert werden müßte), der müßte dann den Aufruf von /bin/boxfeaturedisable --check ...
aus der rc.conf
in der Firmware entfernen - ansonsten sind alle Änderungen in der Datei, die über die oben gezeigten Variablen hinausgehen, wieder verschwunden nach jedem Aufruf der rc.conf
(und die wird gerne mal "außer der Reihe" - also abseits des Starts - aufgerufen). Das gilt auch für die aktuelle Laborreihe ... denn auch da wird - trotz geändertem Ablauf beim Start - irgendwann noch die "legacy version" in der /etc/init.d/rc.conf
aufgerufen.Zumindest kann damit auch kein Angreifer mehr durch ein TFFS-Image mit einer entsprechenden
featovl.cfg
die Firmware einfach auf den "privaten" Modus schalten und damit dann wieder Code über die /var/flash/calllog
ausführen lassen - ich hatte das Beseitigen dieser Lücke durch AVM bisher noch nicht ausreichend gewürdigt, nachdem ich sie vor 1 1/2 Jahren aufgezeigt hatte: https://www.ip-phone-forum.de/threa...ben-der-var-flash-calllog.299002/post-2270213Das zweite Problem bzw. den zweiten Angriffsvektor aus diesem älteren Beitrag (von AVM höchstselbst signierte Firmware-Images mit Shell-Zugängen, die eine reguläre Firmware ersetzen konnten) hatte AVM ja bereits zwischendrin dadurch gelöst, daß diese "Inhouse-Versionen" mit einem eigenen Key signiert wurden und sich daher nicht mehr ohne weiteres über eine andere Firmware installieren ließen.