To put a file with smbclient (needs creds obviously):

smbclient //10.10.10.10/c$ -U 'testuser%Testpass123' -c 'cd \Users\Public; put payload.exe'

pth-smbclient can do the same thing with a hash

WMI for explanation of Invoke-TheHash which contains many SMB tools

GitHub - djhohnstein/SharpShares: Enumerate all network shares in the current domain. Also, can resolve names to IP addresses.

Finding Buried Treasure in Server Message Block (SMB) - Black Hills Information Security

GitHub - blacklanternsecurity/MANSPIDER: Spider entire networks for juicy files sitting on SMB shares. Search filenames or file content - regex supported!

https://github.com/oldboy21/SMBSR

https://github.com/blacklanternsecurity/MANSPIDER

Crawl SMB shares for juicy information. File content searching + regex is supported!