Class: Risu::Templates::MSPatchSummary

Inherits:
Base::TemplateBase show all
Includes:
TemplateHelper
Defined in:
lib/risu/templates/ms_patch_summary.rb

Instance Attribute Summary

Attributes inherited from Base::TemplateBase

#output, #template_info

Instance Method Summary collapse

Methods included from TemplateHelper

#default_credential_plugins, #default_credentials_appendix_section, #default_credentials_section, #definition, #has_default_credentials?, #heading1, #heading2, #heading3, #heading4, #heading5, #heading6, #item_count_by_plugin_id, #item_count_by_plugin_name, #new_page, #report_author, #report_classification, #report_subtitle, #report_title, #table, #text, #title

Methods included from ScanHelper

#authenticated_count, #scan_info_to_hash

Methods included from SharesTemplateHelper

#anon_ftp_count, #anon_ftp_section, #anon_smb_count, #anon_smb_query, #anon_smb_section, #shares_appendix_section, #shares_section, #shares_section_has_findings?

Methods included from GraphTemplateHelper

#other_os_graph_page, #risks_by_service_graph_page, #risks_by_severity_graph_page, #root_cause_graph_page, #windows_os_graph_page

Methods included from MalwareTemplateHelper

#conficker_appendix_section, #conficker_count, #conficker_section, #known_malicious_process_appendix_section, #known_malicious_process_count, #known_malicious_process_section, #malware_appendix_section, #malware_section

Methods included from HostTemplateHelper

#unsupported_os, #unsupported_os_appendix_section

Methods inherited from Base::TemplateBase

inherited

Constructor Details

#initializeMSPatchSummary

Returns a new instance of MSPatchSummary.



27
28
29
30
31
32
33
34
35
36
# File 'lib/risu/templates/ms_patch_summary.rb', line 27

def initialize
	@template_info =
	{
		:name => "ms_patch_summary",
		:author => "hammackj",
		:version => "0.0.2",
		:renderer => "PDF",
		:description => "Generates a Microsoft Patch Summary Report"
	}
end

Instance Method Details

#render(output) ⇒ Object



38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# File 'lib/risu/templates/ms_patch_summary.rb', line 38

def render output
	text Report.classification.upcase, :align => :center
	text "\n"

	report_title Report.title
	report_subtitle "Missing Microsoft Patch Summary"
	report_author "This report was prepared by\n#{Report.author}"

	text "\n\n\n"

	Item.ms_patches.each do |item|
		host = Host.find_by_id(item.host_id)

		next if host == nil

		if host.name != nil
			text "Host:", :style => :bold
			text host.name
		end

		if host.os != nil
			text "OS:", :style => :bold
			text host.os
		end

		if host.mac != nil
			text "Mac:", :style => :bold
			text host.mac
		end
		text "\n"
		text item.plugin_output
		text "\n"
	end
end