W pakiecie pppd (), co umożliwia wykonanie własnego kodu poprzez wysyłanie specjalnie sformatowanych zapytań do systemów korzystających z protokołu PPP (Point-to-Point Protocol) lub PPPoE (PPP over Ethernet). Te protokoły są zazwyczaj wykorzystywane przez dostawców do organizowania połączeń przez Ethernet lub DSL, a także stosowane w niektórych VPN (na przykład, pptpd i ). Aby sprawdzić podatność swoich systemów na problem prototyp exploita.
Vulnerability is caused by a buffer overflow in the implementation of the EAP (Extensible Authentication Protocol) authentication protocol. The attack can be carried out before the authentication stage by sending a packet with the type EAPT_MD5CHAP, which includes a very long hostname that does not fit in the allocated buffer. Due to an error in the size check for the rhostname field, an attacker can overwrite data beyond the buffer on the stack, achieving remote execution of their code with root privileges. The vulnerability manifests on both the server and client side, meaning that not only the server can be attacked, but also the client attempting to connect to a server controlled by the attacker (for example, the attacker may first exploit the server through this vulnerability and then start affecting connecting clients).
Problem dotyczy wersji od 2.4.2 do 2.4.8 włącznie i została usunięta w formie . Vulnerability is also stosować , ale w domyślnej konfiguracji lwIP nie ma wsparcia dla EAP.
Status usunięcia problemu w dystrybucjach można zobaczyć na stronach: , , , , , , , . W RHEL, OpenWRT i SUSE pakiet pppd został zbudowany z włączoną ochroną "Stack Smashing Protection" (tryb "-fstack-protector" w gcc), co ogranicza możliwość eksploatacji. Oprócz dystrybucji, podatność została również potwierdzona w niektórych produktach (CallManager), i Synology (DiskStation Manager, VisualStation VS960HD i Router Manager), korzystających z kodu pppd lub lwIP.
Źródło: opennet.ru
