
smbclient-ng, uma forma rápida e amigável de interagir com compartilhamentos SMB.
bat: Exibe o conteúdo de um arquivo de forma formatada. Sintaxe: bat <file>bhead: Exibe as primeiras n linhas de um arquivo de forma formatada. Sintaxe: bhead <file>btail: Exibe as últimas n linhas de um arquivo de forma formatada. Sintaxe: btail <file>cat: Obtém o conteúdo de um arquivo. Sintaxe: cat <file>cd: Muda o diretório de trabalho atual. Sintaxe: cd <directory>close: Fecha a conexão SMB com a máquina remota. Sintaxe: closeconnect: Conecta à máquina remota (útil se a conexão expirou). Sintaxe: connectdir: Lista o conteúdo do diretório de trabalho atual. Sintaxe: direxit: Sai do script smbclient-ng. Sintaxe: exitget: Obtém um arquivo remoto. Sintaxe: get [-r] <directory or file>help: Exibe esta mensagem de ajuda. Sintaxe: helphead: Obtém as primeiras n linhas de um arquivo remoto. Sintaxe: head <file>history: Exibe o histórico de comandos. Sintaxe: historyinfo: Obtém informações sobre o servidor e/ou o compartilhamento. Sintaxe: info [server|share]lbat: Exibe o conteúdo de um arquivo local de forma formatada. Sintaxe: lbat <file>lcat: Exibe o conteúdo de um arquivo local. Sintaxe: lcat <file>lcd: Muda o diretório local atual. Sintaxe: lcd <directory>lcp: Cria uma cópia de um arquivo local. Sintaxe: lcp <srcfile> <dstfile>lls: Lista o conteúdo do diretório local atual. Sintaxe: llslmkdir: Cria um novo diretório local. Sintaxe: lmkdir <directory>lpwd: Mostra o diretório local atual. Sintaxe: lpwdlrename: Renomeia um arquivo local. Sintaxe: lrename <oldfilename> <newfilename>lrm: Remove um arquivo local. Sintaxe: lrm <file>lrmdir: Remove um diretório local. Sintaxe: lrmdir <directory>ls: Lista o conteúdo do diretório remoto de trabalho atual. Sintaxe: lsltree: Exibe uma visão em árvore dos diretórios locais. Sintaxe: ltree [directory]metadata: Obtém metadados sobre um arquivo ou diretório. Sintaxe: metadata <file|directory>mkdir: Cria um novo diretório remoto. Sintaxe: mkdir <directory>module: Carrega um módulo específico para funcionalidades adicionais. Sintaxe: module <name>mount: Cria um ponto de montagem do compartilhamento remoto na máquina local. Sintaxe: mount <remote_path> <local_mountpoint>put: Envia um arquivo ou diretório local para um diretório remoto. Sintaxe: put [-r] <directory or file>reconnect: Reconecta à máquina remota (útil se a conexão expirou). Sintaxe: reconnectreset: Redefine a saída do TTY, útil se ela foi danificada após imprimir um arquivo binário no stdout. Sintaxe: resetrm: Remove um arquivo remoto. Sintaxe: rm <file>rmdir: Remove um diretório remoto. Sintaxe: rmdir <directory>sessions: Gerencia as sessões SMB. Sintaxe: sessions [interact|create|delete|execute|list]shares: Lista os compartilhamentos SMB fornecidos pela máquina remota. Sintaxe: sharessizeof: Calcula recursivamente o tamanho de uma pasta. Sintaxe: sizeof [directory|file]tail: Obtém as últimas n linhas de um arquivo remoto. Sintaxe: tail <file>tree: Exibe uma visão em árvore dos diretórios remotos. Sintaxe: tree [directory]umount: Remove um ponto de montagem do compartilhamento remoto na máquina local. Sintaxe: umount <local_mount_point>use: Usa um compartilhamento SMB. Sintaxe: use <sharename>Para instalar o smbclient-ng, você pode usar pip, pip3 ou pipx. Você pode executar qualquer um dos seguintes comandos no seu terminal para instalar o smbclient-ng:
Com pip:
python3 -m pip install smbclientng
Com pip3:
pip3 install smbclientng
Com pipx:
pipx install smbclientng

$ ./smbclient-ng.py
_ _ _ _
___ _ __ ___ | |__ ___| (_) ___ _ __ | |_ _ __ __ _
/ __| '_ ` _ \| '_ \ / __| | |/ _ \ '_ \| __|____| '_ \ / _` |
\__ \ | | | | | |_) | (__| | | __/ | | | ||_____| | | | (_| |
|___/_| |_| |_|_.__/ \___|_|_|\___|_| |_|\__| |_| |_|\__, |
by @podalirius_ v2.1.8 |___/
usage: smbclientng [-h] [--debug] [--no-colors] [-l LOGFILE] [-T TIMEOUT] [-a ADVERTISED_NAME] [-C COMMAND] [-S STARTUP_SCRIPT] [-N] -H HOST [-P PORT] [-d DOMAIN] [-u USER]
[-p [PASSWORD] | --no-pass | --hashes [LMHASH:]NTHASH | --aes-key HEXKEY | -k | --kdcHost KDCHOST]
smbclient-ng, a fast and user-friendly way to interact with SMB shares.
options:
-h, --help show this help message and exit
Config:
--debug Enable debug mode.
--no-colors Disable colored output.
-l LOGFILE, --logfile LOGFILE
Log file path.
-T TIMEOUT, --timeout TIMEOUT
Timeout for SMB connections (default: 3s)
-a ADVERTISED_NAME, --advertised-name ADVERTISED_NAME
Advertised machine name.
Commands:
-C COMMAND, --command COMMAND
smbclient-ng commands to execute.
-S STARTUP_SCRIPT, --startup-script STARTUP_SCRIPT
Startup script with commands.
-N, --not-interactive
Non-interactive mode.
Target:
-H HOST, --host HOST Target SMB Server IP or hostname.
-P PORT, --port PORT Target SMB Server port (default: 445).
Authentication & Connection:
-d DOMAIN, --domain DOMAIN
Authentication domain.
-u USER, --user USER Username for authentication.
Secrets:
-p [PASSWORD], --password [PASSWORD]
Password.
--no-pass Do not prompt for a password.
--hashes [LMHASH:]NTHASH
NT/LM hashes.
--aes-key HEXKEY AES key for Kerberos authentication.
-k, --kerberos Use Kerberos authentication.
--kdcHost KDCHOST Fully qualified domain name (FQDN) of key distribution center (KDC) for Kerberos.
smbclient-ng -d "LAB" -u "Administrator" -p 'Admin123!' --host "10.0.0.201"
Pull requests são bem-vindos. Sinta-se à vontade para abrir uma issue se quiser adicionar outras funcionalidades.