Skip to content

A packet parsing and manipulation library for the SMB protocol family

License

Notifications You must be signed in to change notification settings

rwhitcroft/ruby_smb

 
 

Repository files navigation

RubySMB

Build Status Code Climate Coverage Status

A packet parsing and manipulation library for the SMB family of protocols.

See Microsoft's [MS-SMB2]

It supports authentication via NTLM using the ruby ntlm gem

Installation

This gem has not yet been released, but when it is, do this:

Add this line to your application's Gemfile:

gem 'ruby_smb'

And then execute:

$ bundle

Or install it yourself as:

$ gem install ruby_smb

Usage

Updated Usage Docs coming soon

Developer tips

You'll want to have Wireshark and perhaps a tool like Impacket (which provides a small SMB client in one of its examples) installed to help with your work:

Wireshark

  • sudo apt-get install wireshark
  • sudo dpkg-reconfigure wireshark-common
  • sudo addgroup wireshark
  • sudo usermod -a -G wireshark <USERNAME>

Impacket

  • sudo apt-get install python-setuptools
  • sudo easy_install pyasn1 pycrypto
  • Download from GitHub (https://github.com/coresecurity/impacket)
  • sudo python setup.py install
  • cd examples && python smbclient.py <USER>:<PASS>@<WINDOWS HOST IP>

License

ruby_smb is released under a 3-clause BSD license. See LICENSE.txt for full text.

Contributing

  1. Fork it ( https://github.com/rapid7/smb2/fork )
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

About

A packet parsing and manipulation library for the SMB protocol family

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 100.0%