intrigue-ident 0.4 → 0.6

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 (103) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +0 -1
  3. data/Gemfile.lock +0 -6
  4. data/data/logos/apache.png +0 -0
  5. data/data/logos/generic.png +0 -0
  6. data/data/logos/oracle_java.png +0 -0
  7. data/data/logos/php.png +0 -0
  8. data/data/logos/varnish.png +0 -0
  9. data/intrigue-ident.gemspec +2 -2
  10. data/lib/checks/acquia.rb +26 -0
  11. data/lib/checks/adobe.rb +38 -0
  12. data/lib/checks/akamai.rb +6 -4
  13. data/lib/checks/amazon.rb +54 -8
  14. data/lib/checks/apache.rb +113 -0
  15. data/lib/checks/aruba.rb +6 -3
  16. data/lib/checks/atlassian.rb +46 -28
  17. data/lib/checks/automattic.rb +189 -0
  18. data/lib/checks/axis.rb +24 -0
  19. data/lib/checks/banu.rb +28 -0
  20. data/lib/checks/base.rb +58 -0
  21. data/lib/checks/checkpoint.rb +55 -0
  22. data/lib/checks/chef.rb +16 -12
  23. data/lib/checks/cisco.rb +85 -12
  24. data/lib/checks/citrix.rb +81 -6
  25. data/lib/checks/cloudflare.rb +40 -30
  26. data/lib/checks/cpanel.rb +8 -6
  27. data/lib/checks/craft.rb +25 -0
  28. data/lib/checks/django.rb +8 -6
  29. data/lib/checks/docuwiki.rb +25 -0
  30. data/lib/checks/drupal.rb +25 -8
  31. data/lib/checks/f5.rb +35 -7
  32. data/lib/checks/fastly.rb +22 -7
  33. data/lib/checks/generic.rb +34 -6
  34. data/lib/checks/gitlab.rb +12 -6
  35. data/lib/checks/google.rb +19 -6
  36. data/lib/checks/grafana.rb +8 -6
  37. data/lib/checks/groovy.rb +24 -0
  38. data/lib/checks/heroku.rb +27 -0
  39. data/lib/checks/hp.rb +25 -0
  40. data/lib/checks/ibm.rb +77 -0
  41. data/lib/checks/ivanti.rb +27 -0
  42. data/lib/checks/jamf.rb +26 -0
  43. data/lib/checks/jekyll.rb +28 -0
  44. data/lib/checks/jenkins.rb +24 -18
  45. data/lib/checks/jive.rb +25 -0
  46. data/lib/checks/jobvite.rb +25 -0
  47. data/lib/checks/joomla.rb +9 -6
  48. data/lib/checks/jupyter.rb +26 -0
  49. data/lib/checks/lighttpd.rb +28 -0
  50. data/lib/checks/limesuvey.rb +8 -6
  51. data/lib/checks/lithium.rb +15 -11
  52. data/lib/checks/lotus.rb +27 -0
  53. data/lib/checks/magento.rb +8 -6
  54. data/lib/checks/mailchimp.rb +25 -0
  55. data/lib/checks/mcafee.rb +8 -6
  56. data/lib/checks/mediawiki.rb +31 -32
  57. data/lib/checks/microsoft.rb +240 -34
  58. data/lib/checks/microtik.rb +27 -0
  59. data/lib/checks/nagios.rb +8 -6
  60. data/lib/checks/new_relic.rb +25 -0
  61. data/lib/checks/nginx.rb +40 -0
  62. data/lib/checks/okta.rb +25 -0
  63. data/lib/checks/ookla.rb +27 -0
  64. data/lib/checks/openresty.rb +25 -0
  65. data/lib/checks/oracle.rb +208 -17
  66. data/lib/checks/palo_alto.rb +6 -4
  67. data/lib/checks/pantheon.rb +26 -0
  68. data/lib/checks/pardot.rb +8 -6
  69. data/lib/checks/perfectsense.rb +27 -0
  70. data/lib/checks/pfsense.rb +8 -9
  71. data/lib/checks/php.rb +41 -0
  72. data/lib/checks/phpmyadmin.rb +8 -6
  73. data/lib/checks/ping_identity.rb +27 -0
  74. data/lib/checks/pivotal.rb +24 -0
  75. data/lib/checks/plesk.rb +41 -0
  76. data/lib/checks/pulse_secure.rb +27 -0
  77. data/lib/checks/rabbitmq.rb +15 -11
  78. data/lib/checks/restlet.rb +28 -0
  79. data/lib/checks/ruckus_wireless.rb +24 -0
  80. data/lib/checks/sailpoint.rb +27 -0
  81. data/lib/checks/sap.rb +43 -0
  82. data/lib/checks/tableau.rb +26 -0
  83. data/lib/checks/team_city.rb +8 -6
  84. data/lib/checks/telerik.rb +23 -8
  85. data/lib/checks/varnish.rb +8 -11
  86. data/lib/checks/vmware.rb +38 -0
  87. data/lib/checks/webmin.rb +41 -0
  88. data/lib/checks/wp_engine.rb +10 -6
  89. data/lib/checks/yaws.rb +29 -0
  90. data/lib/checks/zeit.rb +28 -0
  91. data/lib/checks/zendesk.rb +39 -0
  92. data/lib/checks/zimbra.rb +24 -0
  93. data/lib/checks/zscaler.rb +28 -0
  94. data/{ident.rb → lib/intrigue-ident.rb} +66 -32
  95. data/lib/traverse_exceptions.rb +196 -0
  96. data/util/check.rb +20 -0
  97. data/util/list.rb +9 -0
  98. metadata +58 -9
  99. data/lib/checks/asp_net.rb +0 -70
  100. data/lib/checks/cloudfront.rb +0 -41
  101. data/lib/checks/spring.rb +0 -31
  102. data/lib/checks/tomcat.rb +0 -22
  103. data/lib/checks/wordpress.rb +0 -120
data/lib/checks/spring.rb DELETED
@@ -1,31 +0,0 @@
1
- module Intrigue
2
- module Ident
3
- module Check
4
- class Spring < Intrigue::Ident::Check::Base
5
-
6
- def generate_checks(uri)
7
- [
8
- {
9
- :name => "Spring",
10
- :description => "Standard Spring Error Message",
11
- :type => :content_body,
12
- :version => nil,
13
- :content => /{"timestamp":\d.*,"status":999,"error":"None","message":"No message available"}/,
14
- :references => ["https://github.com/spring-projects/spring-boot"],
15
- :paths => ["#{uri}/donotbealarmedthisisjusttestingagenericerrorpage"]
16
- },
17
- {
18
- :name => "Spring",
19
- :description => "Standard Spring MVC error page",
20
- :type => :content_body,
21
- :version => nil,
22
- :content => /{"timestamp":\d.*,"status":999,"error":"None","message":"No message available"}/,
23
- :paths => ["#{uri}/error.json"]
24
- }
25
- ]
26
- end
27
-
28
- end
29
- end
30
- end
31
- end
data/lib/checks/tomcat.rb DELETED
@@ -1,22 +0,0 @@
1
- module Intrigue
2
- module Ident
3
- module Check
4
- class Tomcat < Intrigue::Ident::Check::Base
5
-
6
- def generate_checks(uri)
7
- [
8
- {
9
- :name => "Apache Tomcat",
10
- :description => "Tomcat Application Server",
11
- :type => :content_body,
12
- :version => nil,
13
- :content => /<title>Apache Tomcat/,
14
- :dynamic_version => lambda{|x| x.body.scan(/<title>(.*)<\/title>/)[0].first.gsub("Apache Tomcat/","").gsub(" - Error report","").chomp },
15
- :paths => ["#{uri}"]
16
- }
17
- ]
18
- end
19
- end
20
- end
21
- end
22
- end
@@ -1,120 +0,0 @@
1
- module Intrigue
2
- module Ident
3
- module Check
4
- class Wordpress < Intrigue::Ident::Check::Base
5
-
6
- def generate_checks(uri)
7
- [
8
- {
9
- :name => "Wordpress",
10
- :description => "Wordpress WP-JSON endpoint",
11
- :version => nil,
12
- :type => :content_body,
13
- :content => /gmt_offset/,
14
- :paths => ["#{uri}/wp-json"]
15
- },
16
- {
17
- :name => "Wordpress",
18
- :description => "Wordpress TinyMCE Editor",
19
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
20
- :version => "2.0",
21
- :type => :checksum_body,
22
- :checksum => "a306a72ce0f250e5f67132dc6bcb2ccb",
23
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
24
- },
25
- {
26
- :name => "Wordpress",
27
- :description => "Wordpress TinyMCE Editor",
28
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
29
- :version => "2.1",
30
- :type => :checksum_body,
31
- :checksum => "4f04728cb4631a553c4266c14b9846aa",
32
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
33
- },
34
- {
35
- :name => "Wordpress",
36
- :description => "Wordpress TinyMCE Editor",
37
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
38
- :version => "2.2",
39
- :type => :checksum_body,
40
- :checksum => "25e1e78d5b0c221e98e14c6e8c62084f",
41
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
42
- },
43
- {
44
- :name => "Wordpress",
45
- :description => "Wordpress TinyMCE Editor",
46
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
47
- :version => "2.3",
48
- :type => :checksum_body,
49
- :checksum => "83c83d0f0a71bd57c320d93e59991c53",
50
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
51
- },
52
- {
53
- :name => "Wordpress",
54
- :description => "Wordpress TinyMCE Editor",
55
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
56
- :version => "2.5",
57
- :type => :checksum_body,
58
- :checksum => "7293453cf0ff5a9a4cfe8cebd5b5a71a",
59
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
60
- },
61
- {
62
- :name => "Wordpress",
63
- :description => "Wordpress TinyMCE Editor",
64
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
65
- :version => "2.6",
66
- :type => :checksum_body,
67
- :checksum => "61740709537bd19fb6e03b7e11eb8812",
68
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
69
- },
70
- {
71
- :name => "Wordpress",
72
- :description => "Wordpress TinyMCE Editor",
73
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
74
- :version => "2.7",
75
- :type => :checksum_body,
76
- :checksum => "e6bbc53a727f3af003af272fd229b0b2",
77
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
78
- },
79
- {
80
- :name => "Wordpress",
81
- :description => "Wordpress TinyMCE Editor",
82
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
83
- :version => "2.7.1",
84
- :type =>:checksum_body,
85
- :checksum => "e6bbc53a727f3af003af272fd229b0b2",
86
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
87
- },
88
- {
89
- :name => "Wordpress",
90
- :description => "Wordpress TinyMCE Editor",
91
- :references => ["https://dcid.me/texts/fingerprinting-web-apps.html"],
92
- :version => "2.9.1",
93
- :type => :checksum_body,
94
- :checksum => "128e75ed19d49a94a771586bf83265ec",
95
- :paths => ["#{uri}/wp-includes/js/tinymce/tiny_mce.js"]
96
- }
97
- ]
98
- end
99
-
100
-
101
- =begin
102
- all_checks = [{
103
- :uri => "#{uri}",
104
- :checklist => [
105
- {
106
- :name => "Yoast Wordpress SEO Plugin", # won't be used if we have
107
- :description => "Yoast Wordpress SEO Plugin",
108
- :type => "content",
109
- :content => /<!-- \/ Yoast WordPress SEO plugin. -->/,
110
- :test_site => "https://ip-50-62-231-56.ip.secureserver.net",
111
- :dynamic_name => lambda{|x| x.scan(/the Yoast WordPress SEO plugin v.* - h/)[0].gsub("the ","").gsub(" - h","") }
112
- }
113
- ]},
114
- =end
115
-
116
-
117
- end
118
- end
119
- end
120
- end