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
Cartero — Framework modular de phishing com CLI para clonar sites, enviar e-mails baseados em modelos e lançar campanhas de phishing via e-mail, SMS, iMessage e LinkedIn. | Kitploit
Ferramentas/GitHubGitHub/mrbrutti/cartero
Ferramentas de PhishingOSINT para Engenharia SocialGeração de PayloadsPhishingEngenharia Social
GitHubmrbrutti/cartero

Cartero

Framework modular de phishing com CLI para clonar sites, enviar e-mails baseados em modelos e lançar campanhas de phishing via e-mail, SMS, iMessage e LinkedIn.

Ver Repositório
4945há 5 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
Site

Mail

Cartero

URL

http://section9labs.github.io/Cartero/

Description

Um framework robusto de Phishing com uma interface CLI completa. O projeto nasceu da necessidade ao longo de anos de trabalhos com ferramentas que simplesmente não faziam o trabalho. Embora existam muitos projetos por aí, não conseguimos encontrar uma solução adequada que nos oferecesse facilidade de uso e personalização.

Cartero é um projeto modular dividido em comandos que executam tarefas independentes (ex.: Mailer, Cloner, Listener, AdminConsole, etc...). Além disso, cada subcomando possui opções de configuração repetíveis para configurar e automatizar o seu trabalho.

Por exemplo, se quiséssemos clonar o gmail.com, bastaria executar os seguintes comandos.```shell ❯❯❯ ./cartero Cloner --url https://gmail.com --path /tmp --webserver gmail_com ❯❯❯ ./cartero Listener --webserver /tmp/gmail_com -p 80 Launching mongodb Puma starting in single mode...

  • Version 2.8.2 (ruby 2.1.1-p76), codename: Sir Edmund Percival Hillary
  • Min threads: 4, max threads: 16
  • Environment: production
  • Listening on tcp://0.0.0.0:80 Use Ctrl-C to stop
root@kitploit:~
Quando tivermos um site no ar, podemos simplesmente usar o comando Mailer para enviar e-mails com modelos aos nossos alvos:```shell
❯❯❯ ./cartero Mailer --data victims.json --server gmail_com --subject "Internal Memo" --htmlbody email_html.html --attachment payload.pdf --from "John Doe <[email protected]>"
Sending [email protected]
Sending [email protected]
Sending [email protected]

Comunidade

Junte-se à nossa Comunidade Slack em https://carteroslack.herokuapp.com/

Instalação

Instalação Automatizada

Usando brew 2.1.5 ruby como biblioteca ruby padrão```shell ❯❯❯ curl -L https://raw.githubusercontent.com/Section9Labs/Cartero/master/data/scripts/setup.sh | bash

root@kitploit:~
Usando a instalação do Ruby 2.1.5 via RVM```shell
❯❯❯ curl -L https://raw.githubusercontent.com/Section9Labs/Cartero/master/data/scripts/setup.sh | bash -s -- -r

Dependências

Ruby```shell

❯❯❯ \curl -sSL https://get.rvm.io | bash -s stable --ruby

root@kitploit:~
##### MongoDB
O Cartero utiliza a biblioteca MongoDB + MongoID para armazenar dados no lado do Listener e do Admin.

No OSX:```shell
❯❯❯ brew install mongodb

No Ubuntu / Kali / Debian```shell ❯❯❯ apt-get install mongodb

root@kitploit:~
No Arch Linux```
❯❯❯ pacman -Syu mongodb

Framework```shell

❯❯❯ git clone https://github.com/section9labs/Cartero ❯❯❯ cd Cartero ❯❯❯ gem install bundle ❯❯❯ bundle install ❯❯❯ cd bin

root@kitploit:~
### Uso
### Comandos
Cartero é uma CLI muito poderosa e fácil de usar.```shell
❯❯❯ ./cartero
Usage: cartero [options]

List of Commands:
    AdminConsole, AdminWeb, Mailer, Cloner, Listener, Servers, Templates

