или «Произошла внутренняя ошибка» при подключении к RDP — что делать?
Встроенный RDP клиент в операционной систем Windows хранит кэш картинок и шрифто, историю подключений и прочее. Иногда из-за переполнения кэша или истории может возникать вот такая ошибка.
Исправить эту ошибку не сложно.
Надо очистить кэш RDP и реестр
Для этого необходимо запустить редактор реестра regedit.exe, и выполнить очистку следующий веток реестра:
HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault
HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers
HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers
Также необходимо очистить папку с кэшем Bitmap:
C:Users%имя пользователя%AppDataLocalMicrosoftTerminal Server ClientCache
в ней храниться тот самый кэш растровых изображений. В целом его лучше вообще не хранить, для этого надо скачать ярлык для подключения к RDP снашего сайта, где внесены оптимальные настройки, в том числе убрана эта опция. Так безопаснее, так как в этот кэш может попасть личная информация с экрана вашего монитора.
Скачайте готовый скрипт для очистки кэша
При использовании встроенного клиента подключений через удалённый рабочий стол (mstsc.exe) нужно быть готовым к тому, что Windows сохраняет историю подключений. Сохраняются имя или IP-адрес удалённого устройства и имя пользователя, под которым было осуществлено подключение. Иногда это может приводить к глюкам операционной системы. Впрочем, и без последних иногда возникает необходимость очистить историю RDP-подключений.
К примеру, Вы подключаетесь по RDP с общедоступного компьютера. Не лучшая мысль, но иногда так складываются обстоятельства. Информация о подключениях хранится в реестре Windows отдельно для каждого пользователя. Таким образом, если пользователь не обладает правами администратора в системе, историю чужих подключений он не посмотрит. А вот администратор может посмотреть чужие подключения.
Очистка истории подключений через RDP
Итак, посмотрим, что у нас в реестре. Откройте реестр Windows командой regedit. Можно вбить в командной строке или через Пуск → Выполнить.
Нас интересует ветка HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server Client. Обратим внимание на подразделы Default и Servers. Первый хранит информацию о 10 последних подключениях, а второй содержит в себе перечень всех удалённых устройств и имён пользователей, которые использовались для подключения по RDP.
Зайдя в HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault, вы увидите десять ключей реестра с именами от MRU0 по MRU9 (Most Recently Used). Удалите их, чтобы очистить историю подключений по RDP.
Если развернуть HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers, то можно увидеть перечень хостов, к которым ранее подключались под текущим пользователем. Интересны ключи UsernameHint и CertHash. Это имя пользователя, которое ранее использовалось для подключения к хосту, и отпечаток RDP-сертификата сервера. Имя пользователя из UsernameHint будет подставлено при следующей попытке подключения к удалённому компьютеру.
Удалите содержимое ветки HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers. Если подразделов там много, можно удалить раздел Servers целиком, а потом создать новый пустой с таким же именем.
Далее необходимо удалить файл Default.rdp из каталога Документы текущего пользователя. Файл является скрытым, поэтому предварительно нужно включить отображений скрытых файлов и папок.
Но и это ещё не всё. Информацию о последних RDP-сессиях Windows хранит ещё и в списках быстрого перехода (jump lists). Если набрать в поисковой строке «mstsc», то можно будет увидеть совершённые ранее подключения. Чтобы отключить ведение истории, откройте в реестре ветку HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced, найдите там ключ Start_TrackDocs (или создайте, если ключ отсутствует) и задайте ему значение 0 (тип DWORD). Для очистки уже существующих списков, нужно удалить файлы в каталоге %AppData%MicrosoftWindowsRecentAutomaticDestinations.
Вышеописанные действия можно автоматизировать. Ниже пример скрипта:
@echo off reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault" /va /f reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" /f reg add "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" attrib -s -h %userprofile%documentsDefault.rdp del %userprofile%documentsDefault.rdp del /f /s /q /a %AppData%MicrosoftWindowsRecentAutomaticDestinations
Что делает данный скрипт?
- Отключение вывода информации в консоль;
- Очистка информации о последних 10 подключениях;
- Очистка информации о ранее сделанных подключениях путём пересоздания раздела Server;
- Убирание атрибутов Скрытый и Системный у файла Default.rdp в каталоге текущего пользователя;
- Удаление файла Default.rdp;
- Очистка списков быстрого перехода.
Скрипт с подобной функциональностью в PowerShell будет выглядеть следующим образом:
Get-ChildItem "HKCU:SoftwareMicrosoftTerminal Server Client" -Recurse | Remove-ItemProperty -Name UsernameHint -Ea 0 Remove-Item -Path 'HKCU:SoftwareMicrosoftTerminal Server Clientservers' -Recurse 2>&1 | Out-Null Remove-ItemProperty -Path 'HKCU:SoftwareMicrosoftTerminal Server ClientDefault' 'MR*' 2>&1 | Out-Null $docsfoldes = [environment]::getfolderpath("mydocuments") + 'Default.rdp' remove-item $docsfoldes -Force 2>&1 | Out-Null
Запрет на сохранение истории подключений через RDP
Кроме непосредственно очистки истории RDP-подключений можно запретить Windows собирать эту историю как таковую. К сожалению, разработчики Windows не предусмотрели возможность такого отключения через интерфейс системы, и нам снова придётся лезть в реестр.
Щёлкнув правой кнопкой мыши по разделу HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server Client, выберите пункт Разрешения.
В открывшемся окне нажмите на кнопку Дополнительно и отключите наследование разрешений от родительских объектов. После этого надо выставить запреты на любые действия с этой веткой для всех пользователей. Это помешает операционной системе записать информацию о подключениях в реестр.
Отключение кэширования изображений
Во встроенном RDP-клиенте Windows есть функция кэширования изображений. Клиент RDP сохраняет редко изменяющиеся куски удалённого рабочего стола в виде растровых изображений. Это уменьшает количество данных, передающихся по сети.
Кэш находится в папке %LOCALAPPDATA%MicrosoftTerminal Server ClientCache и представляет из себя файлы с расширениями bmc и bin. В них хранятся растровые изображения размером 64×64 пикселя. При помощи несложных скриптов из этих изображений можно сложить часть удалённого рабочего стола.
Для отключения кэширования изображений нужно открыть настройки RDP-клиента, нажав Показать параметры. На вкладке Взаимодействие нужно найти пункт Постоянное кэширование точечных рисунков и снять галочку.
После всех этих манипуляций подключения к удалённому рабочему столу в Windows станут чуть приватнее.
RDP-клиент в Windows ( команда: «mstsc.exe») при каждом успешном соединении с удаленным компьютером сохраняет в системе его ip-адрес (имя), а также имя пользователя, под которым был выполнен вход. В дальнейшем эти данные используется RDP-клиентом, который предлагает пользователю выбрать одно из подключений, которым он уже пользовался ранее, и подставляет используемый для входа логин пользователя.
Это удобно для пользователя, однако небезопасно, особенно когда rdp-соединение инициируется с общедоступного компьютера.
Как удалить историю RDP-соединений в Windows:
Очистить список истории rdp-подключений обычными средствами Windows не получится, придется вносить изменения в системный реестр.
1. Откройте редактор реестра (команда: «regedit.exe») и перейдите в ветку
HKEY_CURRENT_USERSoftwareMicrosoftTerminal ServerClient
2. Нас интересуют два раздела: Default (хранит историю о 10 последних rdp-подключениях) и Servers (содержит список всех rdp-серверов и имен пользователей используемых ранее для входа).
3. Открываем раздел Default. Он содержится список 10 терминальных серверов, которые использовались последними (MRU – Most Recently Used). Имя (ip-адрес) терминального сервера хранится в значении ключа MRU*. Чтобы очистить историю последних rdp-соединений, выделите все ключи с именами MRU0-MRU9, щелкните правой кнопкой мыши и выберите пункт Delete.
4. Перейдем в раздел Servers. В нем содержится список всех RDC (remote desktop client) соединений, которые когда либо устанавливались с данного компьютера. Если развернуть ветку с именем (ip-адресом) любого сервера, то в ключе UsernameHint (подсказка имени пользователя) можно увидеть имя пользователя, под которым осуществлялось rdp-соединение.
5. Чтобы очистить историю всех rdp-подключений и сохраненных имен пользователей, необходимо очистить содержимое ветки Servers.
6. Помимо указанных веток в реестре, необходимо удалить дефолтное rdp-соединение (содержит информацию о самом последнем rdp-подключении), хранящееся в файле Default.rdp. Сам файл является скрытым и находится в каталоге Documents (Мои документы).
Данный метод протестирован и работает на всех версиях операционных систем windows начиная с 7 и до 10, а так же, на серверных системах с 2003 по 2016. В том случае если необходимо совсем отключить историю rdp, можно ограничить права системе на запись в данную ветку реестра (если вы не специалист, рекомендуем Вам этого не делать).
RDP клиент в Windows (mstsc.exe) при каждом успешном соединении с удаленным компьютером сохраняет в системе его имя (или ip адрес) и имя пользователя, под которым был выполнен вход. При следующем запуске клиент RDP предлагает пользователю выбрать одно из подключений, которыми он уже пользовался ранее. Пользователь может выбрать из списка имя удаленного rdp сервера, и клиент автоматически подставляет используемое ранее для входа имя пользователя.
Это удобно с точки зрения конечного пользователя, однако несекьюрно с точки зрения безопасности, особенно когда rdp соединение инициируется с общедоступного или недоверенного компьютера.
Информация о терминальных сессиях хранится индивидуально для каждого пользователя компьютера в его профиле, т.е. пользователь (подразумевается рядовой пользователь, а не администратор) не сможет просмотреть историю подключений другого пользователя.
В этой статье мы покажем, где в Windows хранится история подключений к удаленным рабочим столам и сохраненные пароли, и каким образом можно эту историю очистить.Содержание:
- Удаление журнала RDP подключений из реестра системы
- Очистка истории (логов) RDP подключений с помощью скрипта
- Удаление сохраненных RDP паролей
Информация о всех RDP подключениях хранится в реестре каждого пользователя. Удалить компьютер(ы) из списка истории rdp подключений штатными средствами Windows не получится, придется вручную удалять ключи в системном реестре.
- Откройте редактор реестра regedit.exe и перейдите в ветку HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server Client
- Нас интересуют две подветки: Default (хранит историю о 10 последних rdp подключениях) и Servers (содержит список всех rdp серверов и имен пользователей, используемых ранее для входа)
- Развернем ветку реестра HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault, в которой содержится список 10 адресов или имен удаленных компьютеров, которые использовались последними (MRU – Most Recently Used). Имя (ip адрес) терминального сервера хранится в значении ключа MRU*. Чтобы очистить историю последних rdp-соединений, выделите все ключи с именами MRU0-MRU9, щелкните правой клавишей и выберите пункт Delete.
- Развернем далее ветку HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers. В ней содержится список всех RDC (remote desktop client) соединений, которые когда либо устанавливались с данного компьютера. Если развернуть ветку с именем (ip адресом) любого сервера, то в ключе UsernameHint (подсказка имени пользователя) можно увидеть имя пользователя, под которым осуществлялось rdp соединение.
- Чтобы очистить историю всех rdp-подключений и сохраненных имен пользователей необходимо очистить содержимое ветки реестра Servers. Т.к. выделить все ветки не получится, проще всего удалить целиком Servers ветку, а затем пересоздать ее вручную.
- Помимо указанных ключей реестра, необходимо удалить файл дефолтного rdp подключения Default.rdp (содержит информацию о самом последнем rdp подключении. Файл является скрытым и находится в каталоге Documents (Документы).
Примечание. Описанная методика очистки истории терминальных rdp подключений работает как на всех версиях Windows XP, Vista, Windows 7, Windows 8 (как включить rdp в Windows и Windows 10, так и серверных платформах Windows Server 2003/2008/2012/2016.
Очистка истории (логов) RDP подключений с помощью скрипта
Выше мы разобрали методику «ручной» очистки истории соединений. Однако делать это вручную (особенно на нескольких компьютерах) – занятие достаточно долгое. Поэтому мы предлагаем небольшой скрипт (bat-файл), который позволяет автоматически очищать историю подключений к удаленным рабочим столам.
Для автоматизации очистки истории rdp, данный скрипт можно поместить в автозагрузку, либо распространить его на компьютеры пользователей с помощью групповой политики.
@echo off reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault" /va /f reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" /f reg add "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" cd %userprofile%documents attrib Default.rdp -s -h del Default.rdp
Последовательно разберем все действия скрипта:
- Отключаем вывод информации в консоль
- Удаляем все значения в ветке HKCUSoftwareMicrosoftTerminal Server ClientDefault (очищаем список последних rdp соединений)
- Удаляем все содержимое ветки HKCUSoftwareMicrosoftTerminal Server ClientServers (очистка истории rdp подключений и сохраненных имен пользователей)
- Пересоздаем удаленную ранее ветку
- Переходим в каталог с файлом Default.rdp. Отметим, что в данном случае путь к папке «Документы» будет отличаться в зависимости от версии и языка Windows. В данном примере указан путь для Windows 7 En, для XP RUS – он будет выглядеть cd %userprofile%”Мои документы”, для XP ENG — cd %userprofile%”My Documents” и т.д.
- Меняем атрибуты файла Default.rdp — по умолчанию он является системным и скрытым (как отобразить скрытые файлы в Windows)
- Удаляем файл Default.rdp
Скачать готовый скрипт можно тут: CleanRDPHistory.bat
Кроме того, очистить историю подключений RDP можно с помощью следующего PowerShell скрипта:
Примечание. Кстати, функция очистка логов RDC встроена во многие «чистильщики» системы и реестра, такие как, CCCleaner и т.д.
Get-ChildItem "HKCU:SoftwareMicrosoftTerminal Server Client" -Recurse | Remove-ItemProperty -Name UsernameHint -Ea 0
Remove-Item -Path 'HKCU:SoftwareMicrosoftTerminal Server Clientservers' -Recurse 2>&1 | Out-Null
Remove-ItemProperty -Path 'HKCU:SoftwareMicrosoftTerminal Server ClientDefault' 'MR*' 2>&1 | Out-Null
$docsfoldes = [environment]::getfolderpath("mydocuments") + 'Default.rdp'
remove-item $docsfoldes -Force 2>&1 | Out-Null
В том случае, если в Windows необходимо полностью заблокировать ведение истории подключений удаленного рабочего стола, можно попробовать запретить системе запись в данную ветку реестра (но, стоит понимать, что это уже unsupported configuration…).
Удаление сохраненных RDP паролей
В том случае, если при установке удалённого RDP подключения, перед вводом пароля пользователь поставил галку Remember Me / Запомнить меня, то имя пользователя и пароль будут сохранены в системном менеджере паролей системы (Credential Manager). При следующем подключении к этому же компьютеру, RDP клиент автоматически использует сохранённый ранее пароль для авторизации на удаленном компьютере.
Удалить данный пароль можно прямо из окна клиента mstsc.exe. Выберите в списке подключений тоже самое подключение, и нажмите на кнопку Delete. Далее подтвердите удаление сохраненного пароля.
Либо можно удалить сохраненный пароль непосредственно из менеджера паролей Windows. Откройте в панель управления и перейдите в раздел Control PanelUser AccountsCredential Manager. Выберите Manage Windows Credentials и в списке сохранённых паролей найдите имя компьютера (в формате TERMSRV/192.168.1.100). Разверните найденный элемент и нажмите на кнопку Remove.
В доменной среде запретить сохранение паролей для RDP подключений можно с помощью политики Network access: Do not allow storage of passwords and credentials for network authentication
Автор публикации
0
Комментарии: 4Публикации: 53Регистрация: 19-10-2019
- Remove From My Forums
-
Вопрос
-
I’ve been referred to this site, by asking a question here: http://answers.microsoft.com/en-us/windows/forum/windows_10-other_settings/windows-10-remote-desktop-cache/3d58eb63-a0b0-4cbb-ab43-e41c0902f727?tm=1440936388588&auth=1
So, basically: how can I delete the cache of remote desktop? This can take potentially up to 500MB disk, but there’s no option to clear it? thanks in advance!
Ответы
-
On Mon, 31 Aug 2015 19:31:54 +0000, GregsterHouse wrote:
So, basically: how can I delete the cache of remote desktop? This can take potentially up to 500MB disk, but there’s no option to clear it? thanks in advance!
Simply delete the contents of
C:Users<username>AppDataLocalMicrosoftTerminal Server ClientCache.You can also disable the cache:
1. Run mstsc.exe
2. Show Options
3. On the Experience tab, clear the Persistent bitmap caching check box.
4. Save the settings.Depending on the connection this may significantly impact performance.
Frankly, in this day and age of cheap storage I’m surprised that someone
would be overly concerned about a 500 MB cache.
Paul Adare — FIM CM MVP
-
Предложено в качестве ответа
4 сентября 2015 г. 9:06
-
Помечено в качестве ответа
Kate LiMicrosoft employee
10 сентября 2015 г. 1:09
-
Предложено в качестве ответа
The built-in Windows Remote Desktop Connection (RDP) client (mstsc.exe
) saves the remote computer name (or IP address) and the username that is used to login after each successful connection to the remote computer. On the next start, the RDP client offers the user to select one of the connections that was used previously. The user can select the name of the RDS/RDP host from the list, and the client automatically fills the username used earlier for login.
This is convenient from the end-user perspective, but unsafe from the security point of view. Especially when you connect to your RDP server from a public or untrusted computer.
Information about all RDP (terminal) sessions is stored individually in the registry hive of each user, i.e. a non-admin won’t be able to view the RDP connection history of another user.
In this article we will show where Windows stores the history and saved credentials of Remote Desktop connections, how to remove entries from the mstsc window, and clear RDP logs.
Contents:
- How to Remove RDP Connection Cache from the Registry?
- Script to Clear RDP Connection History
- How to Prevent Windows from Saving RDP Connection History?
- How to Clear Remote Desktop Bitmap Cache?
- Clearing Saved RDP Credentials
- Removing RDP-Related Event Logs on a Remote Host
How to Remove RDP Connection Cache from the Registry?
Information about all RDP connections is stored in the registry of each user. It’s impossible to remove a computer (or computers) from the list of RDP connection history using built-in Windows tools. You will have to manually clear some registry keys.
- Run the Registry Editor (
regedit.exe
) and browse to the registry key HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server Client; - You need two registry keys in this section: Default (stores the history of the last 10 RDP connections) and Servers (contains the list of all RDP servers and usernames used previously to login);
- Expand the registry key HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault which contains the list of 10 IP addresses or DNS names of remote computers that have been used recently (MRU – Most Recently Used). The name (or the IP address) of the remote desktop server is stored in the value of the MRU*. parameter. To clear the history of the most recent RDP connections, select all parameters with the names of MRU0-MRU9, right-click and select Delete;
- Now expand the key HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers. It contains the list of all RDP connections that have ever been established by this user. Expand the reg key with the name (or ip address) of any host. Pay attention to the value of the UsernameHint parameter. It shows the username used to connect to the RDP/RDS host. This username will be used to connect to the RDP host automatically. In addition, the CertHash variable contains the RDP server SSL certificate thumbprint (see the article “Configuring trusted TLS/SSL certificates for RDP”);
- In order to clear the history of all RDP connections and saved usernames, you must clean the contents of Servers registry key. Since it’s impossible to select all nested registry keys at once, it’s easier to delete the entire Servers key and then recreate it manually;
- Next you need to delete the default RDP connection file (which contains information about the latest rdp session) – Default.rdp (this file is a hidden file located in Documents directory).
- Windows also saves the recent Remote Desktop connections in Jump Lists. If you type
mstsc
in the Windows 10 search box, the previously used RDP connections will appear in the list. You can completely disable Windows 10 recent file and location in Jump list with the registry dword parameter Start_TrackDocs in the reg keyHKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced
(set it to 0), or you can clear the Resent Items lists by deleting files in the directory%AppData%MicrosoftWindowsRecentAutomaticDestinations
.
Note. The described method for clearing the connection history of Remote Desktop works on all Windows desktop versions (from Windows XP to Windows 10) and for Windows Server.
Script to Clear RDP Connection History
Above we have showed how to clear the history of RDP connection in Windows manually. However, doing it manually (especially on multiple computers) is time consuming. Therefore, we offer a small script (BAT file) that allows to automatically clearing the RDP history.
To automate the RDP history cleanup, you can place this script to Windows Startup or run it on user computers via a GPO logoff script.
@echo off
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault" /va /f
reg delete "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers" /f
reg add "HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientServers"
attrib -s -h %userprofile%documentsDefault.rdp
del %userprofile%documentsDefault.rdp
del /f /s /q /a %AppData%MicrosoftWindowsRecentAutomaticDestinations
Let’s consider all the actions of the script:
- Disable the output of the information to the console;
- Delete all the parameters in the registry key HKCUSoftwareMicrosoftTerminal Server ClientDefault (clear the list of recent RDP connections);
- Delete the entire reg key HKCUSoftwareMicrosoftTerminal Server ClientServers (clears the list of all RDP connection and saved user names);
- Recreate the previously deleted registry key;
- Change the Default.rdp file attributes in the profile directory of the current user (by default it is Hidden and System);
- Delete the Default.rdp file;
- Clear Remote Desktop Connection entries from jump list recent items.
In addition, you can clear the history of RDP connections using the following PowerShell script:
Get-ChildItem "HKCU:SoftwareMicrosoftTerminal Server Client" -Recurse | Remove-ItemProperty -Name UsernameHint -Ea 0
Remove-Item -Path 'HKCU:SoftwareMicrosoftTerminal Server Clientservers' -Recurse 2>&1 | Out-Null
Remove-ItemProperty -Path 'HKCU:SoftwareMicrosoftTerminal Server ClientDefault' 'MR*' 2>&1 | Out-Null
$docs = [environment]::getfolderpath("mydocuments") + 'Default.rdp'
remove-item $docs -Force 2>&1 | Out-Null
Note. By the way, the feature of the RDP history cleanup is built into many system and registry “cleaners”, such as, CCleaner, etc.
How to Prevent Windows from Saving RDP Connection History?
If you do NOT want Windows to save the RDP connection history, you must deny writing to the registry key HKCUSoftwareMicrosoftTerminal Server Client
for all user accounts. First, disable permission inheritance on the specified reg key (Permissions -> Advanced -> Disable inheritance). Then change the registry key ACL by ticking the Deny option for users (but you should understand that this is an unsupported configuration).
As a result, mstsc.exe simply cannot write RDP connection info to the registry.
How to Clear Remote Desktop Bitmap Cache?
The Remote Desktop Connection client has image persistent bitmap caching feature. The RDP client saves rarely changing fragments of the remote screen as a raster image cache. Thanks to this, the mstsc.exe client loads parts of the screen that have not changed since the last rendering from the local drive cache. This RDP caching feature reduces the amount of data transmitted over the network.
RDP cache is two types of files in a directory %LOCALAPPDATA%MicrosoftTerminal Server ClientCache
:
- *.bmc
- bin
These files store raw RDP screen bitmaps in the form of 64×64 pixel tiles. Using simple PowerShell or Python scripts (easily searched for by the RDP Cached Bitmap Extractor
query), you can get PNG files with pieces of the remote desktop screen and use them to get sensitive information. The size of the tiles is small, but sufficient to provide useful information to a person studying the RDP cache.
You can prevent the RDP client from storing the remote desktop screen image cache by disabling the Persistent bitmap caching option on the Advanced tab.
Sometimes when using the RDP cache, it may be damaged:
Bitmap Disk Cache Failure. Your disk is full or the cache directory is missing or corrupted. Some bitmaps may not appear.
In this case, you need to clear the RDP cache directory or disable the Bitmap Caching option.
Clearing Saved RDP Credentials
If when establishing a new remote RDP connection, before entering the password, the user checks an option Remember Me, then the username and password will be saved in the Windows Credential Manager. The next time you connect to the same computer, the RDP client automatically uses the previously saved password for authentication on the remote host.
You can remove the saved RDP password directly from the client’s mstsc.exe window. Select the same connection from the list of connections, and click on the Delete button. Then confirm deletion of the saved credentials.
Alternatively, you can delete the RDP saved password directly from the Windows Credential Manager. Go to the Control PanelUser AccountsCredential Manager section. Select Manage Windows Credentials and in the list of saved passwords find the computer name (in the following format TERMSRV/192.168.1.100
). Expand the found item and click the Remove button.
In an Active Directory domain environment, you can disable saving passwords for RDP connections by using the special GPO – Network access: Do not allow storage of passwords and credentials for network authentication (see an article).
Removing RDP-Related Event Logs on a Remote Host
Connection logs are also saved on the RDP/RDS host side. You can find information about RDP connection history in Event Viewer logs:
- Security;
- Applications and Services Logs -> Microsoft -> Windows -> TerminalServices-RemoteConnectionManager -> Operational;
- TerminalServices-LocalSessionManager -> Admin.
Read more about the analysis of RDP connection logs in the article.
You can clear the Event Logs on an RDP server using wevtutil or PowerShell.