diff --git a/Library/Homebrew/rubocops/shared/desc_helper.rb b/Library/Homebrew/rubocops/shared/desc_helper.rb
index e393b7835bc1ebd06f0f5221111c524197439522..8e43f1f39f442742f29f208a574ea001d58eeda3 100644
--- a/Library/Homebrew/rubocops/shared/desc_helper.rb
+++ b/Library/Homebrew/rubocops/shared/desc_helper.rb
@@ -65,7 +65,7 @@ module RuboCop
         problem "Description shouldn't start with the #{type} name." if regex_match_group(desc, /^#{name_regex}\b/i)
 
         if type == :cask &&
-           (match = regex_match_group(desc, /\b(macOS|Mac( ?OS( ?X)?)?|OS ?X)\b/i)) &&
+           (match = regex_match_group(desc, /\b(macOS|Mac( ?OS( ?X)?)?|OS ?X)(?! virtual machines?)\b/i)) &&
            match[1] != "MAC"
           problem "Description shouldn't contain the platform."
         end
diff --git a/Library/Homebrew/test/rubocops/cask/desc_spec.rb b/Library/Homebrew/test/rubocops/cask/desc_spec.rb
index 8b06c40a12a71b99521ff6168b0f901db4f129d5..f27722b459f4a8d36dbda176596d69658f2d1ab4 100644
--- a/Library/Homebrew/test/rubocops/cask/desc_spec.rb
+++ b/Library/Homebrew/test/rubocops/cask/desc_spec.rb
@@ -93,6 +93,19 @@ describe RuboCop::Cop::Cask::Desc do
       end
     RUBY
 
+    expect_no_offenses <<~RUBY
+      cask 'foo' do
+        desc 'Application for managing macOS virtual machines'
+      end
+    RUBY
+
+    expect_offense <<~RUBY
+      cask 'foo' do
+        desc 'Application for managing macOS virtual machines on macOS'
+                                                                 ^^^^^ Description shouldn\'t contain the platform.
+      end
+    RUBY
+
     expect_no_offenses <<~RUBY
       cask 'foo' do
         desc 'MAC address changer'