Global options:
        --proxy [HOST:PORT]          Sets TCPSocket Proxy server
    -c, --config [CONFIG_FILE]       Provide a different cartero config file
    -v, --[no-]verbose               Run verbosely
    -p [PORT_1,PORT_2,..,PORT_N],    Global Flag fo Mailer and Webserver ports
        --ports
    -m, --mongodb [HOST:PORT]        Global Flag fo Mailer and Webserver ports
    -d, --debug                      Sets debug flag on/off
        --editor [EDITOR]            Edit Server


Common options:
    -h, --help [COMMAND]             Show this message
        --list-commands              Prints list of commands for bash completion
        --version                    Shows cartero CLI version

Comandos Básicos

Mongo

Este é um simples Wrapper para MongoDB que nos permite iniciar e parar o banco de dados com os comandos correspondentes e no caminho correto ~/.cartero.```shell ❯❯❯ ./cartero Mongo Usage: Cartero Mongo [options] -s, --start Start MongoDB -k, --stop Stop MongoDB -r, --restart Restart MongoDB -b, --bind [HOST:PORT] Set MongoDB bind_ip and port

Common options: -h, --help Show this message --list-options Show list of available options

root@kitploit:~
#### Cloner
Um Cloner de Sites que nos permite baixar e converter um site em uma aplicação Cartero WebServer.
Podemos customizar rápida e facilmente o site para coletar credenciais, servir Payloads ou modificar completamente o site para qualquer número de propósitos.```shell
❯❯❯ ./cartero Cloner
Usage: Cartero Cloner [options]
    -U, --url [URL_PATH]             Full Path of site to clone
    -W, --webserver [SERVER_NAME]    Sets WebServer name to use
    -p, --path [PATH]                Sets path to save webserver
    -P, --payload [PAYLOAD_PATH]     Sets payload path
        --useragent [UA_STRING]      Sets user agent for cloning
        --wget                       Use wget to clone url
        --apache                     Generate Apache Proxy conf

Common options:
    -h, --help                       Show this message
        --list-options               Show list of available options

Por padrão, o comando usa nossa implementação em Ruby para baixar e converter links para renderização, mas também oferecemos suporte a uma opção --wget que utilizará o comando wget do sistema local.

Listener

O listener é responsável por executar o WebServer criado por meio do Cloner ou de um site criado manualmente. Por padrão, apresentamos um site muito simples se nenhum for fornecido.```shell ❯❯❯ ./cartero Listener Usage: Cartero Listener [options] -i, --ip [1.1.1.1] Sets IP interface, default is 0.0.0.0 -p [PORT_1,PORT_2,..,PORT_N], Sets Email Payload Ports to scan --ports -s, --ssl Run over SSL. [this also requires --sslcert and --sslkey] -C, --sslcert [CERT_PATH] Sets Email Payload Ports to scan -K, --sslkey [KEY_PATH] Sets SSL key to use for Listener. -V, --views [VIEWS_FOLDER] Sets SSL Certificate to use for Listener. -P, --public [PUBLIC_FOLDER] Sets a Sinatra public_folder -W [WEBSERVER_FOLDER], Sets the sinatra full path from cloner. --webserver --payload [PAYLOAD] Sets a payload download to serve on /download --customapp [CUSTOM_SINATRA] Sets a custom Sinatra::Base WebApp. Important, WebApp name should be camelized of filename

Common options: -h, --help Show this message --list-options Show list of available options

root@kitploit:~
Os WebServers suportam chaves SSL e hosts virtuais em múltiplos IPs, Hostnames e Portas.

#### Servidores
Para enviar campanhas de e-mail, precisamos configurar servidores de e-mail e este comando permite que o Cartero crie, armazene e liste servidores. Todos os dados são armazenados no diretório de configuração ~/.cartero.```shell
./cartero Servers
Usage: Cartero Servers [options]
    -a, --add [NAME]                 Add Server
    -e, --edit [NAME]                Edit Server
    -d, --delete [NAME]              Edit Server
    -l, --list                       List servers

Configuration options:
    -T, --type [TYPE]                Set the type
    -U, --url [DOMAIN]               Set the Mail or WebMail url/address
    -M, --method [METHOD]            Sets the WebMail Request Method to use [GET|POST]
        --api-access [API_KEY]       Sets the Linkedin API Access Key
        --api-secret [API_SECRET]    Sets the Linkedin API Secret Key
        --oauth-token [OAUTH_TOKEN]  Sets the Linkedin OAuth Token Key
        --oauth-secret [OAUTH_SECRET]
                                     Sets the Linkedin OAuth Secret Key

Common options:
    -h, --help                       Show this message
        --list-options               Show list of available options

Templates

Assim como os Servers, as campanhas de e-mail também precisam de um Template pré-definido para enviar conteúdo às vítimas. Este módulo permite que o atacante acompanhe, crie, liste e edite os templates usados em sua campanha.

Nota: Definir templates aqui não é necessário e o Mailer aceita um caminho direto para os templates de e-mail a partir da CLI.```shell ❯❯❯ ./cartero Templates Usage: Cartero Templates [options] -a, --add [NAME] Add Template -e, --edit [NAME] Edit Template -d, --delete [NAME] Edit Template -l, --list List Templates -h, --help Show this message

root@kitploit:~
#### Mailer
O principal comando e componente do Cartero Framework — Ele permite que o Cartero envie e-mails com modelos personalizados para um ou mais endereços de e-mail.

Cada e-mail pode ser personalizado usando o poderoso mecanismo de modelo erb, permitindo que os usuários criem regras programáticas complexas dentro dos modelos para enviar grandes quantidades de e-mails altamente direcionados.

Para mais informações sobre como criar modelos personalizados, consulte nossos Exemplos.```shell
❯❯❯ ./cartero Mailer
Usage: Cartero Mailer [options]
    -D, --data [DATA_FILE]           File containing template data sets
    -S, --server [SERVER_NAME]       Sets Email server to use
    -s, --subject [EMAIL_SUBJECT]    Sets Email subject
    -f, --from [EMAIL_FROM]          Sets Email from
    -r, --reply-to [EMAIL_REPLY_TO]  Sets Email from
    -b, --body [FILE_PATH]           Sets Email Text Body
    -B, --htmlbody [FILE_PATH]       Sets Email HTML Body
    -c, --charset [CHARSET]          Sets Email charset
    -C [CONTENT_TYPE],               Sets Email content type
        --content-type
    -a [FILE_1,FILE_2,..,FILE_N],    Sets Email Attachments
        --attachment
    -p [PORT_1,PORT_2,..,PORT_N],    Sets Email Payload Ports to scan
        --ports

Common options:
    -h, --help                       Show this message
        --list-options               Show list of available options

WebMailer

Este comando suporta uma alternativa aos servidores SMTP / IMAP para envio de mensagens usando serviços de webmail conhecidos, vulneráveis ou anônimos, via requisições web.```shell ❯❯❯ ./cartero WebMailer Usage: Cartero WebMailer [options] -R, --raw [RAW_REQUEST_FILE] Sets WebMail Raw Request -S, --server [SERVER_NAME] Sets WebMail server to use -U, --url [URL:PORT] Sets WebMail server url to use -H [HEADER:VAL\nHEADER:VAL], Sets WebMail Headers to use --headers -C, --cookies [COOKIES] Sets WebMail Cookies to use -D, --data [DATA_FILE] File containing template data sets -s, --subject [EMAIL_SUBJECT] Sets Email subject -f, --from [EMAIL_FROM] Sets Email from -r, --reply-to [EMAIL_REPLY_TO] Sets Email reply-to -b, --body [REQUEST_FILE_PATH] Sets Email Text request query Body -p [PORT_1,PORT_2,..,PORT_N], Sets Email Payload Ports to scan --ports

Common options: -h, --help Show this message --list-options Show list of available options

root@kitploit:~
The Command can be used in two main ways. One using a raw command such as the one we get from Intercepting traffic with a web proxy (i.e. Burp Proxy) and or using the servers command available on Cartero.

#####Example of webmail server for send-mail.org```json
{
    "name": "send-email",
    "type": "webmail",
    "options": {
        "url": "http://send-email.org/send",
        "method": "POST",
        "cookies": "",
        "headers": {
            "Host": "send-email.org",
            "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:29.0) Gecko/20100101 Firefox/29.0",
            "Accept": "application/json, text/javascript, */*; q=0.01",
            "Accept-Language": "en-US,en;q=0.5",
            "Accept-Encoding": "gzip, deflate",
            "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8",
            "X-Requested-With": "XMLHttpRequest",
            "Referer": "http://send-email.org/",
            "Content-Length": "126",
            "Connection": "keep-alive",
            "Pragma": "no-cache"
        }
    },
    "confirmation" : "Your message was sent!"
}

Usando esta requisição pré-configurada, podemos facilmente enviar mensagens usando os mesmos conjuntos de dados para o Mailer e usando o mesmo tipo de templates. Um exemplo está disponível em /templates/mail/sample.web

#####Comando de Exemplo:```shell ❯❯❯ ./cartero WebMailer -S webmail -D ~/sample.json -b ../templates/mail/sample.web -r [email protected]

root@kitploit:~
#### LinkedIn
O comando LinkedIn é a primeira adição de Rede Social ao Cartero Framework. Este plugin permite que atacantes usem a plataforma social para enviar mensagens e atacar usuários diretamente pelo LinkedIn.```shell
❯❯❯ ./cartero LinkedIn
Usage: Cartero LinkedIn [options]
    -D, --data [DATA_FILE]           File containing template data sets
    -S, --server [SERVER_NAME]       Sets Email server to use
    -s, --subject [MESSAGE_SUBJECT]  Sets LinkedIn Message subject
    -b, --body [FILE_PATH]           Sets LinkedIn Message Body
    -l, --list [CONNECTIONS|GROUPS]  List json of (connections or groups)
        --send [MESSAGE|GROUP_UPDATE]
                                     Send one or more (message/s or group/s updates)
    -o, --save [FILE_PATH]           Sets LinkedIn Message Body

Common options:
    -h, --help                       Show this message
        --list-options               Show list of available options

O comando requer uma API de desenvolvedor e chave oauth no perfil do atacante. Isso pode ser facilmente obtido em https://www.linkedin.com/secure/developer. e um novo template de servidor pode ser criado com o comando Server.

IMessage

Permite que o Cartero, no OS X, envie iMessages para endereços de vítimas assim como e-mails, mas estes aparecerão em todos os iDevices que eles registraram com apple.

Contexto: Depois de ler algumas notícias sobre como spammers chineses estão abusando do fato de que mensagens do iMessage serão exibidas em todos os dispositivos vinculados à(s) conta(s), um comando rápido foi desenvolvido para permitir que os usuários do Cartero também tenham esse recurso disponível no Framework.

Importante: Isso só funcionará no OSX, por enquanto```shell ❯❯❯ ./cartero IMessage Usage: Cartero IMessage [options] IMPORTANT: This command only works on OSX

root@kitploit:~
-D, --data [DATA_FILE]           File containing template data sets
-A, --attachment [ATTACHMENT]    Sets iMessage file path to send
-b, --body [BODY_FILE]           Sets iMessage message
-m, --message [MESSAGE]          Sets iMessage message

Common options: -h, --help Show this message --list-options Show list of available options

