Auf einem aktuellen Debian Bookworm funktioniert der Exploit von Yurii Crimson (nach einer geringfĂĽgigen Anpassung):
andreas@debian-vm7:~/work/ExploitGSM-main/build$ lsmod | grep gsm
andreas@debian-vm7:~/work/ExploitGSM-main/build$ ./ExploitGSM
kallsyms restricted, begin retvial kallsyms table
detected kernel path-> /vmlinuz
detected compressed format -> xz
Uncompressed kernel size -> 65902908
successfully taken kernel!
begin try leak startup_xen!
startup_xen leaked address -> ffffffff8306f1c0
text leaked address -> ffffffff81000000
lockdep_map_size -> 32
spinlock_t_size -> 4
mutex_size -> 32
gsm_mux_event_offset -> 56
Let go thread
We get root, spawn shell
root@debian-vm7:/root# lsmod | grep gsm
n_gsm 49152 1
root@debian-vm7:/root# id
uid=0(root) gid=0(root) groups=0(root),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),100(users),106(netdev),111(bluetooth),113(lpadmin),116(scanner),1000(andreas)
Falls man aber das GSM Modul nicht benötigt, kann man als gestresster Sysadmin das Problem wie folgt mit wenig Aufwand und ohne Reboot umgehen:
root@debian-vm7:~# cat /etc/modprobe.d/n_gsm.conf
# blacklist n_gsm module to hot-fix (workaround) CVE-2023-6546
blacklist n_gsm
install n_gsm /bin/true
Anmerkung: "blacklist" alleine reicht nicht, ein "fake install" Eintrag ist notwendig.
Nun funktioniert der Exploit nicht mehr:
andreas@debian-vm7:~/work/ExploitGSM-main/build$ lsmod | grep gsm
andreas@debian-vm7:~/work/ExploitGSM-main/build$ ./ExploitGSM
kallsyms restricted, begin retvial kallsyms table
detected kernel path-> /vmlinuz
detected compressed format -> xz
Uncompressed kernel size -> 65902908
successfully taken kernel!
begin try leak startup_xen!
startup_xen leaked address -> ffffffffa826f1c0
text leaked address -> ffffffffa6200000
lockdep_map_size -> 32
spinlock_t_size -> 4
mutex_size -> 32
gsm_mux_event_offset -> 56
Error set line discipline N_GSM, Invalid argument
andreas@debian-vm7:~/work/ExploitGSM-main/build$ lsmod | grep gsm
andreas@debian-vm7:~/work/ExploitGSM-main/build$
(Getestet mit einer Debian Bookwork Installation in einer VM)
Bis zur VerfĂĽgbarkeit eines korrigierten Kernels sollte das hoffentlich reichen.
HTH
- andreas