Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
darc — Rastreador da dark web que usa workers de requests e Selenium para buscar páginas, capturar cabeçalhos e cookies, extrair links e salvar capturas de tela renderizadas para coleta de OSINT. | Kitploit
Ferramentas/GitHubGitHub/jarryshaw/darc
OSINT (Inteligência de Fontes Abertas)ReconhecimentoScripting e AutomaçãoColeta de InformaçõesSegurança WebPrivacidadeRastreador
GitHubjarryshaw/darc

darc

Rastreador da dark web que usa workers de requests e Selenium para buscar páginas, capturar cabeçalhos e cookies, extrair links e salvar capturas de tela renderizadas para coleta de OSINT.

Ver Repositório
2393929há 18 diasRevisado 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

darc - Projeto de Crawler para a Darkweb

Para qualquer informação técnica e/ou de manutenção, por favor consulte o |docs|_.

.. |docs| replace:: Documentação Oficial .. _docs: https://darc.jarryshaw.me

NB: A partir da versão 1.0.0, novas funcionalidades do projeto não serão desenvolvidas neste repositório público. Apenas correções de bugs e patches de segurança serão aplicados na atualização e nos novos lançamentos.

darc foi projetado como um canivete suíço para o rastreamento da darkweb. Ele integra o requests para coletar informações de requisições e respostas HTTP, como cookies, campos de cabeçalho, etc. Ele também agrega o selenium para fornecer uma página web totalmente renderizada e uma captura de tela dessa visualização.

.. image:: https://darc.jarryshaw.me/en/latest/_images/darc.jpeg

O processo geral do darc pode ser descrito da seguinte forma:

Existem dois tipos de workers:

  • crawler -- executa o darc.crawl.crawler para fornecer uma visão atualizada de um link e testar sua conectividade

  • loader -- executa o darc.crawl.loader para fornecer uma visão aprofundada de um link e fornecer mais informações visuais

O processo geral pode ser descrito da seguinte forma para workers do tipo crawler:

  1. darc.process.process_crawler: obtém URLs do banco de dados de links do requests (cf. darc.db.load_requests), e alimenta tais URLs ao darc.crawl.crawler.

    NOTA:

    Se darc.const.FLAG_MP for True, a função será chamada com suporte a multiprocessing; se darc.const.FLAG_TH for True, a função será chamada com suporte a multithreading; se nenhum, a função será chamada em single-threading.

  2. darc.crawl.crawler: analisa a URL usando darc.link.parse_link, e verifica se é necessário rastrear a URL (cf. darc.const.PROXY_WHITE_LIST, darc.const.PROXY_BLACK_LIST, darc.const.LINK_WHITE_LIST e darc.const.LINK_BLACK_LIST); se verdadeiro, então rastreia a URL com requests.

    Se a URL for de um host totalmente novo, darc primeiro tentará buscar e salvar o robots.txt e os sitemaps do host (cf. darc.proxy.null.save_robots e darc.proxy.null.save_sitemap), e extrair e então salvar os links dos sitemaps (cf. darc.proxy.null.read_sitemap) no banco de dados de links para rastreamento futuro (cf. darc.db.save_requests). Além disso, se a API de submissão for fornecida, darc.submit.submit_new_host será chamado e submeterá os documentos recém-obtidos.

    Se robots.txt estiver presente, e darc.const.FORCE for False, darc verificará se é permitido rastrear a URL.

    NOTA:

    O caminho raiz (por exemplo, / em https://www.example.com/) sempre será rastreado ignorando o robots.txt.

    Neste ponto, darc chamará a função de hook personalizada de darc.sites para rastrear e obter o objeto de resposta final. darc salvará os cookies de sessão e as informações de cabeçalho, usando darc.save.save_headers.

    NOTA:

    Se requests.exceptions.InvalidSchema for levantada, o link será salvo por darc.proxy.null.save_invalid. O processamento adicional é descartado.

    Se o tipo de conteúdo do documento de resposta não for ignorado (cf. darc.const.MIME_WHITE_LIST e darc.const.MIME_BLACK_LIST), darc.submit.submit_requests será chamado e submeterá o documento recém-obtido.

    Se o documento de resposta for HTML (text/html e application/xhtml+xml), darc.parse.extract_links será chamado então para extrair todos os links possíveis do documento HTML e salvar tais links no banco de dados (cf. darc.db.save_requests).

    E se o código de status da resposta estiver entre 400 e 600, a URL será salva de volta no banco de dados de links (cf. darc.db.save_requests). Se NÃO, a URL será salva no banco de dados de links do selenium para prosseguir com os próximos passos (cf. darc.db.save_selenium).

O processo geral pode ser descrito da seguinte forma para workers do tipo loader:

  1. darc.process.process_loader: enquanto isso, darc irá obter URLs a partir da base de dados de links do selenium (cf. darc.db.load_selenium), e fornecer tais URLs ao darc.crawl.loader.

    NOTA:

    Se darc.const.FLAG_MP for True, a função será chamada com suporte a multiprocessing; se darc.const.FLAG_TH for True, a função será chamada com suporte a multithreading; caso contrário, a função será chamada em single-threading.

  2. darc.crawl.loader: analisa o URL usando darc.link.parse_link e inicia o carregamento do URL usando selenium com o Google Chrome.

    Neste ponto, darc irá chamar a função hook personalizada de darc.sites para carregar e retornar o objeto selenium.webdriver.chrome.webdriver.WebDriver original.

    Se bem-sucedido, o documento HTML de origem renderizado será guardado, e uma captura de ecrã de página inteira será tirada e guardada.

    Se a API de submissão for fornecida, darc.submit.submit_selenium será chamada e submeterá o documento acabado de carregar.

    Posteriormente, darc.parse.extract_links será chamada para extrair todos os links possíveis do documento HTML e guardar tais links na base de dados requests (cf. darc.db.save_requests).


Instalação

NOTA:

darc suporta todas as versões de Python acima e incluindo a 3.6. Atualmente, apenas suporta e é testado em Linux (Ubuntu 18.04) e macOS (Catalina).

Ao instalar em versões de Python abaixo da 3.8, darc irá usar |walrus|_ para se compilar para compatibilidade de backport.

.. |walrus| replace:: walrus .. _walrus: https://github.com/pybpc/walrus

.. code-block:: shell

pip install python-darc

Certifique-se de que tem o Google Chrome e a versão correspondente do Chrome Driver instalados no seu sistema.

A partir da versão 0.3.0, introduzimos o Redis_ para o backend da base de dados da fila de tarefas.

.. _Redis: https://redis.io

Desde a versão 0.6.0, introduzimos armazenamento em base de dados relacional (por exemplo, MySQL, SQLite, PostgreSQL, etc.) para o backend da base de dados da fila de tarefas, além da base de dados Redis, uma vez que pode ser demasiado dispendioso em termos de memória quando a fila de tarefas se torna muito grande.

.. _MySQL: https://mysql.com/ .. _SQLite: https://www.sqlite.org/ .. _PostgreSQL: https://www.postgresql.org/

Certifique-se de que tem uma das bases de dados de backend instalada, configurada e em execução ao usar o projeto darc.

No entanto, o projeto darc é distribuído com suporte a Docker e Compose. Consulte a raiz do projeto para os ficheiros relevantes e mais informações.

Ou pode consultar e/ou instalar a partir do repositório Docker Hub_:

.. code-block:: shell

docker pull jsnbzh/darc[:TAGNAME]

.. _Docker Hub: https://hub.docker.com/r/jsnbzh/darc

ou do GitHub Container Registry, com imagens mais atualizadas e abrangentes:

.. code-block:: shell

docker pull ghcr.io/jarryshaw/darc[:TAGNAME]

or the debug image

docker pull ghcr.io/jarryshaw/darc-debug[:TAGNAME]


Utilização

O projeto darc fornece uma CLI simples::

usage: darc [-h] [-v] -t {crawler,loader} [-f FILE] ...

the darkweb crawling swiss army knife

positional arguments: link links to craw

Baixar ferramenta