Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix CVE-2017-12097 #102

Closed
wants to merge 1 commit into from
Closed

Conversation

jankeesvw
Copy link
Contributor

From https://www.talosintelligence.com/vulnerability_reports/TALOS-2017-0449

An exploitable XSS vulnerability exists in the filter functionality of the
delayed_job_web rails gem version 1.4. A specially crafted URL can cause an
XSS flaw resulting in an attacker being able to execute arbitrary javascript
on the victim’s browser. An attacker can phish an authenticated user to
trigger this vulnerability.

The delayed_job_web gem allows users to filter output based on the query
string of the GET request. This looks similar to.

localhost:3000/delayed_job/overview?queues=">+<script>alert(1)<%2Fscript>

This URL can them be used to phish an authenticated user and execute arbitrary
javascript on their behalf. This vulnerability is caught by the built in XSS
protections of Safari and Chrome., however it is exploitable using Firefox.

Fixes #101

From https://www.talosintelligence.com/vulnerability_reports/TALOS-2017-0449

An exploitable XSS vulnerability exists in the filter functionality of the
delayed_job_web rails gem version 1.4. A specially crafted URL can cause an
XSS flaw resulting in an attacker being able to execute arbitrary javascript
on the victim’s browser. An attacker can phish an authenticated user to
trigger this vulnerability.

The delayed_job_web gem allows users to filter output based on the query
string of the GET request. This looks similar to.

localhost:3000/delayed_job/overview?queues=">+<script>alert(1)<%2Fscript>

This URL can them be used to phish an authenticated user and execute arbitrary
javascript on their behalf. This vulnerability is caught by the built in XSS
protections of Safari and Chrome., however it is exploitable using Firefox.
@andyatkinson
Copy link
Collaborator

andyatkinson commented Feb 21, 2018

@jankeesvw Thank you for submitting this. Were you able to run bundle or bundle update locally with success? I pulled your branch and am running into version conflicts.

@jankeesvw
Copy link
Contributor Author

I ran bundle update in my project with a reference to my fork, that worked just fine.

What output did you get? I’ll check it again tomorrow.

@jankeesvw
Copy link
Contributor Author

Ah yes, I see the errors, do you have any idea how to resolve it?

Bundler could not find compatible versions for gem "activerecord":
  In Gemfile:
    delayed_job_web was resolved to 1.4, which depends on
      activerecord (> 3.0.0)

    rails (~> 4.0) was resolved to 4.0.0, which depends on
      activerecord (= 4.0.0)

Bundler could not find compatible versions for gem "activesupport":
  In Gemfile:
    delayed_job_web was resolved to 1.4, which depends on
      delayed_job (> 2.0.3) was resolved to 4.1.4, which depends on
        activesupport (< 5.2, >= 3.0)

    rails (~> 4.0) was resolved to 4.0.0, which depends on
      activesupport (= 4.0.0)

Bundler could not find compatible versions for gem "rack":
  In Gemfile:
    rails (~> 4.0) was resolved to 4.0.0, which depends on
      actionpack (= 4.0.0) was resolved to 4.0.0, which depends on
        rack (~> 1.5.2)

    delayed_job_web was resolved to 1.4, which depends on
      sinatra (>= 2.0.1) was resolved to 2.0.1, which depends on
        rack (~> 2.0)

Bundler could not find compatible versions for gem "rails":
  In Gemfile:
    rails (~> 4.0)

Could not find gem 'rails (~> 4.0)' in any of the sources.

@jankeesvw
Copy link
Contributor Author

I think it works on my project because it relies on Rails 5.

@andyatkinson
Copy link
Collaborator

@jankeesvw I think it makes sense that new versions of this gem would depend on Rails 5. If you can configure the dependencies so that bundle works and you can confirm that version of this gem works in your Rails 5 app (bundling your local gem in your app), then that would be a good verification. Sound good?

@jankeesvw
Copy link
Contributor Author

I'm sorry, I was trying to fix CVE-2018-7212, which is different than the subject of this issue.

@jankeesvw
Copy link
Contributor Author

Replaced by #103.

@jankeesvw jankeesvw closed this Feb 22, 2018
@jankeesvw jankeesvw deleted the fix-CVE-2017-12097 branch February 22, 2018 19:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants