intrigue-ident 0.47 → 0.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/lib/checks/adobe.rb +6 -4
  3. data/lib/checks/akamai.rb +6 -4
  4. data/lib/checks/amazon.rb +40 -5
  5. data/lib/checks/apache.rb +24 -0
  6. data/lib/checks/aruba.rb +6 -3
  7. data/lib/checks/atlassian.rb +30 -20
  8. data/lib/checks/{wordpress.rb → automattic.rb} +56 -36
  9. data/lib/checks/chef.rb +12 -8
  10. data/lib/checks/cisco.rb +18 -12
  11. data/lib/checks/citrix.rb +6 -4
  12. data/lib/checks/cloudflare.rb +33 -23
  13. data/lib/checks/cpanel.rb +6 -4
  14. data/lib/checks/django.rb +6 -4
  15. data/lib/checks/drupal.rb +6 -4
  16. data/lib/checks/f5.rb +6 -4
  17. data/lib/checks/fastly.rb +6 -4
  18. data/lib/checks/generic.rb +10 -8
  19. data/lib/checks/gitlab.rb +6 -4
  20. data/lib/checks/google.rb +6 -4
  21. data/lib/checks/grafana.rb +6 -4
  22. data/lib/checks/heroku.rb +27 -0
  23. data/lib/checks/hp.rb +6 -4
  24. data/lib/checks/jenkins.rb +18 -12
  25. data/lib/checks/joomla.rb +6 -4
  26. data/lib/checks/limesuvey.rb +6 -4
  27. data/lib/checks/lithium.rb +12 -8
  28. data/lib/checks/lotus.rb +6 -4
  29. data/lib/checks/magento.rb +6 -4
  30. data/lib/checks/mcafee.rb +6 -4
  31. data/lib/checks/mediawiki.rb +10 -8
  32. data/lib/checks/microsoft.rb +132 -66
  33. data/lib/checks/nagios.rb +6 -4
  34. data/lib/checks/nginx.rb +6 -4
  35. data/lib/checks/oracle.rb +12 -8
  36. data/lib/checks/palo_alto.rb +6 -4
  37. data/lib/checks/pardot.rb +6 -4
  38. data/lib/checks/pfsense.rb +6 -4
  39. data/lib/checks/phpmyadmin.rb +6 -4
  40. data/lib/checks/pivotal.rb +24 -0
  41. data/lib/checks/rabbitmq.rb +12 -8
  42. data/lib/checks/team_city.rb +6 -4
  43. data/lib/checks/telerik.rb +6 -4
  44. data/lib/checks/varnish.rb +6 -4
  45. data/lib/checks/vmware.rb +6 -4
  46. data/lib/checks/wp_engine.rb +7 -4
  47. data/lib/intrigue-ident.rb +23 -11
  48. metadata +5 -6
  49. data/lib/checks/asp_net.rb +0 -64
  50. data/lib/checks/cloudfront.rb +0 -41
  51. data/lib/checks/spring.rb +0 -22
  52. data/lib/checks/tomcat.rb +0 -22
@@ -6,11 +6,13 @@ module Check
6
6
  def generate_checks(url)