root@kitploit:~
O iMessage não permite enviar uma única mensagem contendo texto e anexos, mas quando ambos são fornecidos, a mensagem será dividida e enviada como duas mensagens individuais.
#####Comando de exemplo```shell
❯❯❯ ./cartero IMessage --data /Users/cartero/Desktop/test.json -b ../templates/mail/sample.imsg -a /Users/cartero/Downloads/jon.jpg

GoogleVoice

Se você tem uma conta GoogleVoice e quer enviar SMS automaticamente, essa pode ser uma boa maneira de fazer isso. Segue a mesma infraestrutura de todos os outros comandos.````shell ❯❯❯ ./cartero GoogleVoice Usage: Cartero GoogleVoice [options] -D, --data [DATA_FILE] File containing template data sets -S, --server [SERVER_NAME] Sets SMS server to use -b, --body [FILE_PATH] Sets SMS Text Body -m, --message [MESSAGE] Sets SMS message -u, --username [USER] Sets Google Voice Username -p, --password [PWD] Sets Google Voice password

Common options: -h, --help Show this message --list-options Show list of available options

root@kitploit:~
#### Twilio
Se você tem uma conta Twilio e deseja enviar SMS automaticamente, esta pode ser mais uma forma de enviar SMS. Vale ressaltar que este é um serviço pago e requer um token de acesso válido (sid) e um segredo (secret_token). Para mais informações, consulte o site da Twilio em https://www.twilio.com/sms/api````shell
❯❯❯ ./cartero Twilio
Usage: Cartero Twilio [options]
    -D, --data [DATA_FILE]           File containing template data sets
    -S, --server [SERVER_NAME]       Sets SMS server to use
    -f, --from [NUMBER]              Sets SMS from number to use
    -b, --body [FILE_PATH]           Sets SMS Text Body
    -m, --message [MESSAGE]          Sets SMS message
    -u, --sid [SID]                  Sets Twilio Username
    -p, --token [TOKEN]              Sets Twilio password
    -A, --attachment [PATH_1||PATH_2||PATH_3]    Sets Twilio MMS URL image paths to send

Common options:
    -h, --help                       Show this message
        --list-options               Show list of available options

AdminWeb

A interface Admin Web é uma aplicação web simples que permite ao atacante obter informações sobre todas as Campanhas.```shell ❯❯❯ ./cartero AdminConsole Usage: Cartero AdminConsole [options] -i, --ip [1.1.1.1] Sets IP interface, default is 0.0.0.0 -p [PORT_1,PORT_2,..,PORT_N], Sets Email Payload Ports to scan --ports -s, --ssl Run over SSL. [this also requires --sslcert and --sslkey] -C, --sslcert [CERT_PATH] Sets Email Payload Ports to scan -K, --sslkey [KEY_PATH] Sets Email Payload Ports to scan

Common options: -h, --help Show this message --list-options Show list of available options

root@kitploit:~
#### AdminConsole
O Admin Console é uma ferramenta de CLI que permite listar informações sobre Pessoas, Campanhas, Hits e Credenciais coletadas.```shell
❯❯❯ ./cartero AdminConsole
Usage: Cartero AdminConsole [options]
    -p, --persons [LATEST_N]         Display the list of persons that responded
    -i, --hits [LATEST_N]            Display the list of hits
    -c, --creds [LATEST_N]           Display the list of Credentials
    -a, --all                        Sets Email Payload Ports to scan
    -f, --filter                     flag to search by parameters
        --email [EMAIL]              Display the list of hits
        --campaign [CAMPAIGN]        Display the list of hits
        --ip [IP_ADDRESS]            Display the list of hits

Common options:
    -h, --help                       Show this message
        --list-options               Show list of available options

Construindo Comandos

Os comandos têm um framework bastante simples. Os comandos de exemplo do Framework são armazenados em Cartero/lib/cartero/commands/*.rb e ~/.cartero/commands/*.rb.```ruby module Cartero module Commands class CommandName < ::Cartero::Command

description( name: "Long Command Name Here", description: "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.", author: ["Author Name <noname [©] cartero.com>"], type:"General", license: "LGPL", references: [ "https://section9labs.github.io/Cartero", "https://section9labs.github.io/Cartero" ] )

def initialize super do |opts| #OptionsParser options available here. opts.on("-x", "--xoption [DATA_FILE]", String, "Description of command option") do |data| @options.xoption = data end opts.on("-y", "--yoption [DATA_FILE]", String, "Description of command option") do |data| @options.xoption = data end # help() option already provided. # --list-options for auto-complete automatic. end end

def setup # This will be hooked and run before run(). # It is meant as a method so the commands can run everything before that. end

def run # Everything that will run. end

def after # This is the place to run clean-up code. end end end end

root@kitploit:~
### Modelos de E-mail
Os e-mails são arquivos txt simples ou arquivos HTML limitados, dependendo do formato utilizado. O Cartero permite criação complexa de templates por meio da biblioteca erb do Ruby e uma interface CLI para ajudar a construir e criar templates em ambos os formatos.

Os arquivos podem ser amplamente personalizados para a campanha por meio do erb, que fornece substituição dinâmica e decisões programáticas em tempo de execução.

Outra característica importante é o payload criptografado `self[:payload]`, que deve ser adicionado em cada modelo de e-mail, permitindo que o Cartero identifique a entidade de origem independentemente de múltiplos encaminhamentos ou cliques. Esse pequeno payload é criptografado usando uma chave gerada aleatoriamente, permitindo que os atacantes mantenham seus dados de origem seguros e longe da detecção.

**ARQUIVO DE DADOS DE EXEMPLO**```json
[{
    "email": "[email protected]",
    "name": "John Doe"
}, {
    "email": "[email protected]",
    "name": "Gas Hill"
}, {
    "email": "[email protected]",
    "name": "John Doe 2"
}, {
    "email": "[email protected]",
    "name": "Jane Doe - Hotmail",
    "subject": "Hotmail Test 123"
}]

EXEMPLO DE TEMPLATE HTML```html

Hello Spear Phishing World <%= self[:name] %>,

This is an automated email to your email <%= self[:email] %>.

<% if self[:ports] %> <% self[:ports].each do |port| %> /image?key=<%= self[:payload] %>"> <% end %> <% end %>

root@kitploit:~
**MODELO DE AMOSTRA DE TEXTO**```txt
Hola <%= self[:name] %>,
This email needs to be displayed as HTML.
This is an automated email to your email<%= self[:email] %>.
In addition, this email can also be displayed securely
on http://192.168.1.216:8080/click?key=<%= self[:payload] %>

cheers,

<%= self[:from_name] %>

Servers

Os servidores podem ser gerenciados usando o comando Servers, que fornece a capacidade de adicionar, editar e excluir servidores. Nota: Os servidores podem ser editados manualmente em ~/.cartero/servers/*.json

####smtp```json { "name": "gmail", "type": "smtp", "options": { "address": "smtp.yourserver.com", "port": 25, "user_name": "user", "password": "password", "authentication": "plain", "domain": "localhost.localdomain" } }

root@kitploit:~
####linkedin```json
{
  "name": "linkedin",
  "type": "linkedin",
	"options": {
	  "api_access": "api_access",
	  "api_secret": "api_secret",
	  "oauth_token": "oauth_token",
	  "oauth_secret": "oauth_secret"
	}
}

####webmail```json { "name": "webmail-sample", "type": "webmail", "options": { "url": "http://www.send-email.com/data/send/email", "method": "POST", "cookies": "sdajsda09s7das923i3j2l131;21381903810", "headers": { "x-forward": "asdadadasad" } }, "confirmation" : null }

root@kitploit:~
.
### CHANGELOG
- [CHANGELOG](https://github.com/mrbrutti/cartero/blob/HEAD/CHANGELOG.md)

### TODO
- [TODO](https://github.com/mrbrutti/cartero/blob/HEAD/TODO.md)
Baixar ferramenta