Contribution au pare-feu / routeur m0n0wall
Dans la famille des distributions pare-feu / routeur, m0n0wall est une référence en termes de sécurité vis-à-vis de sa légèreté. En effet, cette distribution d’une dizaine de Mo assure la plupart des fonctionnalités des solutions commerciales :
- web interface (supports SSL)
- serial console interface for recovery
- set LAN IP address
- reset password
- restore factory defaults
- reboot system
- wireless support (including access point mode)
- captive portal
- 802.1Q VLAN support
- IPv6 support
- stateful packet filtering
- block/pass rules
- logging
- NAT/PAT (including 1:1)
- DHCP client, PPPoE and PPTP support on the WAN interface
- IPsec VPN tunnels (IKE; with support for hardware crypto cards, mobile clients and certificates)
- PPTP VPN (with RADIUS server support)
- static routes
- DHCP server and relay
- caching DNS forwarder
- DynDNS client and RFC 2136 DNS updater
- SNMP agent
- traffic shaper
- SVG-based traffic grapher
- firmware upgrade through the web browser
- Wake on LAN client
- configuration backup/restore
- host/network aliases
Après avoir exploité, testé et contribué à une autre solution de firewall/routeur nommée pfSense (issue elle-même du projet m0n0wall), SYNETIS a décelé des vulnérabilités pouvant s’avérer critiques au sein de l’interface d’administration web de cette solution.
En effet, des vulnérabilités de type CSRF permettrait à un assaillant d’obtenir un shell root sur la distribution, le tout à distance.
SYNETIS à aussitôt prévenu l’équipe communautaire en charge du maintien du projet avec des exemples à l’appui. Après divers échanges pour définir la meilleure solution de sécurisation à apporter, la nouvelle version du projet est pleinement corrigée. Celle-ci vient de paraître sous la release 1.34. Il est bien évidemment conseillé d’effectuer les mises à jour au plus vite.
Pour plus de détails concernant la démarche d’analyse, de correction et le « Proof of Concept » (PoC) de ces vulnérabilités, consulter l’article technique sur le blog du collaborateur SYNETIS. La vidéo de démonstration est également disponible.
Edit du 07/12/2012 :
- PackStormSecurity a publié les « Proof of Concept » et l’advisory de ces vulnérabilités
- 1337day a publié les « Proof of Concept » et l’advisory de ces vulnérabilités
- Exploit-DB a publié les « Proof of Concept » et l’advisory de ces vulnérabilités
Yann Cam
Consultant Sécurité