ronin-dorks 0.1.1 → 0.1.2

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.
@@ -0,0 +1,4 @@
1
+ I�Rl�uWw�U{&/!�o1�K�ʦ
2
+ M�\'�� ڋ���.�[|�p�ĥ�OyzʠOl֊����8��C��
3
+ g��uK?�������2����*R X���oE-�
4
+ ��`��⧏�o��2b��׳��4&���B:+��kv�,M��Ly��1��@��\�vl����k{3V�"�!�X�1�s}���1��؝g[��xh|�P����>ex��2��ј��{�
@@ -1,3 +1,11 @@
1
+ === 0.1.2 / 2009-07-02
2
+
3
+ * Use Hoe >= 2.0.0.
4
+ * Added Web::Dorks.intext.
5
+ * Added Web::Dorks.allintext.
6
+ * Added Web::Dorks.string_intext.
7
+ * Added Web::Dorks.all_strings_intext.
8
+
1
9
  === 0.1.1 / 2009-02-23
2
10
 
3
11
  * Added a git style sub-command (<tt>ronin-dorks</tt>) which starts the
@@ -6,6 +6,9 @@ bin/ronin-dorks
6
6
  lib/ronin/dorks.rb
7
7
  lib/ronin/dorks/version.rb
8
8
  lib/ronin/web/dorks.rb
9
+ lib/ronin/web/dorks/dorks.rb
10
+ lib/ronin/web/dorks/index.rb
11
+ lib/ronin/web/dorks/documents.rb
9
12
  tasks/spec.rb
10
13
  spec/spec_helper.rb
11
14
  spec/dorks_spec.rb
data/README.txt CHANGED
@@ -40,8 +40,10 @@ of Ronin.
40
40
  == FEATURES/PROBLEMS:
41
41
 
42
42
  * Provides convenience methods for many common Google (tm) Dorks:
43
- * Search for URLs containing a specified string:
44
- * Search for URLs containing a specified pattern:
43
+ * Search for URLs containing a specified string.
44
+ * Search for URLs containing a specified pattern.
45
+ * Search for Pages containing a specified text string.
46
+ * Search for Pages containing a specified text pattern.
45
47
  * Search for Indexes of unprotected <tt>cgi-bin</tt> directories.
46
48
  * Search for unprotected MySQL dump files.
47
49
  * Search for unprotected MySQL dump files containing the password hash
@@ -74,6 +76,32 @@ of Ronin.
74
76
 
75
77
  $ ronin-dorks
76
78
 
79
+ == EXAMPLES:
80
+
81
+ * Search for URLs containing a pattern:
82
+
83
+ Web::Dorks.inurl('stmt=')
84
+
85
+ * Search for URLs containing all patterns:
86
+
87
+ Web::Dorks.allinurl(['show', 'php', 'page'])
88
+
89
+ * Search for pages containing the specified text in the title:
90
+
91
+ Web::Dorks.intitle('Profile')
92
+
93
+ * Search for pages containing all specified text in the title:
94
+
95
+ Web::Dorks.allintitle(['Profile', 'Edit'])
96
+
97
+ * Search for pages containing the specified text:
98
+
99
+ Web::Dorks.intext('Powered by')
100
+
101
+ * Search for pages containing all specified text:
102
+
103
+ Web::Dorks.allintext(['Powered by', '0.5'])
104
+
77
105
  == LICENSE:
78
106
 
79
107
  Ronin SQL - A Ruby library for Ronin that provides support for various
data/Rakefile CHANGED
@@ -2,16 +2,16 @@
2
2
 
3
3
  require 'rubygems'
4
4
  require 'hoe'
5
+ require 'hoe/signing'
5
6
  require './tasks/spec.rb'
6
- require './lib/ronin/dorks/version.rb'
7
7
 
8
- Hoe.new('ronin-dorks', Ronin::Dorks::VERSION) do |p|
9
- p.rubyforge_name = 'ronin'
10
- p.developer('Postmodern', 'postmodern.mod3@gmail.com')
11
- p.remote_rdoc_dir = 'docs/ronin-dorks'
12
- p.extra_deps = [
13
- ['ronin', '>=0.2.1'],
14
- ['ronin-web', '>=0.1.1'],
8
+ Hoe.spec('ronin-dorks') do
9
+ self.rubyforge_name = 'ronin'
10
+ self.developer('Postmodern', 'postmodern.mod3@gmail.com')
11
+ self.remote_rdoc_dir = 'docs/ronin-dorks'
12
+ self.extra_deps = [
13
+ ['ronin', '>=0.2.4'],
14
+ ['ronin-web', '>=0.1.2'],
15
15
  ['gscraper', '>=0.2.2']
16
16
  ]
17
17
  end
@@ -2,6 +2,11 @@
2
2
 
3
3
  require 'rubygems'
4
4
 
5
+ lib_dir = File.expand_path(File.join(File.dirname(__FILE__),'..','lib'))
6
+ unless $LOAD_PATH.include?(lib_dir)
7
+ $LOAD_PATH << lib_dir
8
+ end
9
+
5
10
  require 'ronin/ui/command_line/commands/console'
6
11
  require 'ronin/ui/console'
7
12
 
@@ -23,6 +23,6 @@
23
23
 
24
24
  module Ronin
25
25
  module Dorks
26
- VERSION = '0.1.1'
26
+ VERSION = '0.1.2'
27
27
  end
28
28
  end
@@ -21,176 +21,6 @@
21
21
  #++
22
22
  #
23
23
 
24
- require 'ronin/web/web'
25
- require 'ronin/extensions/uri'
26
- require 'ronin/formatting/digest'
27
-
28
- require 'json'
29
- require 'gscraper/search'
30
-
31
- module Ronin
32
- module Web
33
- module Dorks
34
- include GScraper
35
-
36
- #
37
- # Creates either a <tt>GScraper::Search::WebQuery</tt> or a
38
- # <tt>GScraper::Search::AJAXQuery</tt> with the given _options_.
39
- # If a _block_ is given, it will be passed the newly created
40
- # query object.
41
- #
42
- # _options_ may contain the following keys:
43
- # <tt>:ajax</tt>:: Specifies wether or not to create a
44
- # <tt>GScraper::Search::AJAXQuery</tt>.
45
- #
46
- def Dorks.search(options={},&block)
47
- if options[:ajax] == true
48
- return Search.ajax_query(options,&block)
49
- else
50
- return Search.query(options,&block)
51
- end
52
- end
53
-
54
- def Dorks.inurl(pattern,options={},&block)
55
- Dorks.search(options.merge(:inurl => pattern),&block)
56
- end
57
-
58
- def Dorks.string_inurl(string,options={},&block)
59
- Dorks.inurl("'#{string}'",options,&block)
60
- end
61
-
62
- def Dorks.allinurl(patterns,options={},&block)
63
- Dorks.search(options.merge(:allinurl => patterns),&block)
64
- end
65
-
66
- def Dorks.all_strings_inurl(patterns,options={},&block)
67
- Dorks.search(options.merge(:allinurl => patterns.map { |pattern|
68
- "'#{pattern}'"
69
- }),&block)
70
- end
71
-
72
- def Dorks.index_of(path=nil,options={},&block)
73
- if path
74
- options = options.merge(:intitle => "\"Index of #{path}\"")
75
- else
76
- options = options.merge(:intitle => '"Index of"')
77
- end
78
-
79
- return Dorks.search(options,&block)
80
- end
81
-
82
- def Dorks.index_of_cgi_bin(options={},&block)
83
- Dorks.index_of('/cgi-bin',&block)
84
- end
85
-
86
- def Dorks.index_with_file(name,options={},&block)
87
- Dorks.index_of(options.merge(:intext => "\"#{name}\""),&block)
88
- end
89
-
90
- def Dorks.index_with_sql(options={},&block)
91
- Dorks.index_of(options.merge(:intext => '".sql"'),&block)
92
- end
93
-
94
- def Dorks.sql_dump(options={},&block)
95
- query = []
96
-
97
- query << "Host: #{options[:host]}" if options[:host]
98
- query << "Database: #{options[:database]}" if options[:database]
99
- query << options[:version] if options[:version]
100
-
101
- query << "\"#{options[:sql]}\"" if options[:sql]
102
- query << options[:password].to_s.md5 if options[:password]
103
-
104
- return Dorks.search(options.merge(
105
- :query => query,
106
- :exact_phrase => '"SQL Dump"',
107
- :filetype => :sql
108
- ),&block)
109
- end
110
-
111
- def Dorks.sql_admin_dump(options={},&block)
112
- Dorks.sql_dump(options.merge(:password => 'admin'),&block)
113
- end
114
-
115
- def Dorks.cps(options={},&block)
116
- Dorks.search(options.merge(
117
- :exact_phrase => 'Certificate Practice Statement',
118
- :inurl => '(PDF | DOC)'
119
- ),&block)
120
- end
121
-
122
- def Dorks.vuln_report(options={},&block)
123
- Dorks.search(options.merge(
124
- :exact_phrase => 'Network Vulnerability Assessment'
125
- ),&block)
126
- end
127
-
128
- def Dorks.receipts(options={},&block)
129
- Dorks.search(options.merge(
130
- :exact_phrase => 'Thank you for your order',
131
- :with_words => ['receipt'],
132
- :filetype => :pdf
133
- ),&block)
134
- end
135
-
136
- def Dorks.robots_txt(options={},&block)
137
- Dorks.search(options.merge(
138
- :exact_phrase => 'robots.txt',
139
- :with_words => ['Disallow'],
140
- :filetype => :txt
141
- ),&block)
142
- end
143
-
144
- def Dorks.php_my_admin(options={},&block)
145
- Dorks.search(options.merge(
146
- :with_words => ['phpMyAdmin'],
147
- :exact_phrase => 'running on',
148
- :inurl => 'main.php'
149
- ),&block)
150
- end
151
-
152
- def Dorks.qbw(options={},&block)
153
- Dorks.search(options.merge(
154
- :query => 'qbw',
155
- :filetype => 'QBW'
156
- ),&block)
157
- end
158
-
159
- def Dorks.emails_xls(options={},&block)
160
- Dorks.search(options.merge(
161
- :filetype => 'xls',
162
- :inurl => '"email.xls"'
163
- ),&block)
164
- end
165
-
166
- def Dorks.index_for_finances_xls(options={},&block)
167
- Dorks.search(options.merge(
168
- :query => 'finances.xls',
169
- :intitle => '"Index of"'
170
- ),&block)
171
- end
172
-
173
- def Dorks.download_file(options={},&block)
174
- Dorks.search(options.merge(
175
- :allinurl => ['download.php?', 'file']
176
- ),&block)
177
- end
178
-
179
- def Dorks.download_pdf(options={},&block)
180
- Dorks.search(options.merge(
181
- :allinurl => [
182
- 'download.php?',
183
- 'file',
184
- '.pdf'
185
- ]
186
- ),&block)
187
- end
188
-
189
- def Dorks.sharepoint(options={},&block)
190
- Dorks.search(options.merge(
191
- :exact_phrase => 'all site content'
192
- ),&block)
193
- end
194
- end
195
- end
196
- end
24
+ require 'ronin/web/dorks/dorks'
25
+ require 'ronin/web/dorks/index'
26
+ require 'ronin/web/dorks/documents'
@@ -0,0 +1,65 @@
1
+ #
2
+ #--
3
+ # Ronin Dorks - A Ruby library for Ronin that provides support for various
4
+ # Google (tm) Dorks functionality.
5
+ #
6
+ # Copyright (c) 2008-2009 Hal Brodigan (postmodern.mod3 at gmail.com)
7
+ #
8
+ # This program is free software; you can redistribute it and/or modify
9
+ # it under the terms of the GNU General Public License as published by
10
+ # the Free Software Foundation; either version 2 of the License, or
11
+ # (at your option) any later version.
12
+ #
13
+ # This program is distributed in the hope that it will be useful,
14
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ # GNU General Public License for more details.
17
+ #
18
+ # You should have received a copy of the GNU General Public License
19
+ # along with this program; if not, write to the Free Software
20
+ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
+ #++
22
+ #
23
+
24
+ require 'ronin/web/dorks/dorks'
25
+
26
+ module Ronin
27
+ module Web
28
+ module Dorks
29
+ def Dorks.cps(options={},&block)
30
+ Dorks.search(options.merge(
31
+ :exact_phrase => 'Certificate Practice Statement',
32
+ :inurl => '(PDF | DOC)'
33
+ ),&block)
34
+ end
35
+
36
+ def Dorks.vuln_report(options={},&block)
37
+ Dorks.search(options.merge(
38
+ :exact_phrase => 'Network Vulnerability Assessment'
39
+ ),&block)
40
+ end
41
+
42
+ def Dorks.receipts(options={},&block)
43
+ Dorks.search(options.merge(
44
+ :exact_phrase => 'Thank you for your order',
45
+ :with_words => ['receipt'],
46
+ :filetype => :pdf
47
+ ),&block)
48
+ end
49
+
50
+ def Dorks.qbw(options={},&block)
51
+ Dorks.search(options.merge(
52
+ :query => 'qbw',
53
+ :filetype => 'QBW'
54
+ ),&block)
55
+ end
56
+
57
+ def Dorks.emails_xls(options={},&block)
58
+ Dorks.search(options.merge(
59
+ :filetype => 'xls',
60
+ :inurl => '"email.xls"'
61
+ ),&block)
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,230 @@
1
+ #
2
+ #--
3
+ # Ronin Dorks - A Ruby library for Ronin that provides support for various
4
+ # Google (tm) Dorks functionality.
5
+ #
6
+ # Copyright (c) 2008-2009 Hal Brodigan (postmodern.mod3 at gmail.com)
7
+ #
8
+ # This program is free software; you can redistribute it and/or modify
9
+ # it under the terms of the GNU General Public License as published by
10
+ # the Free Software Foundation; either version 2 of the License, or
11
+ # (at your option) any later version.
12
+ #
13
+ # This program is distributed in the hope that it will be useful,
14
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ # GNU General Public License for more details.
17
+ #
18
+ # You should have received a copy of the GNU General Public License
19
+ # along with this program; if not, write to the Free Software
20
+ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
+ #++
22
+ #
23
+
24
+ require 'ronin/web/web'
25
+ require 'ronin/extensions/uri'
26
+
27
+ require 'gscraper/search'
28
+ require 'digest/md5'
29
+
30
+ module Ronin
31
+ module Web
32
+ module Dorks
33
+ include GScraper
34
+
35
+ #
36
+ # Creates either a <tt>GScraper::Search::WebQuery</tt> or a
37
+ # <tt>GScraper::Search::AJAXQuery</tt> with the given _options_.
38
+ # If a _block_ is given, it will be passed the newly created
39
+ # query object.
40
+ #
41
+ # _options_ may contain the following keys:
42
+ # <tt>:ajax</tt>:: Specifies wether or not to create a
43
+ # <tt>GScraper::Search::AJAXQuery</tt>.
44
+ # <tt>:query</tt>:: The search query.
45
+ # <tt>:link</tt>:: Search for results which link to the specified
46
+ # URI.
47
+ # <tt>:related</tt>:: Search for results which relate to the
48
+ # specified URI.
49
+ # <tt>:info</tt>:: Return information about the specified URI.
50
+ # <tt>:site</tt>:: Limit results to the specified site.
51
+ # <tt>:filetype</tt>:: Limit results to those with the specified
52
+ # file-type.
53
+ # <tt>:allintitle</tt>:: Search for results with all of the keywords
54
+ # appearing in the title.
55
+ # <tt>:intitle</tt>:: Search for results with the keyword appearing
56
+ # in the title.
57
+ # <tt>:allintext</tt>:: Search for results with all of the keywords
58
+ # appearing in the text.
59
+ # <tt>:intext</tt>:: Search for results with the keyword appearing
60
+ # in the text.
61
+ # <tt>:allinanchor</tt>:: Search for results with all of the keywords
62
+ # appearing in the text of links.
63
+ # <tt>:inanchor</tt>:: Search for results with the keyword appearing
64
+ # in the text of links.
65
+ # <tt>:exact_phrase</tt>:: Search for results containing the specified
66
+ # exact phrase.
67
+ # <tt>:with_words</tt>:: Search for results containing all of the
68
+ # specified words.
69
+ # <tt>:without_words</tt>:: Search for results not containing any of
70
+ # the specified words.
71
+ # <tt>:numeric_range</tt>:: Search for results contain numbers that
72
+ # fall within the specified Range.
73
+ # <tt>:define</tt>:: Search for results containing the definition of
74
+ # the specified keyword.
75
+ #
76
+ # If the <tt>:ajax</tt> option is not specified, then _options_
77
+ # may contain the following additional keys:
78
+ # <tt>:results_per_page</tt>:: Specifies the number of results
79
+ # for each page.
80
+ # <tt>:language</tt>:: Search for results in the specified language.
81
+ # <tt>:region</tt>:: Search for results from the specified region.
82
+ # <tt>:within_past_day</tt>:: Search for results that were created
83
+ # within the past day.
84
+ # <tt>:within_past_week</tt>:: Search for results that were created
85
+ # within the past week.
86
+ # <tt>:within_past_month</tt>:: Search for results that were created
87
+ # within the past month.
88
+ # <tt>:within_past_year</tt>:: Search for results that were created
89
+ # within the past year.
90
+ # <tt>:occurrs_within</tt>::
91
+ # <tt>:rights</tt>:: Search for results licensed under the specified
92
+ # license.
93
+ # <tt>:filtered</tt>:: Specifies whether or not to use SafeSearch.
94
+ # Defaults to +false+, if not specified.
95
+ #
96
+ # If the <tt>:ajax</tt> option is specified, then _options_
97
+ # may contain the following additional keys:
98
+ # <tt>:language</tt>:: The search language. Defaults to <tt>:en</tt>.
99
+ # <tt>:sig</tt>:: The search signature. Defaults to
100
+ # <tt>582c1116317355adf613a6a843f19ece</tt>.
101
+ # <tt>:key</tt>:: The search key. Defaults to <tt>:notsupplied</tt>.
102
+ # <tt>:version</tt>:: The desired API version. Defaults to
103
+ # <tt>1.0</tt>.
104
+ #
105
+ def Dorks.search(options={},&block)
106
+ if options[:ajax] == true
107
+ return Search.ajax_query(options,&block)
108
+ else
109
+ return Search.query(options,&block)
110
+ end
111
+ end
112
+
113
+ def Dorks.intext(pattern,options={},&block)
114
+ Dorks.search(options.merge(:intext => pattern),&block)
115
+ end
116
+
117
+ def Dorks.allintext(pattern,options={},&block)
118
+ Dorks.search(options.merge(:allintext => pattern),&block)
119
+ end
120
+
121
+ def Dorks.string_intext(string,options={},&block)
122
+ Dorks.intext("'#{string}'",options,&block)
123
+ end
124
+
125
+ def Dorks.all_strings_intext(strings,options={},&block)
126
+ Dorks.search(options.merge(:allintext => strings.map { |string|
127
+ "'#{string}'"
128
+ }),&block)
129
+ end
130
+
131
+ def Dorks.intitle(pattern,options={},&block)
132
+ Dorks.search(options.merge(:intitle => pattern),&block)
133
+ end
134
+
135
+ def Dorks.string_intitle(string,options={},&block)
136
+ Dorks.intitle("'#{string}'",options,&block)
137
+ end
138
+
139
+ def Dorks.allintitle(patterns,options={},&block)
140
+ Dorks.search(options.merge(:allintitle => patterns),&block)
141
+ end
142
+
143
+ def Dorks.all_strings_inurl(strings,options={},&block)
144
+ Dorks.search(options.merge(:allintitle => strings.map { |string|
145
+ "'#{string}'"
146
+ }),&block)
147
+ end
148
+
149
+ def Dorks.inurl(pattern,options={},&block)
150
+ Dorks.search(options.merge(:inurl => pattern),&block)
151
+ end
152
+
153
+ def Dorks.string_inurl(string,options={},&block)
154
+ Dorks.inurl("'#{string}'",options,&block)
155
+ end
156
+
157
+ def Dorks.allinurl(patterns,options={},&block)
158
+ Dorks.search(options.merge(:allinurl => patterns),&block)
159
+ end
160
+
161
+ def Dorks.all_strings_inurl(strings,options={},&block)
162
+ Dorks.search(options.merge(:allinurl => strings.map { |string|
163
+ "'#{string}'"
164
+ }),&block)
165
+ end
166
+
167
+ def Dorks.sql_dump(options={},&block)
168
+ query = []
169
+
170
+ query << "Host: #{options[:host]}" if options[:host]
171
+ query << "Database: #{options[:database]}" if options[:database]
172
+ query << options[:version] if options[:version]
173
+
174
+ query << "\"#{options[:sql]}\"" if options[:sql]
175
+
176
+ if options[:password]
177
+ query << Digest::MD5.hexdigest(options[:password].to_s)
178
+ end
179
+
180
+ return Dorks.search(options.merge(
181
+ :query => query,
182
+ :exact_phrase => '"SQL Dump"',
183
+ :filetype => :sql
184
+ ),&block)
185
+ end
186
+
187
+ def Dorks.sql_admin_dump(options={},&block)
188
+ Dorks.sql_dump(options.merge(:password => 'admin'),&block)
189
+ end
190
+
191
+ def Dorks.robots_txt(options={},&block)
192
+ Dorks.search(options.merge(
193
+ :exact_phrase => 'robots.txt',
194
+ :with_words => ['Disallow'],
195
+ :filetype => :txt
196
+ ),&block)
197
+ end
198
+
199
+ def Dorks.php_my_admin(options={},&block)
200
+ Dorks.search(options.merge(
201
+ :with_words => ['phpMyAdmin'],
202
+ :exact_phrase => 'running on',
203
+ :inurl => 'main.php'
204
+ ),&block)
205
+ end
206
+
207
+ def Dorks.download_file(options={},&block)
208
+ Dorks.search(options.merge(
209
+ :allinurl => ['download.php?', 'file']
210
+ ),&block)
211
+ end
212
+
213
+ def Dorks.download_pdf(options={},&block)
214
+ Dorks.search(options.merge(
215
+ :allinurl => [
216
+ 'download.php?',
217
+ 'file',
218
+ '.pdf'
219
+ ]
220
+ ),&block)
221
+ end
222
+
223
+ def Dorks.sharepoint(options={},&block)
224
+ Dorks.search(options.merge(
225
+ :exact_phrase => 'all site content'
226
+ ),&block)
227
+ end
228
+ end
229
+ end
230
+ end
@@ -0,0 +1,59 @@
1
+ #
2
+ #--
3
+ # Ronin Dorks - A Ruby library for Ronin that provides support for various
4
+ # Google (tm) Dorks functionality.
5
+ #
6
+ # Copyright (c) 2008-2009 Hal Brodigan (postmodern.mod3 at gmail.com)
7
+ #
8
+ # This program is free software; you can redistribute it and/or modify
9
+ # it under the terms of the GNU General Public License as published by
10
+ # the Free Software Foundation; either version 2 of the License, or
11
+ # (at your option) any later version.
12
+ #
13
+ # This program is distributed in the hope that it will be useful,
14
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
15
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
+ # GNU General Public License for more details.
17
+ #
18
+ # You should have received a copy of the GNU General Public License
19
+ # along with this program; if not, write to the Free Software
20
+ # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
+ #++
22
+ #
23
+
24
+ require 'ronin/web/dorks/dorks'
25
+
26
+ module Ronin
27
+ module Web
28
+ module Dorks
29
+ def Dorks.index_of(path=nil,options={},&block)
30
+ if path
31
+ options = options.merge(:intitle => "\"Index of #{path}\"")
32
+ else
33
+ options = options.merge(:intitle => '"Index of"')
34
+ end
35
+
36
+ return Dorks.search(options,&block)
37
+ end
38
+
39
+ def Dorks.index_of_cgi_bin(options={},&block)
40
+ Dorks.index_of('/cgi-bin',&block)
41
+ end
42
+
43
+ def Dorks.index_with_file(name,options={},&block)
44
+ Dorks.index_of(options.merge(:intext => "\"#{name}\""),&block)
45
+ end
46
+
47
+ def Dorks.index_with_sql(options={},&block)
48
+ Dorks.index_of(options.merge(:intext => '".sql"'),&block)
49
+ end
50
+
51
+ def Dorks.index_for_finances_xls(options={},&block)
52
+ Dorks.search(options.merge(
53
+ :query => 'finances.xls',
54
+ :intitle => '"Index of"'
55
+ ),&block)
56
+ end
57
+ end
58
+ end
59
+ end
@@ -1,5 +1,5 @@
1
1
  require 'rubygems'
2
- gem 'rspec', '>=1.1.3'
2
+ gem 'rspec', '>=1.1.12'
3
3
  require 'spec'
4
4
 
5
5
  include Ronin
metadata CHANGED
@@ -1,15 +1,36 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ronin-dorks
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Postmodern
8
8
  autorequire:
9
9
  bindir: bin
10
- cert_chain: []
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDQDCCAiigAwIBAgIBADANBgkqhkiG9w0BAQUFADBGMRgwFgYDVQQDDA9wb3N0
14
+ bW9kZXJuLm1vZDMxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixk
15
+ ARkWA2NvbTAeFw0wOTA2MDMwNDU5MDNaFw0xMDA2MDMwNDU5MDNaMEYxGDAWBgNV
16
+ BAMMD3Bvc3Rtb2Rlcm4ubW9kMzEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYK
17
+ CZImiZPyLGQBGRYDY29tMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA
18
+ 1wvANkTDHFgVih5XLjuTwTZjgBq1lBGybXJiH6Id1lY2JOMqM5FB1DDHVvvij94i
19
+ mJabN0zkzu6VKWC70y0IwOxY7CPokr0eFdK/D0y7mCq1P8QITv76i2YqAl0eYqIt
20
+ W+IhIkANQ7E6uMZIZcdnfadC6lPAtlKkqtd9crvRbFgr6e3kyflmohbRnTEJHoRd
21
+ 7SHHsybE6DSn7oTDs6XBTNrNIn5VfZA0z01eeos/+zBm1zKJOK2+/7xtLLDuDU9G
22
+ +Rd+ltUBbvxUrMNZmDG29pnmN2xTRH+Q8HxD2AxlvM5SRpK6OeZaHV7PaCCAVZ4L
23
+ T9BFl1sfMvRlABeGEkSyuQIDAQABozkwNzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIE
24
+ sDAdBgNVHQ4EFgQUKwsd+PqEYmBvyaTyoL+uRuk+PhEwDQYJKoZIhvcNAQEFBQAD
25
+ ggEBAB4TvHsrlbcXcKg6gX5BIb9tI+zGkpzo0Z7jnxMEcNO7NGGwmzafDBI/xZYv
26
+ xkRH3/HXbGGYDOi6Q6gWt5GujSx0bOImDtYTJTH8jnzN92HzEK5WdScm1QpZKF1e
27
+ cezArMbxbSPaosxTCtG6LQTkE28lFQsmFZ5xzouugS4h5+LVJiVMmiP+l3EfkjFa
28
+ GOURU+rNEMPWo8MCWivGW7jes6BMzWHcW7DQ0scNVmIcCIgdyMmpscuAEOSeghy9
29
+ /fFs57Ey2OXBL55nDOyvN/ZQ2Vab05UH4t+GCxjAPeirzL/29FBtePT6VD44c38j
30
+ pDj+ws7QjtH/Qcrr1l9jfN0ehDs=
31
+ -----END CERTIFICATE-----
11
32
 
12
- date: 2009-02-23 00:00:00 -08:00
33
+ date: 2009-07-08 00:00:00 -07:00
13
34
  default_executable:
14
35
  dependencies:
15
36
  - !ruby/object:Gem::Dependency
@@ -20,7 +41,7 @@ dependencies:
20
41
  requirements:
21
42
  - - ">="
22
43
  - !ruby/object:Gem::Version
23
- version: 0.2.1
44
+ version: 0.2.4
24
45
  version:
25
46
  - !ruby/object:Gem::Dependency
26
47
  name: ronin-web
@@ -30,7 +51,7 @@ dependencies:
30
51
  requirements:
31
52
  - - ">="
32
53
  - !ruby/object:Gem::Version
33
- version: 0.1.1
54
+ version: 0.1.2
34
55
  version:
35
56
  - !ruby/object:Gem::Dependency
36
57
  name: gscraper
@@ -50,9 +71,15 @@ dependencies:
50
71
  requirements:
51
72
  - - ">="
52
73
  - !ruby/object:Gem::Version
53
- version: 1.8.3
74
+ version: 2.3.2
54
75
  version:
55
- description: Ronin Dorks is a Ruby library for Ronin that provides support for various Google (tm) Dorks functionality. Ronin is a Ruby platform designed for information security and data exploration tasks. Ronin allows for the rapid development and distribution of code over many of the common Source-Code-Management (SCM) systems.
76
+ description: |-
77
+ Ronin Dorks is a Ruby library for Ronin that provides support for various
78
+ Google (tm) Dorks functionality.
79
+
80
+ Ronin is a Ruby platform designed for information security and data
81
+ exploration tasks. Ronin allows for the rapid development and distribution
82
+ of code over many of the common Source-Code-Management (SCM) systems.
56
83
  email:
57
84
  - postmodern.mod3@gmail.com
58
85
  executables:
@@ -72,11 +99,16 @@ files:
72
99
  - lib/ronin/dorks.rb
73
100
  - lib/ronin/dorks/version.rb
74
101
  - lib/ronin/web/dorks.rb
102
+ - lib/ronin/web/dorks/dorks.rb
103
+ - lib/ronin/web/dorks/index.rb
104
+ - lib/ronin/web/dorks/documents.rb
75
105
  - tasks/spec.rb
76
106
  - spec/spec_helper.rb
77
107
  - spec/dorks_spec.rb
78
108
  has_rdoc: true
79
109
  homepage: http://ronin.rubyforge.org/dorks/
110
+ licenses: []
111
+
80
112
  post_install_message:
81
113
  rdoc_options:
82
114
  - --main
@@ -98,9 +130,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
98
130
  requirements: []
99
131
 
100
132
  rubyforge_project: ronin
101
- rubygems_version: 1.3.1
133
+ rubygems_version: 1.3.4
102
134
  signing_key:
103
- specification_version: 2
135
+ specification_version: 3
104
136
  summary: Ronin Dorks is a Ruby library for Ronin that provides support for various Google (tm) Dorks functionality
105
137
  test_files: []
106
138
 
@@ -0,0 +1,2 @@
1
+ +�^��?�J_���*�~x��� R�
2
+ v��d.���:\����d�ʷ�=�h���T��Pz�W.��&�%��)�+��;P7N�6oLff���h�=ҙ��kQEl7 !v|j /P%=O8 6��}6ﳒ��M[M����,����G>��@