class Nessus6::Plugin

The Plugin class is for interacting with Nessus6 plugins. localhost:8834/api#/resources/plugins

Public Class Methods

new(client) click to toggle source
# File lib/Nessus6/plugin.rb, line 10
def initialize(client)
  @client = client
end

Public Instance Methods

families() click to toggle source

Returns the list of plugin families. This request requires standard user permissions.

@return [Hash]

# File lib/Nessus6/plugin.rb, line 18
def families
  response = @client.get('plugins/families')
  verify response,
         forbidden: 'You do not have permission to view plugin families',
         internal_server_error: 'Server failed to retrieve the plugin '\
                                'family list.'
end
family_details(plugin_family_id) click to toggle source

Returns the list of plugins in a family. This request requires standard user permissions.

@param plugin_family_id [String] The id of the family to lookup. @return [Hash]

# File lib/Nessus6/plugin.rb, line 31
def family_details(plugin_family_id)
  response = @client.get("plugins/families/#{plugin_family_id}")
  verify response,
         forbidden: 'You do not have permission to view the plugin family',
         not_found: 'Plugin family not found',
         internal_server_error: 'Server failed to retrieve the plugin '\
                                'family details.'
end
plugin_details(plugin_id) click to toggle source

Returns the details for a given plugin. This request requires standard user permissions.

@param plugin_id [String] The id of the plugin. @return [Hash]

# File lib/Nessus6/plugin.rb, line 45
def plugin_details(plugin_id)
  response = @client.get("plugins/plugin/#{plugin_id}")
  verify response,
         forbidden: 'You do not have permission to view the plugin',
         not_found: 'Plugin not found',
         internal_server_error: 'Server failed to retrieve the plugin '\
                                'details.'
end