Medium severity6.1NVD Advisory· Published May 7, 2026· Updated May 8, 2026
CVE-2025-67202
CVE-2025-67202
Description
Sidekiq-cron thru 2.3.1, an open-source scheduling add-on for Sidekiq, is vulnerable to a cross-site scripting (xss) vulnerability via crafted URL being rended from cron.erb.
Affected packages
Versions sourced from the GitHub Security Advisory.
| Package | Affected versions | Patched versions |
|---|---|---|
sidekiq-cronRubyGems | < 2.4.0 | 2.4.0 |
Affected products
1Patches
17b4ae4822f93Fix reflected XSS on Sidekiq-UI. (#568)
2 files changed · +12 −10
lib/sidekiq/cron/views/cron.erb+6 −5 modified@@ -2,23 +2,24 @@ <header> <h2> <%= t('CronJobs') %> - <small>(<%= @current_namespace %>)</small> + <small>(<%= CGI.escapeHTML(@current_namespace.to_s) %>)</small> </h2> <% if @cron_jobs.size > 0 %> + <% escaped_current_namespace = CGI.escape(@current_namespace) %> <div class="filter buttons-row"> - <form action="<%= root_path %>cron/namespaces/<%= @current_namespace %>/all/delete" method="post"> + <form action="<%= root_path %>cron/namespaces/<%= escaped_current_namespace %>/all/delete" method="post"> <%= csrf_tag %> <input class="btn btn-danger" type="submit" name="delete" value="<%= t('DeleteAll') %>" data-confirm="<%= t('AreYouSureDeleteCronJobs') %>" /> </form> - <form action="<%= root_path %>cron/namespaces/<%= @current_namespace %>/all/disable" method="post"> + <form action="<%= root_path %>cron/namespaces/<%= escaped_current_namespace %>/all/disable" method="post"> <%= csrf_tag %> <input class="btn btn-primary" type="submit" name="enqueue" value="<%= t('DisableAll') %>" /> </form> - <form action="<%= root_path %>cron/namespaces/<%= @current_namespace %>/all/enable" method="post"> + <form action="<%= root_path %>cron/namespaces/<%= escaped_current_namespace %>/all/enable" method="post"> <%= csrf_tag %> <input class="btn btn-primary" type="submit" name="enqueue" value="<%= t('EnableAll') %>" /> </form> - <form action="<%= root_path %>cron/namespaces/<%= @current_namespace %>/all/enqueue" method="post"> + <form action="<%= root_path %>cron/namespaces/<%= escaped_current_namespace %>/all/enqueue" method="post"> <%= csrf_tag %> <input class="btn btn-primary" type="submit" name="enqueue" value="<%= t('EnqueueAll') %>" data-confirm="<%= t('AreYouSureEnqueueCronJobs') %>" /> </form>
lib/sidekiq/cron/views/legacy/cron.erb+6 −5 modified@@ -2,24 +2,25 @@ <div class='col-sm-5 pull-left'> <h3> <%= t('CronJobs') %> - <small><%= @current_namespace %></small> + <small><%= CGI.escapeHTML(@current_namespace.to_s) %></small> </h3> </div> <div class='col-sm-7 pull-right h2'> <% if @cron_jobs.size > 0 %> - <form action="<%= root_path %>cron/namespaces/<%= @current_namespace %>/all/delete" method="post" class="pull-right"> + <% escaped_current_namespace = CGI.escape(@current_namespace) %> + <form action="<%= root_path %>cron/namespaces/<%= escaped_current_namespace %>/all/delete" method="post" class="pull-right"> <%= csrf_tag %> <input class="btn btn-danger" type="submit" name="delete" value="<%= t('DeleteAll') %>" data-confirm="<%= t('AreYouSureDeleteCronJobs') %>" /> </form> - <form action="<%= root_path %>cron/namespaces/<%= @current_namespace %>/all/disable" method="post" class="pull-right"> + <form action="<%= root_path %>cron/namespaces/<%= escaped_current_namespace %>/all/disable" method="post" class="pull-right"> <%= csrf_tag %> <input class="btn btn-warn" type="submit" name="enqueue" value="<%= t('DisableAll') %>" /> </form> - <form action="<%= root_path %>cron/namespaces/<%= @current_namespace %>/all/enable" method="post" class="pull-right"> + <form action="<%= root_path %>cron/namespaces/<%= escaped_current_namespace %>/all/enable" method="post" class="pull-right"> <%= csrf_tag %> <input class="btn btn-warn" type="submit" name="enqueue" value="<%= t('EnableAll') %>" /> </form> - <form action="<%= root_path %>cron/namespaces/<%= @current_namespace %>/all/enqueue" method="post" class="pull-right"> + <form action="<%= root_path %>cron/namespaces/<%= escaped_current_namespace %>/all/enqueue" method="post" class="pull-right"> <%= csrf_tag %> <input class="btn btn-warn" type="submit" name="enqueue" value="<%= t('EnqueueAll') %>" data-confirm="<%= t('AreYouSureEnqueueCronJobs') %>" /> </form>
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
6- github.com/advisories/GHSA-xv9c-mjw8-79gfghsaADVISORY
- nvd.nist.gov/vuln/detail/CVE-2025-67202ghsaADVISORY
- github.com/sidekiq-cron/sidekiq-cron/commit/7b4ae4822f93ef4646f5cb55500ca4e25662db7cghsaWEB
- github.com/sidekiq-cron/sidekiq-cron/issues/569nvdWEB
- github.com/sidekiq-cron/sidekiq-cron/pull/568ghsaWEB
- github.com/sidekiq-cron/sidekiq-cron/releases/tag/v2.4.0nvdWEB
News mentions
0No linked articles in our index yet.