Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
rpcfirewall — Firewall RPC do Windows que audita, detecta e bloqueia chamadas de procedimento remoto maliciosas para impedir movimento lateral, reconhecimento e exploração de ataques baseados em RPC como DCSync e ZeroLogon. | Kitploit
Ferramentas/GitHubGitHub/zeronetworks/rpcfirewall
Ferramentas DefensivasReconhecimentoExploraçãoEvasão de IDS/IPSMovimento LateralSegurança de RedeTestes de PenetraçãoResposta a Incidentes
GitHubzeronetworks/rpcfirewall

rpcfirewall

Firewall RPC do Windows que audita, detecta e bloqueia chamadas de procedimento remoto maliciosas para impedir movimento lateral, reconhecimento e exploração de ataques baseados em RPC como DCSync e ZeroLogon.

Ver Repositório
54780há 1 anoRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

GitHub release (latest SemVer) GitHub all releases

Preciso de Mais Informações

Confira nossa postagem no blog RPC Firewall ou nossa palestra no BlackHat para entender melhor sobre RPC, ataques RPC e a solução: RPC Firewall.

Junte-se ao nosso espaço de trabalho da comunidade Slack |Zero| Labs para qualquer dúvida, problema, ou apenas para se manifestar.

Adoraríamos ouvir de você também por e-mail (se você é desse tipo). Entre em contato conosco pelo [email protected]

Primeiros Passos

O tutorial a seguir mostra a instalação e configuração básica do RPC Firewall, além de uma demonstração de como ele protege contra vários ataques baseados em RPC.

RPC Firewall 2.0 Tutorial

Por que devo me importar?

RPC é o mecanismo subjacente usado para inúmeras técnicas de movimentação lateral, reconhecimento, ataques de retransmissão (relay), ou simplesmente para explorar serviços RPC vulneráveis.

Ataque DCSync? via RPC. DCOM remoto? via RPC. WMIC? via RPC. SharpHound? via RPC. PetitPotam? via RPC. PsExec? via RPC. ZeroLogon? via RPC... bem, você entendeu a ideia :)

Terminologia?

Ao longo deste documento, usaremos os seguintes termos:

  • RPC Firewall: Refere-se à DLL RpcFirewall.dll, que é carregada em vários servidores RPC para protegê-los.
  • RPC Filters: Refere-se ao mecanismo nativo de filtragem RPC do Windows.
  • RPCFW Configuration: Refere-se ao arquivo RpcFw.conf, usado para controlar como o RPC Firewall e os RPC Filters se comportam.
  • RPCFW Manager: A interface de linha de comando, que dá aos usuários acesso tanto ao RPC Firewall quanto aos RPC Filters

Para que serve?

Pesquisa

Pode ser usado para auditar todas as chamadas RPC remotas. Ao executar qualquer ferramenta de ataque remoto, você verá quais UUIDs RPC e Opnums foram chamados remotamente.

Veja um exemplo de configuração aqui.

Detecção de Ataques RPC Remotos

Quando a RPCFW Configuration está configurada para auditoria, eventos são gravados no Log de Eventos do Windows. Eventos RPC Filter são gravados no log de segurança, com ID de evento 5712. Logs do RPC Firewall são gravados em Application/RPCFW.

Os usuários podem encaminhar esses logs para seu SIEM e usá-los para criar linhas de base de tráfego RPC remoto para vários servidores. Quando uma chamada RPC anormal é auditada, use-a para disparar um alerta para sua equipe SOC.

Integramos várias regras Sigma que podem ser usadas para detectar atividades e ataques RPC incomuns.

Prevenção de Ataques RPC Remotos

A RPCFW Configuration pode ser configurada para bloquear e auditar apenas chamadas RPC potencialmente maliciosas. Todas as outras chamadas RPC não são auditadas para reduzir ruído e melhorar o desempenho.

Quando uma chamada RPC potencialmente maliciosa é detectada, ela é bloqueada e auditada. Isso pode ser usado para alertar sua equipe SOC, mantendo seus servidores protegidos.

Para complementar a proteção, você pode usar os recursos de Filtragem RPC, que também são suportados via RpcFwManager.exe.

Um exemplo dessa configuração pode ser encontrado aqui.

Quais são os Componentes do RPC Firewall?

