===> 1.x.x

  [ ] add option to spoof client (paramiko) ssh-version
  [ ] license ( admin panel where i can add working passwords )
  [ ] domain / ips brute
  [ ] working bingip2hosts
  [ ] anti fail2ban
  [ ] honeypot detection system
  [ ] sandbox detection
  [ ] no ssh saves to another files ( it's good for user as SOCKS 4 )
  [ ] anti dupe system ( no double )


===> 1.5.0

  [ ] randomize ipfile (sort as random ips.txt)
  [ ] random brute (take random ip from ips and random user:pass from user
      files ) and brute it


===> 1.4.3

  [x] bugfix: fixed Python's "SyntaxWarning"
  [x] updated COPYRIGHT info


===> 1.4.2

  [x] bugfix: banner option
  [x] updated lists/*


===> 1.4.1

  [x] updated help() and README.md (old options were present)


===> 1.4.0

  [x] updated lists/* (added more default passwords and usernames)
  [x] add 'exclude host after first login was found' option (-e)
  [x] add 'exit sshprank after first login was found' option (-E)
  [x] swap options: '-C' -> '-c'
  [x] merge options: '-l' -> '-h', '-U' -> '-u', '-P' -> '-p'


===> 1.3.5

  [x] remove pf.close() call


===> 1.3.4

  [x] remove open() calls


===> 1.3.3

  [x] use mmap to read wordlist files


===> 1.3.2

  [x] decrease default hosts threads num


===> 1.3.1

  [x] close file descriptor...


===> 1.3.0

  [x] updated default thread nums for host, service and login.
  [x] add new option to not output ssh command results ('-N')
  [x] read and run commands from file on target (github: #5)
  [x] fix high memory usage (github: #9)


===> 1.2.3

  [x] increase default auth and connect timeout
  [x] use 'info' for 'saved found sshds.txt' rather than 'good'
  [x] use status() for shodan_search()
  [x] updated short description in script file


===> 1.2.2

  [x] call log() only in one place after AuthenticationException occurs
  [x] skip further actions if targets file could not be read ('-l' option)


===> 1.2.1

  [x] only print exclusion infos in verbose mode
  [x] use spin() output for scanning and cracking targets
  [x] update wordings in the examples


===> 1.2.0

  [x] exclude targets if service is not running or pubkey auth only is supported


===> 1.1.3

  [x] print small info if login found (for non-verbose mode)
  [x] add uid (root) check for '-m' option
  [x] change wordings a bit


===> 1.1.0

  [x] fix color codes
  [x] use new python format style (f'{foo}')
  [x] add leet and important ascii banner


===> 1.0.0

  [x] mark stable + release


===> 0.0.3

  [x] implement remote ssh command exec
  [x] implement random target cracking
  [x] implement read timeout for banner grabbing
  [x] print found login only if '-v' was chosen
  [x] os exit on found login
  [x] remove colorama bullshit
  [x] fix banner grab issue (non-banner sshds, e.g. 'open' only were ignored)
  [x] by default don't use masscan's --banner option


===> 0.0.2

  [x] use deque() rather than lists for MT


===> 0.0.1

  [x] standalone file with all libraries included
  [x] asynchron multithreaded
  [x] grab banners
  [x] choose port for brute
  [x] initial version

