
Инструмент для создания скрытых ключей реестра.
Просто хороший трюк для персистентности, чтобы запутать расследование DFIR. Использует нативный API NtSetValueKey для создания скрытого (с нулевым символом в конце) ключа реестра. Это работает путем добавления нулевого байта перед именем значения ключа UNICODE_STRING.
Дополнительную информацию об этой технике можно найти в следующем документе: https://github.com/ewhitehats/InvisiblePersistence/blob/master/InvisibleRegValues_Whitepaper.pdf
Инструмент использует следующий путь реестра, в котором создает скрытый ключ Run: (HKCU для пользователя, иначе HKLM)\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Для создания скрытого ключа реестра (Run):
SharpHide.exe action=create keyvalue="C:\Windows\Temp\Bla.exe"
Для создания скрытого ключа реестра (Run) с параметрами:
SharpHide.exe action=create keyvalue="C:\Windows\Temp\Bla.exe" arguments="arg1 arg2"
Удаление скрытого ключа реестра (Run):
SharpHide.exe action=delete
Этот инструмент также работает с execute-assembly из Cobalt Strike.
Автор: Cornelis de Plaa (@Cneelis) / Outflank