All Projects → sophsec → Ruby Nmap

sophsec / Ruby Nmap

Licence: mit
A Ruby interface to nmap, the exploration tool and security / port scanner. Allows automating nmap and parsing nmap XML files.

Programming Languages

ruby
36898 projects - #4 most used programming language

Projects that are alternatives of or similar to Ruby Nmap

Penta
Open source all-in-one CLI tool to semi-automate pentesting.
Stars: ✭ 130 (-46.72%)
Mutual labels:  automation, nmap
Autoenum
Automatic Service Enumeration Script
Stars: ✭ 134 (-45.08%)
Mutual labels:  automation, nmap
Webmap
A Python tool used to automate the execution of the following tools : Nmap , Nikto and Dirsearch but also to automate the report generation during a Web Penetration Testing
Stars: ✭ 188 (-22.95%)
Mutual labels:  automation, nmap
Automation Scripts
Repo for creating awesome automation scripts to make my panda lazier
Stars: ✭ 223 (-8.61%)
Mutual labels:  automation
Espurna
Home automation firmware for ESP8266-based devices
Stars: ✭ 2,650 (+986.07%)
Mutual labels:  automation
Posthtml
PostHTML is a tool to transform HTML/XML with JS plugins
Stars: ✭ 2,737 (+1021.72%)
Mutual labels:  xml-parser
Nightwatch Cucumber
[DEPRECATED] Cucumber.js plugin for Nightwatch.js.
Stars: ✭ 243 (-0.41%)
Mutual labels:  automation
Wexflow
An easy and fast way to build automation and workflows on Windows, Linux, macOS, and the cloud.
Stars: ✭ 2,435 (+897.95%)
Mutual labels:  automation
Screenshotsnanny
Android library helps take screenshots for publishing on Google Play Store.
Stars: ✭ 237 (-2.87%)
Mutual labels:  automation
Grizzly
A cross-platform browser fuzzing framework
Stars: ✭ 234 (-4.1%)
Mutual labels:  automation
Metrics
📊 An infographics generator with 30+ plugins and 200+ options to display stats about your GitHub account and render them as SVG, Markdown, PDF or JSON!
Stars: ✭ 4,621 (+1793.85%)
Mutual labels:  automation
Automagica
AI-powered Smart Robotic Process Automation 🤖
Stars: ✭ 2,610 (+969.67%)
Mutual labels:  automation
Go Expect
an expect-like golang library to automate control of terminal or console based programs.
Stars: ✭ 236 (-3.28%)
Mutual labels:  automation
Chirp
Interface to manage and centralize Google Alert information
Stars: ✭ 227 (-6.97%)
Mutual labels:  automation
Docker Compose Usenet
Docker-powered usenet pipeline
Stars: ✭ 240 (-1.64%)
Mutual labels:  automation
Errbot
Errbot is a chatbot, a daemon that connects to your favorite chat service and bring your tools and some fun into the conversation.
Stars: ✭ 2,605 (+967.62%)
Mutual labels:  automation
Slash Command Dispatch
A GitHub action that facilitates "ChatOps" by creating repository dispatch events for slash commands
Stars: ✭ 231 (-5.33%)
Mutual labels:  automation
Cdp4j
cdp4j - Chrome DevTools Protocol for Java
Stars: ✭ 232 (-4.92%)
Mutual labels:  automation
Pugixml
Light-weight, simple and fast XML parser for C++ with XPath support
Stars: ✭ 2,809 (+1051.23%)
Mutual labels:  xml-parser
Shell Novice
The Unix Shell
Stars: ✭ 234 (-4.1%)
Mutual labels:  automation

ruby-nmap

CI Code Climate Gem Version

Description

A Ruby interface to nmap, the exploration tool and security / port scanner. Allows automating nmap and parsing nmap XML files.

Features

  • Provides a Ruby interface for running nmap.
  • Provides a Parser for enumerating nmap XML scan files.

Examples

Run Nmap from Ruby:

require 'nmap/program'

Nmap::Program.scan do |nmap|
  nmap.syn_scan = true
  nmap.service_scan = true
  nmap.os_fingerprint = true
  nmap.xml = 'scan.xml'
  nmap.verbose = true

  nmap.ports = [20,21,22,23,25,80,110,443,512,522,8080,1080]
  nmap.targets = '192.168.1.*'
end

Run sudo nmap from Ruby:

require 'nmap/program'

Nmap::Program.sudo_scan do |nmap|
  nmap.syn_scan = true
  # ...
end

Parse Nmap XML scan files:

require 'nmap/xml'

Nmap::XML.new('scan.xml') do |xml|
  xml.each_host do |host|
    puts "[#{host.ip}]"

    host.each_port do |port|
      puts "  #{port.number}/#{port.protocol}\t#{port.state}\t#{port.service}"
    end
  end
end

Print NSE script output from an XML scan file:

require 'nmap/xml'

Nmap::XML.new('nse.xml') do |xml|
  xml.each_host do |host|
    puts "[#{host.ip}]"

    host.scripts.each do |name,output|
      output.each_line { |line| puts "  #{line}" }
    end

    host.each_port do |port|
      puts "  [#{port.number}/#{port.protocol}]"

      port.scripts.each do |name,output|
        puts "    [#{name}]"

        output.each_line { |line| puts "      #{line}" }
      end
    end
  end
end

Requirements

Install

$ gem install ruby-nmap

License

Copyright (c) 2009-2021 Postmodern

See {file:LICENSE.txt} for license information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].