É composto por 3 componentes:

  1. RpcFwManager.exe - Atua como uma ferramenta de gerenciamento de linha de comando independente para implantação de RPC Filters e Firewall. Também atua como o serviço instalado para implantar o RPC Firewall.
  2. RpcFirewall.dll - DLL injetada que realiza a auditoria e filtragem de chamadas RPC.
  3. RpcMessages.dll - Uma biblioteca comum para compartilhar funções e lógica que grava dados no Visualizador de Eventos do Windows.

Usando RPC Firewall ou RPC Filters?

Embora existam prós e contras para usar cada método, há alguns benefícios importantes em usar o RPC Firewall que requerem atenção especial. São eles:

  1. Granularidade: O RPC Firewall é aplicado a cada chamada RPC e pode ser usado para criar controles mais granulares para funções RPC específicas.
  2. Identificação de Endereço de Origem: O RPC Firewall é melhor para determinar o endereço de origem do chamador. RPC Filters não consegue identificar o endereço de origem de chamadas feitas via pipes nomeados (SMB), o que significa que as regras de filtragem RPC falharão para chamadas RPC feitas via pipes nomeados!!!
  3. Bugs!: O RPC Filters sofre de vários bugs que a Microsoft não tem entusiasmo em corrigir. Alguns exemplos são: intervalos de IP não funcionam e você não pode aplicar um filtro "pega-tudo", pois isso pode danificar vários serviços de Controlador de Domínio, como o NetLogon.

Por outro lado, RPC Filters são ótimos para permitir ou negar em massa UUIDs inteiros, pois fazem isso sem problemas.

Como usar?

Qual é o status?

Antes de executar qualquer comando, é recomendável verificar o status da implantação. Isso é feito emitindo o comando '/status':

root@kitploit:~
RpcFwManager.exe /status

Isso mostrará o status tanto do RPC Firewall quanto dos RPC Filters. Isso exibirá informações detalhadas sobre o status da instalação e também o status de execução da implantação.

Os sufixos 'fw' / 'flt'

Quase todos os comandos podem ser sufixados com fw ou flt no final. Isso informa ao RPCFW Manager se o comando é aplicado ao RPC Firewall ('fw'), aos RPC Filters ('flt') ou a ambos quando nenhum sufixo é usado.

Instalando / Desinstalando

Realize a instalação do recurso relevante (RPC Filters / RPC Firewall / ambos).

  • Instalação do RPC Firewall: Configura o log de eventos, coloca as DLLs relevantes na pasta %SystemRoot%\System32 e configura o log de aplicativo RPCFW no Visualizador de Eventos. Também instala o serviço "RPC Firewall", que será usado para persistência.
  • Instalação do RPC Filters: Habilita a auditoria de segurança de eventos RPC. Eles podem ser encontrados no log de Segurança, com ID de evento 5712.

Certifique-se de que o visualizador de eventos esteja fechado durante a instalação/desinstalação. Além disso, é uma boa prática parar e desinstalar antes da instalação, para garantir que não haja versões anteriores instaladas.

root@kitploit:~
RpcFwManager.exe /stop
RpcFwManager.exe /uninstall
RpcFwManager.exe /install

Desinstalar faz o oposto. Também aqui é uma boa prática garantir que o serviço esteja parado antes da desinstalação.

root@kitploit:~
RpcFwManager.exe /stop
RpcFwManager.exe /uninstall

Iniciando / Parando

RPC Filters, por sua natureza, são aplicados em todo o sistema, a qualquer servidor RPC. A aplicação desses filtros também é persistente entre reinicializações. Qualquer processo novo ou antigo será protegido pelos RPC Filters, de acordo com a RPCFW Configuration.

RPC Firewall é injetado e protege qualquer processo de servidor RPC que esteja ouvindo chamadas RPC remotas. Isso é feito injetando o RPC Firewall em processos que carregam a RPCRT4.DLL (o Runtime RPC). Uma vez carregado, o RPC Firewall detectará se o servidor RPC está ouvindo chamadas RPC remotas. Se não estiver, ele se descarrega. Se o processo for um servidor RPC válido, o rpcFirewall começa a auditar e monitorar chamadas RPC recebidas, de acordo com a RPCFW Configuration.

O método recomendado para proteger serviços RPC é usando o comando '/start'. Isso inicia o serviço RPC Firewall (para 'fw' ou sem sufixo) e cria RPC Filters (para 'flt' ou sem sufixo).

root@kitploit:~
RpcFwManager.exe /start

