gengiscan 0.40.0 → 0.50.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -6,19 +6,22 @@ module Gengiscan
6
6
 
7
7
 
8
8
  attr_reader :res
9
+ attr_reader :body
9
10
 
10
11
 
11
12
 
12
13
  def initialize
13
14
  end
14
15
 
16
+
15
17
  def detect(url)
16
18
  uri = URI(url)
17
19
  begin
18
20
  res = Net::HTTP.get_response(uri)
19
- {:status=>:OK, :code=>res.code, :server=>res['Server'], :powered=>res['X-Powered-By'], :generator=>get_generator_signature(res)}
20
- rescue
21
- {:status=>:KO, :code=>nil, :server=>nil, :powered=>nil, :generator=>nil}
21
+ body = check_for_phpinfo(uri)
22
+ {:status=>:OK, :message=> nil, :code=>res.code, :server=>res['Server'], :powered=>res['X-Powered-By'], :generator=>get_generator_signature(res), :php_info=>! body.empty?}
23
+ rescue => e
24
+ {:status=>:KO, :message=>e.message, :code=>nil, :server=>nil, :powered=>nil, :generator=>nil, :php_info=>nil}
22
25
  end
23
26
  end
24
27
 
@@ -34,5 +37,23 @@ module Gengiscan
34
37
  generator
35
38
  end
36
39
 
40
+ def check_for_phpinfo(uri)
41
+ body = ""
42
+ r = Net::HTTP.get_response(URI("#{uri.scheme}://#{uri.host}:#{uri.port}/phpinfo.php"))
43
+ filename = "#{uri.host}_phpinfo.html"
44
+ body = r.body if r.code == "200"
45
+ r = Net::HTTP.get_response(URI("#{uri.scheme}://#{uri.host}:#{uri.port}/info.php")) if body.nil?
46
+ filename = "#{uri.host}_info.html" if body.nil?
47
+ body = r.body if r.code == "200"
48
+
49
+ f= File.new(filename, "w")
50
+ f.puts(body)
51
+ f.close
52
+
53
+
54
+ body
55
+ end
56
+
57
+
37
58
  end
38
59
  end
@@ -1,3 +1,3 @@
1
1
  module Gengiscan
2
- VERSION = "0.40.0"
2
+ VERSION = "0.50.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gengiscan
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.40.0
4
+ version: 0.50.0
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: 2012-07-21 00:00:00.000000000 Z
12
+ date: 2012-09-06 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nokogiri
@@ -111,7 +111,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
111
111
  version: '0'
112
112
  segments:
113
113
  - 0
114
- hash: -667058402699579580
114
+ hash: 742138534975512519
115
115
  required_rubygems_version: !ruby/object:Gem::Requirement
116
116
  none: false
117
117
  requirements:
@@ -120,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
120
120
  version: '0'
121
121
  segments:
122
122
  - 0
123
- hash: -667058402699579580
123
+ hash: 742138534975512519
124
124
  requirements: []
125
125
  rubyforge_project:
126
126
  rubygems_version: 1.8.24