ronin-dorks 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -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>��@