Também é possível usar o RPC Firewall ad-hoc, para proteger processos específicos. Isso não iniciará o serviço RPC Firewall e não persistirá entre reinicializações.

Para proteger um único processo pelo ID do Processo (PID):

root@kitploit:~
RpcFwManager.exe /start pid <pid>

Para proteger um único processo pelo nome:

root@kitploit:~
RpcFwManager.exe /start process <process name>

Para interromper a proteção, basta emitir o comando '/stop' com o sufixo apropriado (não é possível interromper a proteção para um processo específico).

root@kitploit:~
RpcFwManager.exe /stop

De acordo com o sufixo usado ('fw' ou 'flt' ou nenhum), isso interromperá o serviço RPC Firewall e descarregará a DLL do RPC Firewall de todos os processos. Para RPC Filters, ele excluirá todos os filtros gerados pelo RPCFW Manager.

Persistência

Uma vez iniciado, o RPC Firewall persistirá entre reinicializações. RPC Filters também são persistentes.

Configuração

O RPCFW Manager procura um arquivo RpcFw.conf no mesmo diretório do executável. Este arquivo usa as seguintes opções de configuração:

Importante: Cada linha de configuração deve ser prefixada com 'fw:' ou 'flt:' para indicar se a linha é aplicada ao RPC Firewall ou ao RPC Filter.

Vendo Mais Coisas

Para ver mais "coisas" relacionadas a RPC, existe um comando show. Por enquanto, ele mostra apenas processos protegidos, que não podem ser protegidos com o módulo RPC firewall.

root@kitploit:~
RpcFwManager.exe /show

A ordem da configuração é importante, pois a primeira correspondência determina o resultado da chamada RPC.

Por exemplo, o seguinte trecho de configuração protegerá um DC de um DCSync usando RPC Firewall. Isso é feito habilitando o opnum 3 DRSGetNCChanges "perigoso" do UUID MS-DRSR apenas de outros controladores de domínio.

root@kitploit:~
fw:uuid:e3514235-4b06-11d1-ab04-00c04fc2dcd2 addr:<dc_addr1> opnum:3 action:allow
fw:uuid:e3514235-4b06-11d1-ab04-00c04fc2dcd2 addr:<dc_addr2> opnum:3 action:allow
fw:uuid:e3514235-4b06-11d1-ab04-00c04fc2dcd2 opnum:3 action:block

Sempre que a configuração mudar, você precisa notificar o rpcFirewall.dll através do comando update:

root@kitploit:~
RpcFwManager.exe /update

Visualizando Logs

Para RPC Firewall, abra o Visualizador de Eventos -> Logs de Aplicativos e Serviços -> RPCFW. IDs de Evento 1 e 2 referem-se a eventos 'proteger' e 'desproteger'. O Evento 3 audita as chamadas RPC reais. Além disso, adicione a coluna Palavras-chave. Essa coluna conterá Sucesso/Falha de Auditoria, indicando se a chamada RPC foi bloqueada ou não.

Para RPC Filters, abra o Visualizador de Eventos -> Segurança -> RPCFW. Filtre para o ID de evento 5712.

Posso Contribuir?

Sim! Não seja tímido para fazer um pull request.

Quero que o RPC Firewall faça mais coisas!

Nós também queremos! Entre em contato conosco com qualquer pensamento, ideia ou problema que você esteja tendo: [email protected]

Existe uma Licença?

Para mais detalhes, veja LICENSE.

Baixar ferramenta
Nome do ParâmetroExplicaçãoSuportado por ...
opnum:Corresponde a um opnum RPCRPC Firewall
verbose:Pode ser true ou false. Quando true, gera informações de depuração para chamadas RPC específicas (padrão false)RPC Firewall
prot:Corresponde ao protocolo usado a qualquer uma das constantes de sequência de protocoloambos RPC Firewall e Filters
addr:Corresponde a um endereço IP remoto (IPv4 ou IPv6, incluindo CIDR)RPC Firewall e parcialmente pelo RPC Filters, leia mais aqui
uuid:Corresponde a um uuid específicoambos RPC Firewall e Filters
action:Pode ser allow ou block (padrão allow)ambos RPC Firewall e Filters
audit:Pode ser true ou false. Controla se eventos são gravados no log RPCFW (padrão false)ambos RPC Firewall e Filters
sid:Corresponde a um usuário autenticado a um identificador de segurança. Pode ser um usuário ou grupo específico.ambos RPC Firewall e Filters