7
7
  [
8
8
  {
9
- :name => "Lotus Domino",
10
- :description => "Lotus Domino",
11
- :type => :content_headers,
9
+ :type => "application",
10
+ :vendor => "Lotus",
11
+ :product =>"Domino",
12
+ :match_details =>"Lotus Domino",
13
+ :match_type => :content_headers,
12
14
  :version => nil,
13
- :content => /server: Lotus-Domino/i,
15
+ :match_content => /server: Lotus-Domino/i,
14
16
  :examples => ["https://12.237.144.251:443"],
15
17
  :paths => ["#{url}"]
16
18
  }
@@ -6,11 +6,13 @@ module Check
6
6
  def generate_checks(url)
7
7
  [
8
8
  {
9
- :name => "Magento",
10
- :description => "Magento",
11
- :type => :content_body,
9
+ :type => "application",
10
+ :vendor => "Magento",
11
+ :product =>"Magento",
12
+ :match_details =>"Magento",
13
+ :match_type => :content_body,
12
14
  :version => nil,
13
- :content => /Mage.Cookies.path/i,
15
+ :match_content => /Mage.Cookies.path/i,
14
16
  :paths => ["#{url}"]
15
17
  }
16
18
  ]
@@ -6,11 +6,13 @@ module Check
6
6
  def generate_checks(url)
7
7
  [
8
8
  {
9
- :name => "McAfee EPolicy Orchestrator",
10
- :description => "McAfee EPolicy Orchestrator",
11
- :type => :content_body,
9
+ :type => "application",
10
+ :vendor => "McAfee",
11
+ :product =>"EPolicy Orchestrator",
12
+ :match_details =>"McAfee EPolicy Orchestrator",
13
+ :match_type => :content_body,
12
14
  :version => nil,
13
- :content => /McAfee Agent Activity Log/i,
15
+ :match_content => /McAfee Agent Activity Log/i,
14
16
  :paths => ["#{url}"]
15
17
  }
16
18
  ]
@@ -6,11 +6,13 @@ module Check
6
6
  def generate_checks(url)
7
7
  [
8
8
  {
9
- :name => "MediaWiki",
10
- :description => "MediaWiki",
11
- :type => :content_body,
9
+ :type => "application",
10
+ :vendor =>"MediaWiki",
11
+ :product =>"MediaWiki",
12
+ :match_details =>"MediaWiki",
13
+ :match_type => :content_body,
12
14
  :version => nil,
13
- :content => /<a href="\/\/www.mediawiki.org\/">Powered by MediaWiki<\/a>/,
15
+ :match_content => /<a href="\/\/www.mediawiki.org\/">Powered by MediaWiki<\/a>/,
14
16
  :paths => ["#{url}"]
15
17
  }
16
18
  ]
@@ -27,10 +29,10 @@ all_checks = [{
27
29
  :url => "#{url}",
28
30
  :checklist => [
29
31
  {
30
- :name => "Yoast Wordpress SEO Plugin", # won't be used if we have
31
- :description => "Yoast Wordpress SEO Plugin",
32
- :type => "content",
33
- :content => /<!-- \/ Yoast WordPress SEO plugin. -->/,
32
+ :product =>"Yoast Wordpress SEO Plugin", # won't be used if we have
33
+ :match_details =>"Yoast Wordpress SEO Plugin",
34
+ :match_type => "content",
35
+ :match_content => /<!-- \/ Yoast WordPress SEO plugin. -->/,
34
36
  :test_site => "https://ip-50-62-231-56.ip.secureserver.net",
35
37
  :dynamic_name => lambda{|x| x.scan(/the Yoast WordPress SEO plugin v.* - h/)[0].gsub("the ","").gsub(" - h","") }
36
38
  }
@@ -6,121 +6,183 @@ module Check
6
6
  def generate_checks(url)
7
7
  [
8
8
  {
9
- :name => "Microsoft ASP.NET",
10
- :description => "Microsoft ASP.NET",
9
+ :type => "application",
10
+ :vendor => "Microsoft",
11
+ :product =>"ASP.NET",
11
12
  :version => nil,
12
- :type => :content_headers,
13
- :content => /x-powered-by: ASP.NET/,
14
- :examples => ["http://info.nucor.com:80"],
13
+ :dynamic_version => lambda{|x| x["details"]["hidden_response_data"].scan(/ASP.NET Version:(.*)$/)[0].first.chomp },
14
+ :tags => ["error_page"],
15
+ :match_type => :content_body,
16
+ :match_content => /^.*ASP.NET is configured.*$/i,
17
+ :match_details =>"ASP.Net Error Message",
15
18
  :paths => ["#{url}"]
16
19
  },
17
20
  {
18
- :name => "Microsoft Forefront TMG",
19
- :description => "Microsoft Forefront Threat Management Gateway",
21
+ :type => "application",
22
+ :vendor => "Microsoft",
23
+ :product =>"ASP.NET",
20
24
  :version => nil,
21
- :type => :content_cookies,
22
- :content => /<title>Microsoft Forefront TMG/,
25
+ :dynamic_version => lambda{|x| x["details"]["hidden_response_data"].scan(/ASP.NET Version:(.*)$/i)[0].first.chomp if x["details"]["hidden_response_data"].scan(/ASP.NET Version:(.*)$/i)[0] },
26
+ :match_type => :content_headers,
27
+ :match_content => /^x-aspnet-version:.*$/i,
28
+ :match_details =>"X-AspNet Header",
23
29
  :paths => ["#{url}"]
24
30
  },
25
31
  {
26
- :name => "Microsoft Forefront TMG",
27
- :description => "Microsoft Forefront Threat Management Gateway",
32
+ :type => "application",
33
+ :vendor => "Microsoft",
34
+ :product =>"ASP.NET",
35
+ :match_details =>"Asp.Net Default Cookie",
28
36
  :version => nil,
29
- :type => :content_headers,
30
- :content => /via:\ 1.1\ TMGSRVR/,
37
+ :match_type => :content_cookies,
38
+ :match_content => /ASPSESSIONID.*$/i,
31
39
  :paths => ["#{url}"]
32
40
  },
33
41
  {
34
- :name => "Microsoft IIS 6.0",
35
- :description => "Microsoft IIS 6.0",
42
+ :type => "application",
43
+ :vendor => "Microsoft",
44
+ :product =>"ASP.NET",
45
+ :match_details =>"Asp.Net Default Cookie",
36
46
  :version => nil,
37
- :type => :content_headers,
38
- :content => /server: Microsoft-IIS\/6.0/,
39
- :examples => ["http://info.nucor.com:80"],
47
+ :match_type => :content_cookies,
48
+ :match_content => /ASP.NET_SessionId.*$/i,
40
49
  :paths => ["#{url}"]
41
50
  },
42
51
  {
43
- :name => "Microsoft IIS 7.0",
44
- :description => "Microsoft IIS 7.0",
52
+ :type => "application",
53
+ :vendor => "Microsoft",
54
+ :product =>"ASP.NET MVC",
55
+ :match_details =>"Asp.Net MVC Header",
45
56
  :version => nil,
46
- :type => :content_headers,
47
- :content => /server: Microsoft-IIS\/7.0/,
48
- :examples => ["http://205.145.65.110:80"],
57
+ :match_type => :content_headers,
58
+ :match_content => /x-aspnetmvc-version/i,
49
59
  :paths => ["#{url}"]
50
60
  },
51
61
  {
52
- :name => "Microsoft IIS 7.5",
53
- :description => "Microsoft IIS 7.5",
62
+ :type => "application",
63
+ :vendor => "Microsoft",
64
+ :product =>"ASP.NET",
65
+ :match_details =>"WebResource.axd link in the page",
54
66
  :version => nil,
55
- :type => :content_headers,
56
- :content => /server: Microsoft-IIS\/7.5/,
57
- :examples => ["http://168.75.243.138:80"],
67
+ :match_type => :content_body,
68
+ :match_content => /WebResource.axd?d=/i,
58
69
  :paths => ["#{url}"]
59
70
  },
60
71
  {
61
- :name => "Microsoft IIS 8.0",
62
- :description => "Microsoft IIS 8.0",
72
+ :type => "application",
73
+ :vendor => "Microsoft",
74
+ :product =>"ASP.NET",
75
+ :match_details =>"Microsoft ASP.NET",
63
76
  :version => nil,
64
- :type => :content_body,
65
- :content => /<img src=\"iis-8.png\"/,
66
- :examples => ["http://66.162.2.18:80"],
77
+ :match_type => :content_headers,
78
+ :match_content => /x-powered-by: ASP.NET/,
79
+ :examples => ["http://info.nucor.com:80"],
67
80
  :paths => ["#{url}"]
68
81
  },
69
82
  {
70
- :name => "Microsoft IIS 8.0",
71
- :description => "Microsoft IIS 8.0",
83
+ :type => "application",
84
+ :vendor => "Microsoft",
85
+ :product =>"Forefront TMG",
86
+ :match_details =>"Microsoft Forefront Threat Management Gateway",
72
87
  :version => nil,
73
- :type => :content_headers,
74
- :content => /server: Microsoft-IIS\/8.0/,
75
- :examples => ["http://freightmanager.nucornet.com:80"],
88
+ :match_type => :content_cookies,
89
+ :match_content => /<title>Microsoft Forefront TMG/,
76
90
  :paths => ["#{url}"]
77
91
  },
78
92
  {
79
- :name => "Microsoft IIS 8.5",
80
- :description => "Microsoft IIS 8.5",
93
+ :type => "application",
94
+ :vendor => "Microsoft",
95
+ :product =>"Forefront TMG",
96
+ :match_details =>"Microsoft Forefront Threat Management Gateway",
97
+ :version => nil,
98
+ :match_type => :content_headers,
99
+ :match_content => /via:\ 1.1\ TMGSRVR/,
100
+ :paths => ["#{url}"]
101
+ },
102
+
103
+ {
104
+ :type => "application",
105
+ :vendor => "Microsoft",
106
+ :product => "IIS",
107
+ :match_details =>"server header",
81
108
  :version => nil,
82
- :type => :content_body,
83
- :content => /<img src=\"iis-85.png\"/,
109
+ :dynamic_version => lambda { |x|
110
+ x["details"]["headers"].select{ |y|
111
+ y =~ /server: Microsoft-IIS/ }.first.match(
112
+ /server: Microsoft-IIS\/(.*)/).captures.first
113
+ },
114
+ :match_type => :content_headers,
115
+ :match_content => /server: Microsoft-IIS\//,
116
+ :examples => ["http://168.75.243.138:80","http://freightmanager.nucornet.com:80"],
117
+ :paths => ["#{url}"]
118
+ },
119
+ {
120
+ :type => "application",
121
+ :vendor => "Microsoft",
122
+ :product =>"IIS",
123
+ :match_details =>"Microsoft IIS 8.0",
124
+ :version => "8.0",
125
+ :match_type => :content_body,
126
+ :match_content => /<img src=\"iis-8.png\"/,
127
+ :examples => ["http://66.162.2.18:80"],
128
+ :paths => ["#{url}"]
129
+ },
130
+ {
131
+ :type => "application",
132
+ :vendor => "Microsoft",
133
+ :product =>"IIS",
134
+ :match_details =>"Microsoft IIS 8.5",
135
+ :version => "8.5",
136
+ :match_type => :content_body,
137
+ :match_content => /<img src=\"iis-85.png\"/,
84
138
  :examples => ["http://103.1.221.151:80"],
85
139
  :paths => ["#{url}"]
86
140
  },
87
141
  {
88
- :name => "Microsoft IIS Unauthorized (403)",
89
- :description => "Microsoft IIS Unauthorized",
142
+ :type => "application",
143
+ :vendor => "Microsoft",
144
+ :product =>"IIS",
145
+ :match_details =>"Microsoft IIS Unauthorized (403)",
90
146
  :tags => ["error_page"],
91
147
  :version => nil,
92
- :type => :content_body,
148
+ :match_type => :content_body,
93
149
  :hide => true,
94
- :content => /Error Code: 403 Forbidden. The server denied the specified Uniform Resource Locator \(URL\)/,
150
+ :match_content => /Error Code: 403 Forbidden. The server denied the specified Uniform Resource Locator \(URL\)/,
95
151
  :examples => ["http://199.233.74.45:80"],
96
152
  :paths => ["#{url}"]
97
153
  },
98
154
  {
99
- :name => "Microsoft IIS Missing Resource (404)",
100
- :description => "Microsoft IIS Missing Resource (404)",
155
+ :type => "application",
156
+ :vendor => "Microsoft",
157
+ :product =>"IIS",
158
+ :match_details =>"Microsoft IIS Missing Resource (404)",
101
159
  :tags => ["error_page"],
102
160
  :version => nil,
103
- :type => :content_body,
161
+ :match_type => :content_body,
104
162
  :hide => true,
105
- :content => /HTTP Error 404. The requested resource is not found./,
163
+ :match_content => /HTTP Error 404. The requested resource is not found./,
106
164
  :examples => ["http://66.162.2.74:80"],
107
165
  :paths => ["#{url}"]
108
166
  },
109
167
  {
110
- :name => "Microsoft Outlook Web Access",
111
- :description => "Microsoft Outlook Web Access",
168
+ :type => "application",
169
+ :vendor => "Microsoft",
170
+ :product =>"Outlook Web Access",
171
+ :match_details =>"Microsoft Outlook Web Access",
112
172
  :version => nil,
113
- :type => :content_headers,
114
- :content => /x-owa-version/,
173
+ :match_type => :content_headers,
174
+ :match_content => /x-owa-version/,
115
175
  :dynamic_version => lambda { |x| x["details"]["headers"].select{|y| y =~ /x-owa-version/}.first.split(":").last },
116
176
  :paths => ["#{url}"]
117
177
  },
118
178
  {
119
- :name => "Microsoft Outlook Web Access",
120
- :description => "Microsoft Outlook Web Access",
179
+ :type => "application",
180
+ :vendor => "Microsoft",
181
+ :product =>"Outlook Web Access",
182
+ :match_details =>"Microsoft Outlook Web Access",
121
183
  :version => nil,
122
- :type => :content_body,
123
- :content => /OwaPage\ =\ ASP.auth_logon_aspx/,
184
+ :match_type => :content_body,
185
+ :match_content => /OwaPage\ =\ ASP.auth_logon_aspx/,
124
186
  :dynamic_version => lambda { |x|
125
187
  m = x["details"]["hidden_response_data"].match(/href=\"\/owa\/auth\/(.*)\/themes\/resources\/favicon.ico/)
126
188
  return m.captures.first if m
@@ -128,23 +190,27 @@ module Check
128
190
  :paths => ["#{url}"]
129
191
  },
130
192
  {
131
- :name => "Microsoft Generic Error - 403",
132
- :description => "Microsoft Generic Error - 403",
193
+ :type => "application",
194
+ :vendor => "Microsoft",
195
+ :product =>"IIS",
196
+ :match_details =>"Microsoft IIS Generic Error - 403",
133
197
  :tags => ["error_page"],
134
198
  :version => nil,
135
- :type => :content_body,
199
+ :match_type => :content_body,
136
200
  :hide => true,
137
- :content => /403 Forbidden. The server denied the specified Uniform Resource Locator (URL)/,
201
+ :match_content => /403 Forbidden. The server denied the specified Uniform Resource Locator (URL)/,
138
202
  :paths => ["#{url}"]
139
203
  },
140
204
  {
141
- :name => "Microsoft Generic Error - 503",
142
- :description => "Microsoft Generic Error - 503",
205
+ :type => "application",
206
+ :vendor => "Microsoft",
207
+ :product =>"IIS",
208
+ :match_details =>"Microsoft Generic Error - 503",
143
209
  :tags => ["error_page"],
144
210
  :version => nil,
145
- :type => :content_body,
211
+ :match_type => :content_body,
146
212
  :hide => true,
147
- :content => /HTTP Error 503. The service is unavailable./,
213
+ :match_content => /HTTP Error 503. The service is unavailable./,
148
214
  :paths => ["#{url}"]
149
215
  }
150
216
  ]
@@ -6,11 +6,13 @@ module Check
6
6
  def generate_checks(url)
7
7
  [
8
8
  {
9
- :name => "Nagios",
10
- :description => "Nagios",
9
+ :type => "application",
10
+ :vendor => "Nagios",
11
+ :product =>"Nagios",
12
+ :match_details =>"Nagios",
11
13
  :version => nil,
12
- :type => :content_headers,
13
- :content => /nagios/i,
14
+ :match_type => :content_headers,
15
+ :match_content => /nagios/i,
14
16
  :paths => ["#{url}"]
15
17
  }
16
18
  ]
@@ -6,11 +6,13 @@ module Check
6
6
  def generate_checks(url)
7
7
  [
8
8
  {
9
- :name => "Nginx",
10
- :description => "Nginx",
9
+ :type => "application",
10
+ :vendor => "Nginx",
11
+ :product =>"Nginx",
12
+ :match_details =>"Nginx",
11
13
  :version => nil,
12
- :type => :content_headers,
13
- :content => /server: nginx/i,
14
+ :match_type => :content_headers,
15
+ :match_content => /server: nginx/i,
14
16
  :dynamic_version => lambda { |x| x["details"]["headers"].select{|h| h=~/nginx/}.first.split("/").last },
15
17
  :examples => ["https://api.appfire.com:443"],
16
18
  :paths => ["#{url}"]
@@ -6,24 +6,28 @@ module Check
6
6
  def generate_checks(url)
7
7
  [
8
8
  {
9
- :name => "Oracle Glassfish",
10
- :description => "Oracle / Sun GlassFish Enterprise Server",
9
+ :type => "application",
10
+ :vendor => "Oracle",
11
+ :product =>"Glassfish",
12
+ :match_details =>"Oracle / Sun GlassFish Enterprise Server",
11
13
  :url => "",
12
14
  :version => nil,
13
- :type => :content_headers,
14
- :content => /Sun GlassFish Enterprise Server/,
15
+ :match_type => :content_headers,
16
+ :match_content => /Sun GlassFish Enterprise Server/,
15
17
  :hide => true,
16
18
  :dynamic_version => lambda { |x| x["details"]["headers"].join("\n").match(/Sun GlassFish Enterprise Server v([\d\.])/).captures[0] },
17
19
  :examples => ["http://52.4.12.185/"],
18
20
  :paths => ["#{url}"]
19
21
  },
20
22
  {
21
- :name => "Oracle Glassfish",
22
- :description => "Oracle / Sun GlassFish Enterprise Server",
23
+ :type => "application",
24
+ :vendor => "Oracle",
25
+ :product =>"Glassfish",
26
+ :match_details =>"Oracle / Sun GlassFish Enterprise Server",
23
27
  :url => "",
24
28
  :version => nil,
25
- :type => :content_headers,
26
- :content => /GlassFish Server Open Source Edition/,
29
+ :match_type => :content_headers,
30
+ :match_content => /GlassFish Server Open Source Edition/,
27
31
  :hide => true,
28
32
  :dynamic_version => lambda { |x| x["details"]["headers"].join("\n").match(/GlassFish Server Open Source Edition\s+([\d\.]+)$/).captures[0] },
29
33
  :examples => ["http://52.2.97.57:80"],
@@ -6,12 +6,14 @@ module Check
6
6
  def generate_checks(uri)
7
7
  [
8
8
  {
9
- :name => "Palo Alto Networks GlobalProtect Portal",
9
+ :type => "application",
10
+ :vendor => "Palo Alto Networks",
11
+ :product =>"GlobalProtect Portal",
10
12
  :tags => ["tech:vpn"],
11
- :description => "Pardot",
13
+ :match_details =>"Pardot",
12
14
  :version => nil,
13
- :type => :content_body,
14
- :content => /global-protect\/login.esp/i,
15
+ :match_type => :content_body,
16
+ :match_content => /global-protect\/login.esp/i,
15
17
  :paths => ["#{uri}"]
16
18
  }
17
19
  ]