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
LibTP_Gadget — Biblioteca Crystal Palace para fazer proxy de chamadas da API Nt via Threadpool. Atualizada para call gadgets. | Kitploit
Ferramentas/GitHubGitHub/saerxcit/libtp_gadget
Evasão de IDS/IPSPós-ExploraçãoRed TeamingGeração de ShellcodeDesenvolvimento de PayloadsAtaque Adversário
GitHubsaerxcit/libtp_gadget

LibTP_Gadget

Biblioteca Crystal Palace para fazer proxy de chamadas da API Nt via Threadpool. Atualizada para call gadgets.

Ver Repositório
233há 9 mesesRevisado 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

LibTP_Gadget

Esta é uma generalização do https://github.com/AlmondOffSec/LibTPLoadLib para fazer proxy de APIs com um número arbitrário (11 no máximo, na verdade, mas suficiente) de argumentos. Fornecido como uma biblioteca compartilhada do Crystal Palace. API tornada compatível com o LibTP do @rasta-mouse para fácil troca usando arquivos spec. Hooks são fornecidos para exibir os recursos mais recentes do Crystal Palace.

AVISO ⚠️ : Este projeto não é utilizável como está. Não estou fornecendo um módulo no qual encontrar um gadget call. Você terá que encontrar o seu. Leia o post do blog para mais informações.

Nota : Devido à capacidade de passar 11 argumentos (7 dos quais serão colocados na pilha), o gadget call deve residir dentro de uma função com um stack frame grande o suficiente. Procure por um add rsp de pelo menos 0x68.

AVISO ⚠️ : Devido ao funcionamento interno desta técnica, não é possível recuperar o valor de retorno da função encapsulada. Encapsular NTAPIs geralmente é mais utilizável, já que o valor de retorno é "apenas" o NTSTATUS. Isso torna difícil saber se a função realmente teve sucesso 🙃.

Como

  1. Encontre um gadget que funcione em um módulo disponível no alvo. Em src/tp_gadget.c, ajuste o nome na chamada LoadLibraryA e na função GetCallGadgetAddress para que ela recupere seu endereço. Ajuste o stub de assembly se necessário (valor de sub rsp, registrador que o gadget chamará).

  2. Compile o projeto: make. A saída é a biblioteca compartilhada do Crystal Palace libtp_gadget.x64.zip.

  3. Compile o COFF de exemplo (que apenas carregará wininet.dll e então alocará localmente e executará o shellcode): make -C example_print. A saída será um arquivo COFF example_print.x64.o.

  4. Crie um arquivo spec do Crystal Palace instruindo o linker a usar nossos hooks no DFR: Use o arquivo spec Simple PIC do Tradecraft Garden e adicione as seguintes linhas entre mergelib "../libtcg.x64.zip" e export:

root@kitploit:~
        mergelib "../libtp_gadget.x64.zip"

        attach "KERNEL32$LoadLibraryA"          "H_LoadLibraryA"
        optout "ProxyNtApi"                     "H_LoadLibraryA"
        attach "NTDLL$NtOpenProcess"            "H_NtOpenProcess"
        attach "NTDLL$NtAllocateVirtualMemory"  "H_NtAllocateVirtualMemory"
        attach "NTDLL$NtWriteVirtualMemory"     "H_NtWriteVirtualMemory"
        attach "NTDLL$NtProtectVirtualMemory"   "H_NtProtectVirtualMemory"
        attach "NTDLL$NtFreeVirtualMemory"      "H_NtFreeVirtualMemory"
        attach "NTDLL$NtClose"                  "H_NtClose"
        attach "NTDLL$NtCreateThreadEx"         "H_NtCreateThreadEx"
        attach "NTDLL$NtOpenThread"             "H_NtOpenThread"
        attach "NTDLL$NtSuspendThread"          "H_NtSuspendThread"
        attach "NTDLL$NtResumeThread"           "H_NtResumeThread"
        attach "NTDLL$NtGetContextThread"       "H_NtGetContextThread"
        attach "NTDLL$NtSetContextThread"       "H_NtSetContextThread"
        attach "NTDLL$NtWaitForSingleObject"    "H_NtWaitForSingleObject"
  1. Vincule tudo usando o Crystal Palace para gerar shellcode PIC: path/to/crystalpalace/link simplepic_modified/loader.spec example_print/example_print.x64.o out.bin.

  2. Execute o shellcode usando qualquer loader.

Créditos

  • Raphael Mudge, Adversary Fan Fiction Writers Guild
  • Chetan Nayak, Dark Vortex
  • Daniel Duggan, Rasta Mouse
Baixar ferramenta