From f2ed5b6219af7b30001a3e2c43fc5dca79b33fe5 Mon Sep 17 00:00:00 2001 From: Raymond Ag Date: Fri, 2 Aug 2024 23:15:18 +1000 Subject: [PATCH] Upgrade rexml to 3.3.4 to address CVE-2024-39908, 41123, 41946 (#5181) * Upgrade rexml to 3.3.2 This resolves CVE-2024-39908 : DoS in REXML * Apply suggestion * Fix tests * Upgrade rexml to 3.3.4 --- activemerchant.gemspec | 2 +- test/unit/gateways/mercury_test.rb | 6 +++--- test/unit/gateways/paypal_test.rb | 2 +- test/unit/gateways/trans_first_test.rb | 10 ---------- 4 files changed, 5 insertions(+), 15 deletions(-) diff --git a/activemerchant.gemspec b/activemerchant.gemspec index 78484f81232..115de333e9e 100644 --- a/activemerchant.gemspec +++ b/activemerchant.gemspec @@ -26,7 +26,7 @@ Gem::Specification.new do |s| s.add_dependency('builder', '>= 2.1.2', '< 4.0.0') s.add_dependency('i18n', '>= 0.6.9') s.add_dependency('nokogiri', '~> 1.4') - s.add_dependency('rexml', '~> 3.2.5') + s.add_dependency('rexml', '~> 3.3', '>= 3.3.4') s.add_development_dependency('mocha', '~> 1') s.add_development_dependency('pry') diff --git a/test/unit/gateways/mercury_test.rb b/test/unit/gateways/mercury_test.rb index d9b2e8d9cd0..5defed1713e 100644 --- a/test/unit/gateways/mercury_test.rb +++ b/test/unit/gateways/mercury_test.rb @@ -126,7 +126,7 @@ def test_transcript_scrubbing def successful_purchase_response <<~RESPONSE - + Processor @@ -163,7 +163,7 @@ def successful_purchase_response def failed_purchase_response <<~RESPONSE - + Server @@ -179,7 +179,7 @@ def failed_purchase_response def successful_refund_response <<~RESPONSE - + Processor diff --git a/test/unit/gateways/paypal_test.rb b/test/unit/gateways/paypal_test.rb index db9f5c760a0..7f8bd050e1f 100644 --- a/test/unit/gateways/paypal_test.rb +++ b/test/unit/gateways/paypal_test.rb @@ -1312,7 +1312,7 @@ def failed_create_profile_paypal_response - " + RESPONSE end diff --git a/test/unit/gateways/trans_first_test.rb b/test/unit/gateways/trans_first_test.rb index d8a2ca93ed2..94b5fdeff38 100644 --- a/test/unit/gateways/trans_first_test.rb +++ b/test/unit/gateways/trans_first_test.rb @@ -15,16 +15,6 @@ def setup @amount = 100 end - def test_missing_field_response - @gateway.stubs(:ssl_post).returns(missing_field_response) - - response = @gateway.purchase(@amount, @credit_card, @options) - - assert_failure response - assert response.test? - assert_equal 'Missing parameter: UserId.', response.message - end - def test_successful_purchase @gateway.stubs(:ssl_post).returns(successful_purchase_response)