watobo 0.9.13 → 0.9.14

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.
@@ -19,97 +19,9 @@
19
19
  # along with WATOBO; if not, write to the Free Software
20
20
  # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
21
  # .
22
- if $0 == __FILE__
23
- inc_path = File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "lib"))
24
- $: << inc_path
25
-
26
- require 'watobo'
27
- require 'fox16'
28
-
29
- include Fox
22
+ require_relative 'crawler.rb'
30
23
 
31
- # @private
32
- module Watobo#:nodoc: all
33
- module Gui
34
- @application = FXApp.new('LayoutTester', 'FoxTest')
35
-
36
- %w( load_icons gui_utils load_plugins session_history save_default_settings master_password session_history save_project_settings save_proxy_settings ).each do |l|
37
- f = File.join("watobo","gui","utils", l)
38
- require f
39
- #puts "Loading #{f}"
40
- end
41
-
42
- require 'watobo/gui/utils/init_icons'
43
-
44
- gui_path = File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "lib","watobo", "gui"))
45
-
46
- Dir.glob("#{gui_path}/*.rb").each do |cf|
47
- next if File.basename(cf) == 'main_window.rb' # skip main_window here, because it must be loaded last
48
- require File.join("watobo","gui", File.basename(cf))
49
- end
50
-
51
- require 'watobo/gui/templates/plugin'
52
- require 'watobo/gui/templates/plugin2'
53
- require File.join(File.expand_path(File.dirname(__FILE__)), "crawler")
54
-
55
- gui_path = File.join(File.expand_path(File.dirname(__FILE__)), "gui")
56
-
57
- %w( crawler_gui settings_tabbook general_settings_frame status_frame hooks_frame auth_frame scope_frame ).each do |l|
58
- #puts "Loading >> #{l}"
59
- require File.join(gui_path, l + ".rb")
60
- end
61
-
62
- if ARGV.length > 0
63
- url = ARGV[0]
64
- end
65
-
66
- class TestGui < FXMainWindow
67
-
68
- def initialize(app)
69
- # Call base class initializer first
70
- super(app, "Test Application", :width => 800, :height => 600)
71
- frame = FXVerticalFrame.new(self, LAYOUT_FILL_X|LAYOUT_FILL_Y|FRAME_GROOVE)
72
-
73
- button = FXButton.new(frame, "Open Plugin",:opts => FRAME_THICK|FRAME_RAISED|LAYOUT_FILL_X|LAYOUT_TOP|LAYOUT_LEFT,:padLeft => 10, :padRight => 10, :padTop => 5, :padBottom => 5)
74
- button.connect(SEL_COMMAND) {
75
-
76
- dlg = Watobo::Plugin::Crawler::Gui.new(self)
77
-
78
- if dlg.execute != 0
79
- puts dlg.details.to_yaml
80
- end
81
- }
82
- end
83
- # Create and show the main window
84
- def create
85
- super # Create the windows
86
- show(PLACEMENT_SCREEN) # Make the main window appear
87
- dlg = Watobo::Plugin::Crawler::Gui.new(self)
88
- dlg.set_tab_index 2
89
- prefs = { :form_auth_url => "http://www.google.com" }
90
- dlg.settings.auth.set prefs
91
-
92
- if dlg.execute != 0
93
- puts dlg.details.to_yaml
94
- end
95
- end
96
- end
97
- # application = FXApp.new('LayoutTester', 'FoxTest')
98
- TestGui.new(@application)
99
- @application.create
100
- @application.run
101
- end
102
- end
103
-
104
-
105
- else
106
-
107
- require File.join(File.expand_path(File.dirname(__FILE__)), "crawler")
108
-
109
- gui_path = File.join(File.expand_path(File.dirname(__FILE__)), "gui")
110
24
  %w( crawler_gui settings_tabbook general_settings_frame status_frame hooks_frame auth_frame scope_frame ).each do |l|
111
25
  #puts "Loading >> #{l}"
112
- require File.join(gui_path, l + ".rb")
26
+ require_relative File.join("gui", l)
113
27
  end
114
-
115
- end
@@ -181,8 +181,10 @@ false
181
181
  end
182
182
 
183
183
  def run(url, opts={})
184
+ @engine_status = CRAWL_RUNNING
185
+
184
186
  @opts.update opts
185
- @opts[:head_request_pattern] = '' if @opts[:head_request_pattern].nil?
187
+ @opts[:head_request_pattern] = '' if @opts[:head_request_pattern].nil?
186
188
 
187
189
  @link_queue = Queue.new
188
190
  @page_queue = Queue.new
@@ -214,7 +216,7 @@ puts "---"
214
216
  @grabber_threads << g.run
215
217
  end
216
218
 
217
- @engine_status = CRAWL_RUNNING
219
+ puts "* startet #{@grabber_threads.length} grabbers"
218
220
 
219
221
  loop do
220
222
  pagebag = @page_queue.deq
@@ -251,7 +253,8 @@ puts "---"
251
253
  private
252
254
 
253
255
  def current_status
254
- { :engine_status => @engine_status,
256
+ {
257
+ :engine_status => @engine_status,
255
258
  :link_size => @link_queue.size,
256
259
  :page_size => @page_queue.size
257
260
  }.update @stats
@@ -54,7 +54,7 @@ module Watobo#:nodoc: all
54
54
  end
55
55
 
56
56
  def run
57
- Thread.new(@link_queue, @page_queue){ |lq, pq|
57
+ @grab_thread = Thread.new(@link_queue, @page_queue){ |lq, pq|
58
58
  loop do
59
59
  begin
60
60
  #link, referer, depth = lq.deq
@@ -69,12 +69,15 @@ module Watobo#:nodoc: all
69
69
  end
70
70
  end
71
71
  }
72
+ @grab_thread
72
73
  end
73
74
 
74
75
  def initialize(link_queue, page_queue, opts = {} )
75
76
  @link_queue = link_queue
76
77
  @page_queue = page_queue
77
78
  @opts = opts
79
+ @grab_thread = nil
80
+
78
81
  begin
79
82
  @agent = Crawler::Agent.new(@opts)
80
83
 
@@ -34,8 +34,9 @@ module Watobo#:nodoc: all
34
34
 
35
35
  %w( load_icons gui_utils load_plugins session_history save_default_settings master_password session_history save_project_settings save_proxy_settings ).each do |l|
36
36
  f = File.join("watobo","gui","utils", l)
37
+ puts "SQLMap >> Loading #{f}"
37
38
  require f
38
- puts "Loading #{f}"
39
+
39
40
  end
40
41
 
41
42
  require 'watobo/gui/utils/init_icons'
@@ -19,9 +19,8 @@
19
19
  # along with WATOBO; if not, write to the Free Software
20
20
  # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
21
  # .
22
- require File.join(File.expand_path(File.dirname(__FILE__)), "sqlmap")
22
+ require_relative 'sqlmap'
23
23
 
24
- gui_path = File.join(File.expand_path(File.dirname(__FILE__)), "gui")
25
24
  %w( main options_frame ).each do |l|
26
- require File.join(gui_path, l + ".rb")
25
+ require_relative File.join('gui', l )
27
26
  end
@@ -19,8 +19,6 @@
19
19
  # along with WATOBO; if not, write to the Free Software
20
20
  # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
21
  # .
22
- path = File.expand_path(File.dirname(__FILE__))
23
-
24
22
  %w( sqlmap_ctrl ).each do |l|
25
- require File.join(path, "lib", l)
23
+ require_relative File.join("lib", l )
26
24
  end
@@ -19,8 +19,8 @@
19
19
  # along with WATOBO; if not, write to the Free Software
20
20
  # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
21
  # .
22
- path = File.expand_path(File.dirname(__FILE__))
22
+ #path = File.expand_path(File.dirname(__FILE__))
23
23
 
24
- require File.join(path, "..", "lib", "check.rb")
25
- require File.join(path, "cipher_table.rb")
26
- require File.join(path, "gui.rb")
24
+ require_relative File.join( "..", "lib", "check")
25
+ require_relative "cipher_table"
26
+ require_relative "gui"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: watobo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.13
4
+ version: 0.9.14
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-08-09 00:00:00.000000000 Z
12
+ date: 2013-09-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: mechanize
@@ -213,7 +213,6 @@ files:
213
213
  - lib/watobo/http_socket/connection.rb
214
214
  - lib/watobo/http_socket/http_socket.rb
215
215
  - lib/watobo/http_socket/ntlm_auth.rb
216
- - lib/watobo/http_socket/proxy.rb
217
216
  - lib/watobo/http_socket.rb
218
217
  - lib/watobo/interceptor/proxy.rb
219
218
  - lib/watobo/interceptor/transparent.rb
@@ -263,7 +262,6 @@ files:
263
262
  - modules/active/fileinclusion/lfi_simple.rb
264
263
  - modules/active/Flash/crossdomain.rb
265
264
  - modules/active/jboss/jboss_basic.rb
266
- - modules/active/RoR/cve_2013_015x.rb
267
265
  - modules/active/sap/its_commands.rb
268
266
  - modules/active/sap/its_services.rb
269
267
  - modules/active/sap/its_service_parameter.rb
@@ -1,31 +0,0 @@
1
- # .
2
- # proxy.rb
3
- #
4
- # Copyright 2013 by siberas, http://www.siberas.de
5
- #
6
- # This file is part of WATOBO (Web Application Tool Box)
7
- # http://watobo.sourceforge.com
8
- #
9
- # WATOBO is free software; you can redistribute it and/or modify
10
- # it under the terms of the GNU General Public License as published by
11
- # the Free Software Foundation version 2 of the License.
12
- #
13
- # WATOBO 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 WATOBO; if not, write to the Free Software
20
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
- # .
22
- # @private
23
- module Watobo#:nodoc: all
24
- module HTPSocket
25
- class Proxy
26
- def initialize()
27
-
28
- end
29
- end
30
- end
31
- end
@@ -1,21 +0,0 @@
1
- # .
2
- # cve_2013_015x.rb
3
- #
4
- # Copyright 2013 by siberas, http://www.siberas.de
5
- #
6
- # This file is part of WATOBO (Web Application Tool Box)
7
- # http://watobo.sourceforge.com
8
- #
9
- # WATOBO is free software; you can redistribute it and/or modify
10
- # it under the terms of the GNU General Public License as published by
11
- # the Free Software Foundation version 2 of the License.
12
- #
13
- # WATOBO 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 WATOBO; if not, write to the Free Software
20
- # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
21
- # .