
Utilitário de Redirecionamento de Porta TCP
O PortBender é um utilitário de redirecionamento de porta TCP que permite que um operador de red team redirecione o tráfego de entrada destinado a uma porta TCP (por exemplo, 445/TCP) para outra porta TCP (por exemplo, 8445/TCP). O PortBender inclui um script de agressor que os operadores podem usar para integrar a ferramenta com o Cobalt Strike. No entanto, como a ferramenta é implementada como uma DLL reflexiva, ela pode ser integrada a qualquer framework C2 compatível com o carregamento de módulos através de uma interface "ReflectiveLoader" [1]. A ferramenta também permite que os operadores simulem um mecanismo de backdoor/persistência utilizado na capacidade "PortServ.sys" do ator de ameaça Duqu 2.0.
O PortBender utiliza a biblioteca WinDivert para interceptar o tráfego de rede usando a Plataforma de Filtragem do Windows (WFP). O design do PortBender é fortemente influenciado pelo utilitário DivertTCPConn, que também utiliza a biblioteca WinDivert [1].
O PortBender possui dois modos de operação. O primeiro é o "modo redirecionador" e o segundo é o "modo backdoor". No "modo redirecionador", qualquer conexão com uma porta de destino (por exemplo, 445/TCP) é redirecionada para uma porta alternativa (por exemplo, 8445/TCP). No "modo backdoor", redirecionamos o tráfego apenas se um invasor enviar um pacote TCP especialmente formatado para uma porta de destino (por exemplo, 443/TCP). O PortBender então adiciona esse endereço IP do cliente a uma lista de clientes backdoor e redireciona todo o tráfego para essa porta de destino para uma porta alternativa (por exemplo, 3389/TCP). Um operador pode usar esse mecanismo para emular a técnica de persistência utilizada pelo ator de ameaça Duqu 2.0 ao comprometer a Kaspersky.
Para executar o PortBender, primeiro devemos importar o script "PortBender.cna" para o Cobalt Strike e fazer upload do binário WinDivert32.sys ou WinDivert64.sys incluído no "PortBender.zip" para o host de destino, dependendo da arquitetura do sistema operacional. O menu de ajuda do PortBender com o exemplo de uso é mostrado abaixo:
beacon> help PortBender
Redirect Usage: PortBender redirect FakeDstPort RedirectedPort
Backdoor Usage: PortBender backdoor FakeDstPort RedirectedPort Password
Examples:
PortBender redirect 445 8445
PortBender backdoor 443 3389 praetorian.antihacker
Por exemplo, podemos desejar executar o PortBender no modo redirecionador para realizar um ataque de relay SMB a partir de um sistema Windows comprometido. Para facilitar isso, podemos instruir o PortBender a redirecionar todo o tráfego para 445/TCP para uma porta alternativa 8445/TCP que esteja executando um serviço SMB do atacante. Neste exemplo, executamos o comando "PortBender redirect 445 8445" para realizar isso. A saída esperada é mostrada abaixo:
Neste exemplo, queremos implantar o mecanismo de persistência oculta em um servidor web IIS comprometido e exposto à Internet. Aqui executamos o comando "PortBender backdoor 443 3389 praetorian.antihacker" para instruir o serviço backdoor a redirecionar quaisquer conexões para 443/TCP para 3389/TCP no host comprometido, a partir de qualquer endereço IP que forneça a palavra-chave "praetorian.antihacker" especificada. A saída esperada é mostrada abaixo: