wpscan 3.8.16 → 3.8.17

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5a0b4c94506cabb2e0e6363ef3d9287d65fda78e47c6fc35272d600df532d964
4
- data.tar.gz: 67b2b4c373efaad655a3cbb7c666e8e21ff71306611fee28efdfc70e1cb7ed44
3
+ metadata.gz: 8fd0e8ef31b7a0ec70d1b93c3c70a2e2d62278e7f8e1fd5bdf01ddcc86056a34
4
+ data.tar.gz: c6309c4e33474ad9b8f27db9c8fe7ac11439dbd131bf5931fd21457b8477e390
5
5
  SHA512:
6
- metadata.gz: cb558302c8dd13327816a1ee456763ffbbd66cefc28051ed0fd15ee1eaf41775652552a08be1af125d4d43f536f960f23fe9675b97040ef071950c230c6cf059
7
- data.tar.gz: f89c89415dbb34b7c8a99f3876914a44a602ae23cde638b649bf1b1fa3d10bc9c0fbd19bed827f9841cb9d7324ad1e4c5b564ba3027ab94ec2ce56cc754e08c0
6
+ metadata.gz: 7d647b59ec39d73f08bd72cf090ae324c91a28e9799d6e65070f3c97bdd279f007ccf561bd23787553770bd49957ddc133592484a79cac9bc99b53049f8e4d90
7
+ data.tar.gz: ac0aa133d13b5365b25714222fa46684a6380cd9dc25832ba90c27e28303d18d133adf768f11777af9eb653e4ee4fbd945e56982943798135a77cf232e218802
@@ -170,6 +170,12 @@ module WPScan
170
170
  ['--users-detection MODE',
171
171
  'Use the supplied mode to enumerate Users, instead of the global (--detection-mode) mode.'],
172
172
  choices: %w[mixed passive aggressive], normalize: :to_sym, advanced: true
173
+ ),
174
+ OptRegexp.new(
175
+ [
176
+ '--exclude-usernames REGEXP_OR_STRING',
177
+ 'Exclude usernames matching the Regexp/string (case insensitive). Regexp delimiters are not required.'
178
+ ], options: Regexp::IGNORECASE
173
179
  )
174
180
  ]
175
181
  end
data/app/finders/users.rb CHANGED
@@ -11,6 +11,16 @@ require_relative 'users/yoast_seo_author_sitemap'
11
11
 
12
12
  module WPScan
13
13
  module Finders
14
+ # Specific Finders container to filter the usernames found
15
+ # and remove the ones matching ParsedCli.exclude_username if supplied
16
+ class UsersFinders < SameTypeFinders
17
+ def filter_findings
18
+ findings.delete_if { |user| ParsedCli.exclude_usernames.match?(user.username) } if ParsedCli.exclude_usernames
19
+
20
+ findings
21
+ end
22
+ end
23
+
14
24
  module Users
15
25
  # Users Finder
16
26
  class Base
@@ -28,6 +38,10 @@ module WPScan
28
38
  Users::AuthorIdBruteForcing.new(target) <<
29
39
  Users::LoginErrorMessages.new(target)
30
40
  end
41
+
42
+ def finders
43
+ @finders ||= Finders::UsersFinders.new
44
+ end
31
45
  end
32
46
  end
33
47
  end
@@ -10,7 +10,7 @@ module WPScan
10
10
  module Finders
11
11
  # Specific Finders container to filter the version detected
12
12
  # and remove the one with low confidence to avoid false
13
- # positive when there is not enought information to accurately
13
+ # positive when there is not enough information to accurately
14
14
  # determine it.
15
15
  class WpVersionFinders < UniqueFinders
16
16
  def filter_findings
@@ -2,5 +2,5 @@
2
2
 
3
3
  # Version
4
4
  module WPScan
5
- VERSION = '3.8.16'
5
+ VERSION = '3.8.17'
6
6
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: wpscan
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.8.16
4
+ version: 3.8.17
5
5
  platform: ruby
6
6
  authors:
7
7
  - WPScanTeam
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 0.13.2
19
+ version: 0.13.3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 0.13.2
26
+ version: 0.13.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement