Skip to content

Commit 6522c0d

Browse files
committed
Land rapid7#7900, missed userpass_file on CredentialCollection.empty?
2 parents b4a9bfc + 1bb8c9b commit 6522c0d

File tree

2 files changed

+11
-2
lines changed

2 files changed

+11
-2
lines changed

lib/metasploit/framework/credential_collection.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,8 +207,8 @@ def each
207207

208208
# Returns true when #each will have no results to iterate
209209
def empty?
210-
hasUser = username.present? || user_file.present? || !additional_publics.empty?
211-
hasPass = password.present? || pass_file.present? || !additional_privates.empty? || blank_passwords
210+
hasUser = username.present? || user_file.present? || userpass_file.present? || !additional_publics.empty?
211+
hasPass = password.present? || pass_file.present? || userpass_file.present? ||!additional_privates.empty? || blank_passwords
212212
prepended_creds.empty? && !hasUser || (hasUser && !hasPass)
213213
end
214214

spec/lib/metasploit/framework/credential_collection_spec.rb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,15 @@
141141
end
142142

143143
describe "#empty?" do
144+
context "when only :userpass_file is set" do
145+
let(:username) { nil }
146+
let(:password) { nil }
147+
let(:userpass_file) { "test_file" }
148+
specify do
149+
expect(collection.empty?).to eq false
150+
end
151+
end
152+
144153
context "when :username is set" do
145154
context "and :password is set" do
146155
specify do

0 commit comments

Comments
 (0)