
Uma configuração de transferência de arquivos HTTP ofuscada de ida e volta construída para burlar detecções de IDS.
Skyhook é um utilitário orientado a REST usado para contrabandear arquivos para dentro e para fora de redes defendidas por implementações de IDS. Ele vem com um cliente web pré-empacotado que usa uma combinação de React, JavaScript puro e WebAssembly para gerenciar transferências de arquivos.
Nota: Consulte a documentação do usuário para uma discussão mais aprofundada sobre o Skyhook e como ele funciona.
O servidor de transferência de arquivos do Skyhook ofusca perfeitamente o conteúdo dos arquivos com uma série de algoritmos de ofuscação configurados pelo usuário antes de escrever o conteúdo nos corpos de resposta. Clientes, que são configurados com os mesmos algoritmos de ofuscação, desofuscam o conteúdo do arquivo antes de salvá-lo no disco. Uma técnica de streaming de arquivos é usada para gerenciar as transações HTTP de forma fragmentada, facilitando assim transferências de arquivos grandes.
flowchart
subgraph sg-cloudfront[Cloudfront CDN]
cf-listener(443/tls)
end
subgraph sg-vps[VPS]
subgraph sg-skyhook[Skyhook Servers]
admin-listener(Admin Server<br>45000/tls)
transfer-listener(Transfer Server<br>45001/tls)
end
config-file(Config File<br>/var/skyroot/config.yml)
admin-listener -..->|Reads &<br>Manages| config-file
webroot(Webroot<br>/var/skyhook/webroot)
transfer-listener -..->|Serves From &<br>Writes Cleartext<br>Files To| webroot
end
op-browser(Operator<br>Web Browser) -->|Administration<br>Traffic| admin-listener
op-browser <-->|Obfuscated<br>Data| transfer-listener
subgraph sg-corp[Corporate Environment]
subgraph sg-compromised[Beachhead Host]
comp-browser(Web Browser) -->|Reads &<br>Writes| cleartext-file(Cleartext Files)
end
end
comp-browser <-->|Obfuscated<br>Data| cf-listener <-->|Obfuscated<br>Data| transfer-listener
Por exemplo, aqui está uma configuração de ofuscação funcional:

E aqui está a interface de transferência de arquivos. Clicar em "Download" resulta na recuperação do arquivo em partes que são criptografadas com a cadeia de métodos de ofuscação configurada acima.
O JavaScript desofusca o arquivo antes de solicitar ao usuário que o salve no disco.

Abaixo está uma solicitação decorrente de um download sendo inspecionada com o Burp. Elementos-chave da transação são criptografados para evitar detecção.
